Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/cplusplus/136.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何根据OpenGL移动/旋转对象&x27;s局部位置/旋转 进入C++和OpenGL,来自Python背景,在那里你有Apple YouType和Apple旋转(当然,Word Stand,WorkOrror),我觉得我好像错过了OpenGL的一些东西。基本上,我有一个播放器,一个立方体_Python_C++_Opengl - Fatal编程技术网

如何根据OpenGL移动/旋转对象&x27;s局部位置/旋转 进入C++和OpenGL,来自Python背景,在那里你有Apple YouType和Apple旋转(当然,Word Stand,WorkOrror),我觉得我好像错过了OpenGL的一些东西。基本上,我有一个播放器,一个立方体

如何根据OpenGL移动/旋转对象&x27;s局部位置/旋转 进入C++和OpenGL,来自Python背景,在那里你有Apple YouType和Apple旋转(当然,Word Stand,WorkOrror),我觉得我好像错过了OpenGL的一些东西。基本上,我有一个播放器,一个立方体,python,c++,opengl,Python,C++,Opengl,我希望立方体使用上/下箭头键前后移动,始终保持在其面对的位置。然后,使用左/右箭头,我希望玩家围绕自己的原点旋转。因此,我将以一个古老的居民邪恶风格的控制方案(坦克控制)结束 现在,glTranspose和glRotate起作用,但取决于我先做的中的哪一个,它似乎朝着正确的方向移动,但会绕着世界原点旋转 或 它绕着自己的轴旋转,但运动始终按照世界轴 我不想移动/旋转世界或世界+摄像机,因为我想做一个第三人称固定摄像机游戏。基本上,我希望做与Python中的applyMovement/applyR

我希望立方体使用上/下箭头键前后移动,始终保持在其面对的位置。然后,使用左/右箭头,我希望玩家围绕自己的原点旋转。因此,我将以一个古老的居民邪恶风格的控制方案(坦克控制)结束

现在,glTransposeglRotate起作用,但取决于我先做的中的哪一个,它似乎朝着正确的方向移动,但会绕着世界原点旋转

它绕着自己的轴旋转,但运动始终按照世界轴


我不想移动/旋转世界或世界+摄像机,因为我想做一个第三人称固定摄像机游戏。基本上,我希望做与Python中的applyMovement/applyRotation完全相同的事情。但我对如何实现这一点持开放态度。

由于使用即时模式进行渲染,首先需要平移对象中心的负向量,应用旋转,然后将其平移回其位置。实际上:

glTranslate( -center.x, -center.y, -center.z );
glRotate( ... );
glTranslate( center.x, center.y, center.z );
现在,这仅适用于渲染部分。对于移动,您需要跟踪立方体旋转的角度,并使用正弦和余弦向前或向后移动立方体