Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
我想在不接触表面的情况下旋转一个对象(比如 3d 立方体),比如说我有一个特定的 x、y、z 轴 UI,当我从 UI 更改这个轴值时,它又应该转动 3D 对象。
绘制对象时,对象的旋转由一些变量(旋转矩阵或四元数等)设置。
您的 UI 将通过您从中检索值的小部件或通过发送事件来提供一些值。使用这些值,您可以调整绘图控制变量并发出场景的完整重绘。
OpenGL 不是场景图。它不维护场景,它只是将点、线或三角形绘制到基于像素的帧缓冲区。一旦一个图元(点、线、三角形)被绘制出来,OpenGL 就完全不记得它了。你想要一些改变=> >你重绘整个场景。
您正在寻找的概念是“轨迹球”。这里有一些信息:
轨迹球