1
3D 자동차 모델을 이동하고 싶습니다. 왼쪽 또는 오른쪽 화살표 키를 누르면 각도가 바뀌고, 위쪽 화살표를 누르면 자동차가 움직입니다. XNA에서 3D 개체를 이동하는 방법?
이
업데이트 방법에 코드입니다 :float dirX = (float)Math.Sin(angle);
float dirY = (float)Math.Cos(angle);
if (Keyboard.GetState().IsKeyDown(Keys.Up))
{
position += new Vector3(-dirX, dirY, 0);
if (Keyboard.GetState().IsKeyDown(Keys.Left))
{
angle += 0.015f;
}
if (Keyboard.GetState().IsKeyDown(Keys.Right))
{
angle -= 0.015f;
}
}
이것은 계산 부분이지만, 분명히 나는 또한 화면에 차를 이동해야합니다. 나는 차가 앞으로 움직 이길 원한다. 그래서 X 축에서 90도 회전해야한다고 생각했다. 그리고 왼쪽이나 오른쪽 키를 누를 때 차를 돌리고 싶다.
는이 코드를 썼다 :world = Matrix.CreateTranslation(position) * Matrix.CreateRotationY(angle) * Matrix.CreateFromAxisAngle(Vector3.UnitX, MathHelper.ToRadians(-90));
작동하지 않는, 아무도 말해 줄 수 내가 어떻게 이동할 수있다이 코드?
"이 코드가 작동하지 않습니다"보다 구체적 일 수 있습니까? 정확히 무엇이 잘못 될까요? – ChrisF
당신은 실제로 차의 매트릭스에 무엇인가하고 있습니까? – kevintodisco
ChrisF : 내가 위로 밟고 떠났을 때, 차는 앞으로 나아 간다. 그러나 그것은 그 자체 주위를 회전한다. ktodisco는 : 자동차 매트릭스 세계 –