Movie Textures это анимированные Textures, созданные из видео файлов. Перемещая видео файл в папку вашего проекта, вы можете использовать импортированное видео как обычную текстуру.
Видео файлы импортируются через Apple QuickTime. Форматы файлов, которые может воспроизводить QuickTime (обычно .mov, .mpg, .mpeg, .mp4, .avi, .asf). При импортировании видео на Windows, требуется иметь предустановленный в системе Quicktime проигрыватель (скачать здесь).
Анимированная текстура Inspector очень похожа на обычную текстуру.
Свойство: | Функция: |
---|---|
Aniso Level | При обзоре текстуры под крутым углом качество текстуры визуально улучшается. Хорошо подходит для текстур полов и земли. |
Filtering Mode | Выбирается то,как текстура фильтруется во время растяжения объекта различными трансформациями. |
Loop | При включении, после завершения проигрывания, ролик будет повторяться. |
Quality | Компрессия видеофайла формата Ogg Theora. Высокие значения означают высокое качество, но больший размер файла. |
При добавлении в проект видеофайла, он будет автоматически импортирован и преобразован в форматOgg Theora format. Сразу, после импорта анимированной текстуры, вы можете назначить её любой GameObject или Material, точно также как и любую обычную текстуру.
Ваша анимированная текстура не будет автоматически проигрываться при запуске игры. У вас должен быть небольшой скрипт, который укажет ей когда воспроизвестись.
// this line of code will make the Movie Texture begin playing
((MovieTexture)GetComponent<Renderer>().material.mainTexture).Play();
Назначьте необходимый скрипт параметру “включить воспроизведение текстуры”(toggle Movie playback) после нажатия пробела:
public class PlayMovieOnSpace : MonoBehaviour {
void Update () {
if (Input.GetButtonDown ("Jump")) {
Renderer r = GetComponent<Renderer>();
MovieTexture movie = (MovieTexture)r.material.mainTexture;
if (movie.isPlaying) {
movie.Pause();
}
else {
movie.Play();
}
}
}
}
Для более подробной информации по воспроизведению анимированных текстур, посетите страницу [руководства по скритингу анимированных текстур(../ScriptReference/MovieTexture.html)
При импорте анимированной текстуры, будет импортирована также и аудио составляющая, дополняющая визуальную составляющую данного видео. Данное аудио представляет из себя потомка AudioClip этой анимированной текстуры.
![Аудио дорожка видео появляется в обозревателе проекта в качестве потомка данной анимированной текстуры (../uploads/Main/MovieTextureAudio.png)
Для воспроизведения звука, данный отрезок аудио должен быть назначен игровому объекту, точно также как и любой другой отрезок аудио. Перетащите отрезок аудио из обозревателя проекта на игровой объект, находящийся в окне иерархии или на сцене. Как правило, этот игровой объект будет похож на тот, который может воспроизводить видео. Затем воспользуйтесь audio.Play(), чтобы запустить синхронное воспроизведение аудио вместе с видео дорожкой.
Анимированные текстуры не поддерживаются на IOS. Вместо этого можно включить поддержку полноэкранного воспроизведения, используя Handheld.PlayFullScreenMovie.
Unity iOS поддерживает любой тип видео файлов, которые на нём безошибочно воспроизводятся, допуская такие форматы файлов как .mov, .mp4, .mpv, и .3gp и используя один из следующих стандартов сжатия данных:
Чтобы получить больше информации о поддерживаемых стандартах сжатия, ознакомьтесь с iPhone SDK руководство по классу MPMoviePlayerController.
Как только вы вызовите функцию Handheld.PlayFullScreenMovie экран плавно сменит показ содержимого вашего телефона на цвет заднего фона. Прежде чем видео начнёт своё воспроизведение, может потребоваться некоторое время на его загрузку, в течение которого на экране может появиться индикатор загрузки, а его цвет по прежнему будет цвета заднего фона. По окончании воспроизведения экран вновь отобразит содержимое вашего телефона.
Как было подчёркнуто выше, видео файлы воспроизводятся при помощи встроенного проигрывателя Apple(такого как на SDK 3.2 и iPhone OS 3.1.2 и более ранних). В нём содержится ошибка, не позволяющая Unity переключаться в немой режим.
Видео проигрыватель Apple и iPhone SDK не поддерживают настройку ориентации видео. Решить эту проблему можно только если вручную создать 2 копии одного и того же видео файла, с альбомной и портретной ориентацией соответственно. Затем перед воспроизведением файла, можно определить ориентацию самого устройства, чтобы была воспроизведена нужная версия файла.
Анимированные текстуры не поддерживаются Android платформой. Вместо этого можно включить поддержку полноэкранного воспроизведения, используя Handheld.PlayFullScreenMovie.
Unity Android поддерживает любой тип видео файлов поддерживаемых платформой Android (т.е. такие форматы файлов как .mp4 and .3gp) и используя один из следующих стандартов сжатия данных:
Однако поставщики устройств работают над расширением данного списка, чтобы Android устройства могли воспроизводить форматы не перечисленные в данном списке, например такие как HD видео.
Для более подробной информации по поддерживаемым стандартам сжатия данный, ознакомтесь с Android SDK документация по основным медиа форматам.
Как только вы вызовите функцию Handheld.PlayFullScreenMovie экран плавно сменит показ содержимого вашего телефона на цвет заднего фона. Прежде чем видео начнёт своё воспроизведение, может потребоваться некоторое время на его загрузку, в течение которого на экране может появиться индикатор загрузки, а его цвет по прежнему будет цвета заднего фона. По окончании воспроизведения экран вновь отобразит содержимое вашего телефона.