gpt4 book ai didi

c++ - openGL - 使用 gluLookAt 在对象上方和下方旋转

转载 作者:太空宇宙 更新时间:2023-11-04 13:24:27 26 4
gpt4 key购买 nike

我在 Open GL 中有一个立方体。我通过乘以旋转矩阵来旋转立方体。我还使用 gluLookAt 让相机在 x 轴上围绕立方体旋转,如下所示。

    case 'j':
eyeX = 10*cos(angle);
eyeZ = 10*sin(angle);
centerX = -cos(angle);
centerZ = -sin(angle);
angle -= 0.1;
break;
case'l':
eyeX = 10*cos(angle);
eyeZ = 10*sin(angle);
centerX = -cos(angle);
centerZ = -sin(angle);
angle += 0.1;
break;

在哪里

gluLookAt( eyeX, eyeY, eyeZ, centerX, centerY, centerZ, 0.0, 1.0, 0.0);

我正在努力解决的问题是让相机在围绕它的立方体上方和下方在 y 轴上旋转。

最佳答案

让凸轮绕着物体旋转

  • 减去对象的世界位置。来自 cam world pos.,

    cam_pos_os = cam_pos_ws - object_pos_ws

  • 旋转指向 cam_pos_os 的 vector ,就像您在代码中的世界空间中所做的那样

  • 添加对象的世界位置。再次回到凸轮位置。在对象空间中,

    cam_pos_ws = cam_pos_os + object_pos_ws

关于c++ - openGL - 使用 gluLookAt 在对象上方和下方旋转,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33815839/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com