OpenGL ES 2.0 类型转换

OpenGL ES 2.0 Type casting

从 float 到 GLfloat 的类型转换安全吗?如果它足够正确地表示相同的几何形状,我不在乎丢失或获得多少精度。我不想 port/rewrite 所有通用库来使其与 GL 兼容。如果没有问题,我将只在关键功能中使用 GL。例如,在编写 draw() 函数时。也就是说,在将 float 参数传递给立方体函数后,转换将自动进行。我可以这样做吗?铸造是否足够安全?

这是绝对安全的,不会丢失精度,因为 floatGLfloat 完全相同。

GLfloat 的存在仅仅是为了在浮点数定义不同的平台之间兼容。

不过,一般来说,它的声明是:

typedef float GLfloat;