好吧,所以我有两个角度.一个是操纵杆的角度,另一个是相机与玩家的角度.相机的角度.现在我想要它,所以当我按下操纵杆时,它会让玩家远离相机.我该怎么做?在Java或Ardor3d中有一种简单的方法吗?
编辑:这是我如何得到我的角度的代码.
float camDegree = (float) Math.toDegrees(Math.atan2(
_canvas.getCanvasRenderer().getCamera().getLocation().getXf() - colladaNode.getTranslation().getXf(),
_canvas.getCanvasRenderer().getCamera().getLocation().getYf()) - colladaNode.getTranslation().getYf());
player.angle = (float) Math.toDegrees(Math.atan2(padX, padY));
Quaternion camQ = new Quaternion().fromAngleAxis(camDegree, Vector3.UNIT_Y);
Run Code Online (Sandbox Code Playgroud) 我如何创建一个旋转矩阵,将X旋转一个,Y乘以b,Z又旋转c?
我需要公式,除非你使用ardor3d api的函数/方法.
Matrix设置如下
xx, xy, xz,
yx, yy, yz,
zx, zy, zz
Run Code Online (Sandbox Code Playgroud)
四元数也很好.