不同显卡的GPU内存分配不一样

时间:2013-10-09 12:14:30

标签: opengl rendering gpu

我正在使用AMD Radeon HD 6000 series它支持Open GL 4.1。使用下面的代码我在GPU上分配内存以加快处理速度:

glGenBuffersARB(1, &Id[0]);
enm =  glGetError();

glBindBufferARB(GL_PIXEL_UNPACK_BUFFER_ARB, Id[0]);
enm =  glGetError();

glBufferDataARB(GL_PIXEL_UNPACK_BUFFER_ARB, 1920*1080*3, NULL, GL_STREAM_DRAW_ARB);
enm =  glGetError();

guibuffer[loop] = (UINT8*)glMapBufferARB(GL_PIXEL_UNPACK_BUFFER_ARB, GL_WRITE_ONLY_ARB);
enm =  glGetError();

稍后在guibuffer缓冲区上执行YUV到RGB转换并使用opengl渲染它。

渲染非常适合上述显卡。但是,当我在NVidia GEFORCE 310 GT218上尝试相同的代码时,我会在渲染窗口中看到白色屏幕。支持此显卡的开放GL版本为openGL 3.2

任何人都可以提出导致问题的原因吗?是不是两个显卡支持的opengl版本不同,或者内存分配方法对于不同版本是不同的。

0 个答案:

没有答案