iphone - 如何更改 OpenGL 中的旋转中心

标签 iphone opengl-es glrotate

我有一个 3D 模型(OpenGL ES 1.1 iPhone SDK v3.0),它有点复杂(即数千个顶点和面),我想围绕模型中心或附近的 Y 轴旋转该模型。问题是 glRotate 围绕位于/靠近其底部边缘之一的中心的点旋转我的模型,而不是靠近模型的中心。想象一下一辆汽车绕着灯柱行驶得很近,这基本上就是我所得到的。我希望汽车被刺穿在灯柱上并绕着灯柱旋转。 (以下部分来源)

   // BLUE BLOCK----------------------------------------------
    glPushMatrix();
    {
        glTranslatef(blueLocation[0], blueLocation[1], blueLocation[2]);
        glRotatef(blueRotAngle, 0.0, 0.0, 1.0);
        ...

问题:
有没有一种简单的方法可以改变 OpenGL 中的旋转中心?

最佳答案

当然。将对象向下平移。然后旋转它。

关于iphone - 如何更改 OpenGL 中的旋转中心,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1130520/

相关文章:

c++ - glRotatef 不旋转任何东西

ios - 当我更改 FetchRequest 而不更改 NSSortDescriptor 时,NSFetchedResultController 不会更新 UITableView

iphone - 按子键对字典排序

Android动态壁纸示例强制关闭,无法实例化服务

具有线性渐变背景的Android GLSurfaceView OpenGL ES?

c++ - glRotate 和我的矩阵::旋转

iphone - iOS:如何从 JSON 查询构建表?

Iphone 自定义 ScrollView 指示器

objective-c - 在 OpenGLES 中使用三角形扇形绘制多边形

c++ - 纯 C 语言中的 glRotatef