我需要一种方法(在 java 中)来计算我的相机将在 x 和 z 轴上根据我的相机面向的方向(偏航)向前移动的方向,以及 y(垂直轴)的俯仰。我正在制作自己的游戏引擎和自己的相机。
在所有值默认为零的情况下,正确移动相机会沿正 z 轴引导所有移动。但是,当我将相机向左或向右平移(从而改变偏航角)时,相机仍然只沿 z 轴移动……那么如何计算 x、y 和 z 轴的方向变化呢?
yaw 的取值范围是 0(南)、45(西南)、90(西)、135(西北)、180(北)、225(东北)、270(东)、315(东南),返回360(南,同0)。
我正在寻找指南针方向(其中“+”或“-”表示沿该轴的值变化):
South = x, y, z+
SouthWest = x+, y, z+
West = x+, y, z
NorthWest = x+, y, z-
North = x, y, z-
NorthEast = x-, y, z-
East = x-, y, z
SouthEast = x-, y, z+
音高上的取值范围是 0.0(中)、100.0(一直向上)和 -100.0(一直向下)。
如果我需要发布一些代码,我可以,但它可能会变得复杂。我希望我有某种意义,以便有人可以帮助我!