Playable
структура в UnityEngine.Playables
Выполнено в:UnityEngine.CoreModule
Интерфейсы приспособлений:IPlayable
Описание
Playables — это настраиваемые объекты времени выполнения, которые могут быть соединены между собой и содержатся в PlayableGraph для создания сложного поведения.
Playables могут быть использованы для создания сложных и гибких деревьев оценки данных. Playables — это узлы, которые могут быть соединены между собой, после чего каждый Playable может установить "вес" или "влияние" каждого из своих детей.
Играемые элементы одного и того же графа содержатся в PlayableGraph. PlayableGraph может иметь несколько выходов, также называемых "игроками", которые реализуют IPlayableOutput. PlayableOutput принимает результат их источника playable и применяет его к объекту в Scene. Например, AnimationPlayableOutput связан с воспроизводимым узлом в графе ("исходный воспроизводимый") и с Animator в Scene. Когда график воспроизводится, анимационная поза, полученная в результате оценки графика, применяется Animator. Существует столько PlayableOutputs, сколько различных воспроизводимых типов: AnimationPlayableOutput, AudioPlayableOutput, TexturePlayableOutput, ScriptPlayableOutputи т.д.
ScriptPlayable<T> — особый вид playable. Его основная роль — быть «пользовательским» playable. Это шаблонная структура, в которой T должен быть получен из PlayableBehaviour. Эти пользовательские PlayableBehaviours позволяют записывать поведение в определенные моменты в оценке графа (см. PlayableBehaviour.PrepareFrame и PlayableBehaviour.ProcessFrameХорошим примером ScriptPlayable является TimelinePlayable, который управляет графом Timeline. Он создает и связывает вместе playables, отвечающие за треки и клипы.
Когда PlayableGraph воспроизводится, обходится каждый PlayableOutput. В ходе этого обхода у каждого Playable вызывается метод PrepareFrame, позволяющий ему «подготовиться к следующему вычислению». Именно на стадии PrepareFrame каждый Playable может изменить своих потомков — добавить новые входы или убрать часть имеющихся. Благодаря этому Playable может «порождать» новые ветви дерева во время выполнения. То есть деревья Playable не являются статическими структурами: они умеют меняться со временем.
Как только подготовка завершена, PlayableOutputs отвечают за обработку результата, поэтому их также называют "игроками". В случае AnimationPlayableOutput, Animator графа. И в случае с графом, который состоит из 1000 элементов, ScriptPlayableOutput, PlayableBehaviour.ProcessFrame будет вызывать каждый ScriptPlayable.
Примечание: Вы можете использовать PlayableExtensions методы у любой структуры, реализующей IPlayable.
Примечание: В Руководстве содержится подробная документация о Игровые API.
Статические свойства
| Свойство | Описание |
|---|---|
| Null | Возвращает неверный Playable. |