Как воспроизводить видеофайлы в Unity

В Unity воспроизведение видеоклипов может добавить глубины и погружения в вашу игру. Будь то кат-сцена, обучающее видео или фоновая атмосфера, интеграция видео может улучшить впечатления игрока. В этом уроке мы рассмотрим шаги по воспроизведению видео в Unity, охватывая как старый метод с использованием MovieTexture, так и новый компонент VideoPlayer.

1. Использование MovieTexture (устарело)

Шаг 1: Импортируйте видеофайл

  • Сначала убедитесь, что ваш видеофайл имеет формат, поддерживаемый Unity (например, .mp4 или.mov).
  • Перетащите видеофайл в папку Assets вашего проекта Unity.

Шаг 2: Создайте материал

  • Щелкните правой кнопкой мыши в окне «Ресурсы», затем перейдите к 'Create -> Material'.
  • Назовите материал соответствующим образом (например, "VideoMaterial").
  • Выберите материал, затем в окне Инспектора выберите раскрывающийся список «Шейдер» и выберите "Legacy Shaders -> Diffuse".
  • Перетащите видеофайл в слот Albedo материала.

Шаг 3: Создайте самолет

  • Щелкните правой кнопкой мыши в окне «Иерархия», затем перейдите к '3D Object -> Plane'.
  • Расположите и масштабируйте плоскость по желанию.

Шаг 4. Примените материал к плоскости

  • Перетащите VideoMaterial на плоскость в представлении «Сцена».

Шаг 5: Напишите сценарий

  • Создайте новый сценарий C# (например, "PlayVideo").
  • Откройте скрипт и напишите следующий код:
using UnityEngine;

public class PlayVideo : MonoBehaviour
{
    public MovieTexture video;

    void Start()
    {
        GetComponent<Renderer>().material.mainTexture = video;
        video.Play();
    }
}

Шаг 6: Прикрепите сценарий

  • Прикрепите скрипт PlayVideo к плоскости в окне Иерархии.
  • Перетащите видеоматериал в поле "Video" компонента сценария PlayVideo.

Шаг 7. Тест игры

  • Нажмите кнопку «Играть», чтобы протестировать свою игру. Видео должно воспроизводиться на поверхности самолета.

2. Использование компонента VideoPlayer (рекомендуется)

Unity представил компонент VideoPlayer как современную замену для воспроизведения видео. Он предоставляет больше возможностей и лучшую производительность.

Шаг 1: Импортируйте видеофайл

  • Выполните шаг 1 предыдущего метода, чтобы импортировать видеофайл.

Шаг 2. Создайте холст пользовательского интерфейса

  • Щелкните правой кнопкой мыши в окне «Иерархия», затем перейдите к 'UI -> Canvas'.
  • Это создаст холст для отображения видео.

Шаг 3. Добавьте необработанное изображение

  • Щелкните правой кнопкой мыши объект Canvas, затем перейдите к 'UI -> Raw Image'.
  • Это создаст объект изображения для отображения видеотекстуры.

Шаг 4. Прикрепите компонент VideoPlayer

  • Выберите объект «Необработанное изображение» в окне «Иерархия».
  • В окне инспектора нажмите "Add Component" и найдите "Video Player".
  • Нажмите "New", чтобы создать новый компонент видеоплеера.

Шаг 5: Установите видеоклип

  • Выбрав компонент «Видеоплеер», перетащите видеофайл в поле "Video Clip".

Шаг 6: Тест игры

  • Нажмите кнопку «Играть», чтобы протестировать свою игру. Видео должно воспроизводиться на объекте Raw Image.

Заключение

В этом уроке вы узнали два метода воспроизведения видео в играх Unity. Хотя MovieTexture устарел, компонент VideoPlayer предлагает больше возможностей и лучшую производительность, что делает его рекомендуемым подходом для воспроизведения видео в формате Unity.

Рекомендуемые статьи
Как заставить объект следовать за курсором мыши в Unity
Как добавить эффект снайперского прицела в Unity
Как запустить кат-сцену в Unity
Unity реализует звуки шагов
Как создать шейдер
Как стать лучшим программистом в Unity
Введение в GUILayout в Unity