使用glUniform指针变体后更改变量是否安全?

bof*_*jas 5 opengl

我想知道glUniformXXv是否会阻塞,直到指针指向的数据被复制到GPU.换句话说,如果GPU忙,此代码是否会导致问题?

int i=5;
glUniform1iv(location,1,&i);
i = 6;
Run Code Online (Sandbox Code Playgroud)

如果GPU忙,这会导致glUniform1fv发送6吗?

Nic*_*las 4

除了以“Pointer”一词结尾的 OpenGL 函数之外,每个采用指针的 OpenGL 函数都会在该指针返回之前读取/写入该指针。因此事后对内存的更改将不会被看到。