OpenGL ES 2.0 类型转换
OpenGL ES 2.0 Type casting
从 float 到 GLfloat 的类型转换安全吗?如果它足够正确地表示相同的几何形状,我不在乎丢失或获得多少精度。我不想 port/rewrite 所有通用库来使其与 GL 兼容。如果没有问题,我将只在关键功能中使用 GL。例如,在编写 draw() 函数时。也就是说,在将 float 参数传递给立方体函数后,转换将自动进行。我可以这样做吗?铸造是否足够安全?
这是绝对安全的,不会丢失精度,因为 float
和 GLfloat
完全相同。
GLfloat
的存在仅仅是为了在浮点数定义不同的平台之间兼容。
不过,一般来说,它的声明是:
typedef float GLfloat;
从 float 到 GLfloat 的类型转换安全吗?如果它足够正确地表示相同的几何形状,我不在乎丢失或获得多少精度。我不想 port/rewrite 所有通用库来使其与 GL 兼容。如果没有问题,我将只在关键功能中使用 GL。例如,在编写 draw() 函数时。也就是说,在将 float 参数传递给立方体函数后,转换将自动进行。我可以这样做吗?铸造是否足够安全?
这是绝对安全的,不会丢失精度,因为 float
和 GLfloat
完全相同。
GLfloat
的存在仅仅是为了在浮点数定义不同的平台之间兼容。
不过,一般来说,它的声明是:
typedef float GLfloat;