我正在 OpenGL ES 1.1 中绘制具有 4 个顶点的纹理。
它可以围绕 z 旋转:
glRotatef(20, 0, 0, 1);
但是当我尝试像 CALayer 一样围绕 x 或 y 旋转它时,纹理就会完全消失。绕 x 旋转的示例:
glRotatef(20, 1, 0, 0);
我还尝试了非常小的值并在动画循环中增加它们。
// called in render loop
static double angle = 0;
angle += 0.005;
glRotatef(angle, 1, 0, 0);
在某些角度,我只看到纹理的边缘。就好像 OpenGL ES 会剪掉任何深入的东西。
问题可能与投影模式有关吗?您将如何像使用 CALayer 变换属性一样实现纹理的透视变换?