2016-04-14 103 views
1

我碰到一個錯誤運行使用OpenGL 4.5 DSA功能時,NVIDIA的GTX760M 這三塊代碼: 1.舊的方式錯誤NV的實施glClearNamedFramebufferfi

glClear(GL_DEPTH_BUFFER_BIT); 

2.現代時尚

glBindFramebuffer(GL_DRAW_BUFFER, 0); 
glClearBufferfi(GL_DEPTH_STENCIL, 0, 1.f, 0); 

3. DSA時尚

glClearNamedFramebufferfi(0, GL_DEPTH_STENCIL, 1.f, 0); 

但只有第一個和第二個代碼工作。那麼這是一個錯誤還是我的錯誤?

+0

以何種方式它不工作? –

+0

啓用深度測試後,我無法在默認幀緩衝區上繪製一個簡單的三角形。 – hamwj1991

回答

0

它實際上GLEW的一個bug,只是改變glClearNamedFramebufferfi的原型

typedef void (GLAPIENTRY * PFNGLCLEARNAMEDFRAMEBUFFERFIPROC) (GLuint framebuffer, GLenum buffer, GLuint drawbuffer, GLfloat depth, GLint stencil);