При использовании Matrix.CreateTranslation(x,y,z)
Я получаю странные результаты. Я тестировал с использованием фиксированных значений, одной переменные, в то время, и определил следующий:Перевод модели XNA - bizzarre
При изменении координат X, модель перемещается от верхнего левого угла до нижнего правого угла.
При изменении координат Y модель перемещается вверх и вниз по мере необходимости.
Я не планирую изменять координаты Z, но из-за природы моей программы я не могу точно определить, что она делает.
У меня есть модель. Вращение работает отлично. Я выполняю свои переводы в правильном порядке (по крайней мере, я думаю): scale * rotation * translation
.
Я думаю, что проблема заключается в настройках моей камеры, но я понятия не имею, в чем проблема. Я пытаюсь создать камеру RTS сверху вниз.
Вот мои настройки камеры:
campos = new Vector3(5000.0F, 5000.0F, 5000.0F)
effect.View = Matrix.CreateLookAt(campos, Vector3.Down, Vector3.Up)
я могу предоставить дополнительную информацию по мере необходимости.
ОК, ранее, когда я попробовал, моя модель вообще не появлялась. С тех пор я установил это, но проблема перевода еще не решена. Я добавляю 5 к позиции X каждый тик, и он перемещается в нижний правый угол экрана. – Ares513