我正在尝试使用RenderDoc调试一些OpenGL 3.3+图形代码,我想为渲染通道定义一些可以被RenderDoc识别的调试标记。
我用GLEW,我试着用……
EXT_debug_marker 不是您要使用的扩展程序。它很老了 从未真正得到广泛支持 。它的功能被吸收了 KHR_debug ,是的 更广泛的支持 从4.3(又名:5年前)开始,它本身就是核心OpenGL。
现在,调试标记功能是 不同 两者之间。 KHR_debug使标记成为另一种用户定义的调试通知。所以,你可以在哪里打电话 glInsertEventMarkerEXT ,你改为打电话给 更通用 glDebugMessageInsert , 使用 GL_DEBUG_TYPE_MARKER 作为消息的类型 。你会在哪里使用 glPush/PopGroupMarkerEXT ,你 改为使用 glPush/PopDebugGroup ,用于任意范围。此类分组不使用标记类型;他们用的是 GL_DEBUG_TYPE_PUSH/POP_GROUP 类型,以便您可以区分分组和标记。
glInsertEventMarkerEXT
glDebugMessageInsert
GL_DEBUG_TYPE_MARKER
glPush/PopGroupMarkerEXT
glPush/PopDebugGroup
GL_DEBUG_TYPE_PUSH/POP_GROUP