xna рисовать текст на экране, когда камера следует за объектом - PullRequest
2 голосов
/ 03 декабря 2011

В настоящее время у меня есть камера, следящая за изображением, но теперь я решил, что хочу отобразить текст в верхней части экрана. Я обнаружил, что с помощью следующего кода текст перемещается по экрану при изменении местоположения 20, 20. (что имеет смысл, когда камера следует за объектом, положение 20, 20 является статическим).

spriteBatch.DrawString(font, "test", new Vector2(20, 20), Color.White);

Камера обновляется с помощью следующего кода.

        _viewMatrix = Matrix.CreateTranslation(new Vector3(-this.Position.X, -this.Position.Y, 0)) *
                        Matrix.CreateRotationZ(this.Rotation) *
                        Matrix.CreateScale(new Vector3(Zoom, Zoom, 1)) *
                        Matrix.CreateTranslation(new Vector3(viewPort.Width * 0.5f, viewPort.Height * 0.5f, 0));

Уже поздно, и я чувствую, что упускаю что-то очевидное, но если я хочу всегда отображать «Тест» на экране, независимо от того, где находится камера, как вы поступите?

1 Ответ

1 голос
/ 03 декабря 2011

Простой: запустить другой пакет спрайтов (например, вызов Begin), не передавая матрицу просмотра.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...