AnimationTree
Вычисляет состояния и смешивание клипов через граф ресурсов.
Дерево использует библиотеки AnimationPlayer, а TreeRoot задаёт граф: StateMachine, BlendTree или BlendSpace. Ресурсы AnimationNode... являются элементами графа, не игровыми Entity и не ECS.
Параметры экземпляра меняются через parameters/.... Получайте playback по пути своего StateMachine; parameters/playback подходит корневой машине состояний. Граф вычисляет анимацию, но не проверяет разрешённость игровых действий и не двигает физическое тело за вас.
Готовые графы, переходы и root motion
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
AnimationTreeКонструктор
public AnimationTree();Свойства4
AdvanceExpressionBaseEntityСвойство
public EntityPath AdvanceExpressionBaseEntity { get; set; }Путь к Entity, используемый для оценки AnimationNode Expression, если он явно не указан внутри.
AnimPlayerСвойство
public EntityPath AnimPlayer { get; set; }Путь к AnimationPlayer, откуда дерево получает библиотеки и корень целей. Это источник клипов, не команда Play(). Пока дерево управляет свойствами, не запускайте параллельное воспроизведение того же AnimationPlayer для этих целей.
ProcessCallbackСвойство
public AnimationTree.AnimationProcessCallback ProcessCallback { get; set; }TreeRootСвойство
public AnimationRootNode TreeRoot { get; set; }Корневой ресурс графа: например StateMachine, BlendTree или BlendSpace. Ресурсы AnimationNode описывают граф, а не иерархию игровых Entity. Параметры конкретного экземпляра задаются через parameters/... у AnimationTree; общий ресурс не следует менять как локальное состояние персонажа.
Методы9
GetAdvanceExpressionBaseEntityEntityPath
public EntityPath GetAdvanceExpressionBaseEntity();EntityPathGetAnimationPlayerEntityPath
public EntityPath GetAnimationPlayer();EntityPathGetProcessCallbackAnimationTree.AnimationProcessCallback · Устарело
public AnimationTree.AnimationProcessCallback GetProcessCallback();Возвращает уведомление о процессе, в котором необходимо обновить анимацию.
AnimationTree.AnimationProcessCallbackGetTreeRootAnimationRootNode
public AnimationRootNode GetTreeRoot();AnimationRootNodeSetAdvanceExpressionBaseEntityvoid
public void SetAdvanceExpressionBaseEntity(EntityPath path);| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
SetAnimationPlayervoid
public void SetAnimationPlayer(EntityPath path);| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
SetProcessCallbackvoid · Устарело
public void SetProcessCallback(AnimationTree.AnimationProcessCallback mode);Устанавливает уведомление о процессе, в котором необходимо обновить анимацию.
| Имя | Тип | По умолчанию |
|---|---|---|
mode | AnimationTree.AnimationProcessCallback | — |
SetTreeRoot2 перегрузки
public void SetTreeRoot(AnimationNode root);| Имя | Тип | По умолчанию |
|---|---|---|
root | AnimationNode | — |
public void SetTreeRoot(AnimationRootNode animationNode);| Имя | Тип | По умолчанию |
|---|---|---|
animationNode | AnimationRootNode | — |
Сигналы и события1
AnimationPlayerChangedСобытие
public event Action AnimationPlayerChanged;Вызывается при изменении AnimationTree.AnimPlayer.
AnimationTree.AnimationProcessCallback
| Значение | Описание |
|---|---|
Idle = 1 | |
Manual = 2 | |
Physics = 0 |