在Matrix.CreateLookAt中确定向量和变换向量

时间:2012-11-22 14:15:12

标签: c# xna xna-4.0

我有

Vector3 PlayerPosition = new Vector3(0,0,0);
Matrix JetztMatrix = Matrix.CreateRotationX(pitch) * Matrix.CreateRotationY(yaw);
ef.View = Matrix.CreateLookAt(PlayerPosition, Vector3.Transform(new Vector3(?1,?2,?3), JetztMatrix) + PlayerPosition, new Vector3(?4,?5,?6));

不知怎的,我总是达到某个阈值,所以屏幕滚动而不是旋转。

因此,例如,我将-180°至+ 180°视为偏航。这导致一转,但不是直线“线”。正如我所说,然后移动然后屏幕滚动并再次移动。

如何确定?1到?6

1 个答案:

答案 0 :(得分:0)

ef.View = Matrix.CreateLookAt(PlayerPosition, playerPosition + JetzMatrix.Forward, Vector3.Up);

Vector3.Up会阻止相机滚动。根据您的问题,很难准确理解您想要达到的目标。如果这不能解决您的问题或创建其他不良动作,请更详细地描述您所需的功能。