dan*_*jar 1 c++ opengl indexing null coding-style
我将OpenGL标识符存储在类型的变量中GLuint.但我不知道我应该初始化这些变量的价值.我想将它们初始化为零,但不幸的是,这是OpenGL的有效标识符.
必须在存储OpenGL对象之前初始化变量,因为这是稍后异步完成的.那么我能以某种方式强制OpenGL开始用一个而不是零开始索引吗?或者我应该使用GLint并初始化-1?
我想以干净的方式解决这个问题.当然,我可以存储一对变量和一个布尔标志或类似的东西.但那将是hacky.你如何处理这个问题?
我想将它们初始化为零,但不幸的是,这是OpenGL的有效标识符.
不,不是.对于大多数OpenGL对象类型,0表示"不是对象".唯一具有有效0对象的是FBO(其中0表示默认帧缓冲区),变换反馈对象和纹理(您应该将它们视为不是对象).
所以只需使用零.调用any glDelete*为零是合法的,即使0是该类型的有效对象,也不会发生任何事情.
| 归档时间: |
|
| 查看次数: |
81 次 |
| 最近记录: |