AnimationNodeTransition
Переход внутри AnimationTree, соединяющий две AnimationNode-ы.
Переход внутри AnimationTree, соединяющий две AnimationNode-ы.
Простой конечный автомат для случаев, не требующих более продвинутого AnimationNodeStateMachine. Анимации можно подключать к входам и можно указывать время перехода.
После установки запроса и изменения воспроизведения анимации узел перехода автоматически очищает запрос на следующем кадре процесса, устанавливая его значение transition_request пустым.
Примечание: При использовании кросс-фейда current_state и current_index изменяются на следующее состояние сразу после начала кросс-фейда.
// Play child animation connected to "state_2" port.
animationTree.Set("parameters/Transition/transition_request", "state_2");
// Get current state name (read-only).
animationTree.Get("parameters/Transition/current_state");
// Get current state index (read-only).
animationTree.Get("parameters/Transition/current_index");В факультативном порядке сигналы могут использоваться путем установки AnimationNodeObserverTransition до конца AnimationTree.
var observer = animationTree.Get("parameters/Transition/observer").As<AnimationNodeObserverTransition>();
observer.StateStarted += OnStateStarted;Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
AnimationNodeTransitionКонструктор
public AnimationNodeTransition();Свойства4
AllowTransitionToSelfСвойство
public bool AllowTransitionToSelf { get; set; }Если true, разрешает переход в состояние self. Когда опция сброса включена во входных данных, анимация перезапускается. Если false, при переходе в состояние self ничего не происходит.
InputCountСвойство
public int InputCount { get; set; }Количество включенных входных портов для этого узла анимации.
XfadeCurveСвойство
public Curve XfadeCurve { get; set; }Определяет, как плавно смягчается перекрестное затухание между анимациями. Если пусто, переход будет линейным. Должен быть единицей Curve.
XfadeTimeСвойство
public double XfadeTime { get; set; }Время кросс-фейдинга (в секундах) между каждой анимацией, подключенной к входам.
Примечание: AnimationNodeTransition переходит в текущее состояние сразу после начала затухания. Точное оставшееся время можно вывести только из основной анимации. Когда AnimationNodeOutput считается самым верхним по потоку, то AnimationNodeTransition.XfadeTime не масштабируется в зависимости от дельты нижнего потока. См. также AnimationNodeOneShot.FadeOutTime.
Методы13
GetXfadeCurveCurve
public Curve GetXfadeCurve();CurveGetXfadeTimedouble
public double GetXfadeTime();doubleIsAllowTransitionToSelfbool
public bool IsAllowTransitionToSelf();boolIsInputLoopBrokenAtEndbool
public bool IsInputLoopBrokenAtEnd(int input);Возвращает, прерывает ли анимация цикл в конце цикла для перехода.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
boolIsInputResetbool
public bool IsInputReset(int input);Возвращает, перезапускается ли анимация при переходе от одной анимации к другой.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
boolIsInputSetAsAutoAdvancebool
public bool IsInputSetAsAutoAdvance(int input);Возвращает true, если для указанного индекса input включен авто-переход.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
boolSetAllowTransitionToSelfvoid
public void SetAllowTransitionToSelf(bool enable);| Имя | Тип | По умолчанию |
|---|---|---|
enable | bool | — |
SetInputAsAutoAdvancevoid
public void SetInputAsAutoAdvance(int input, bool enable);Включает или отключает автоматическое продвижение для заданного индекса input. Если включено, состояние изменяется на следующий ввод после однократного воспроизведения анимации. Если включено для последнего состояния ввода, оно циклически возвращается к первому.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
enable | bool | — |
SetInputBreakLoopAtEndvoid
public void SetInputBreakLoopAtEnd(int input, bool enable);Если true, прерывает цикл в конце цикла перехода, даже если анимация зациклена.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
enable | bool | — |
SetInputCountvoid
public void SetInputCount(int inputCount);| Имя | Тип | По умолчанию |
|---|---|---|
inputCount | int | — |
SetInputResetvoid
public void SetInputReset(int input, bool enable);Если true, анимация назначения перезапускается при переходе анимации.
| Имя | Тип | По умолчанию |
|---|---|---|
input | int | — |
enable | bool | — |
SetXfadeCurvevoid
public void SetXfadeCurve(Curve curve);| Имя | Тип | По умолчанию |
|---|---|---|
curve | Curve | — |
SetXfadeTimevoid
public void SetXfadeTime(double time);| Имя | Тип | По умолчанию |
|---|---|---|
time | double | — |