Как рисовать видеокадры на экране постоянно с помощью XNA? - PullRequest
0 голосов
/ 10 февраля 2011

У меня есть приложение, которое воспроизводит видео и рисует видео на экране в движущемся положении. Когда я запускаю приложение, видео перемещается по экрану во время воспроизведения. Вот мой Draw метод ...

    protected override void Draw(GameTime gameTime)
    {
        Texture2D videoTexture = null;

        if (player.State != MediaState.Stopped)
            videoTexture = player.GetTexture();

        if (videoTexture != null)
        {
            spriteBatch.Begin();
            spriteBatch.Draw(
                    videoTexture,
                    new Rectangle(x++, 0, 400, 300),  /* Where X is a class member */
                    Color.White);
            spriteBatch.End();
        }

        base.Draw(gameTime);
    }

Видео движется горизонтально по экрану. Это не совсем то, что я ожидал, так как у меня нет строк кода, которые очищают экран. Мой вопрос: почему он не оставляет позади след?

Кроме того, как бы я оставил след позади?

1 Ответ

1 голос
/ 05 апреля 2011

Я думаю, что видео перемещается по горизонтали, потому что в новом Rectangle (в объявлении у вас есть "x ++" и постепенно увеличивается на протяжении рисования позиция по x или по прямоугольнику. обратный буфер с целевыми объектами, чтобы сделать копию прежнего буфера и снова нарисовать его. вот как бы я попытался.

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