reckfellENGINE

AnimationNodeStateMachineTransition

Переход внутри AnimationNodeStateMachine, соединяющий два AnimationRootNode-ов.

На этой странице
class AnimationNodeStateMachineTransitionReckfellSharpНаследует Resource

Переход внутри AnimationNodeStateMachine, соединяющий два AnimationRootNode-ов.

Путь, сгенерированный при использовании AnimationNodeStateMachinePlayback.Travel, ограничен узлами, соединенными AnimationNodeStateMachineTransition. Вы можете подробно задать время и условия перехода.

Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.

Конструкторы1

AnimationNodeStateMachineTransitionКонструктор
# AnimationNodeStateMachineTransition
C#
public AnimationNodeStateMachineTransition();

Свойства9

AdvanceConditionСвойство
# AdvanceCondition
C#
public StringName AdvanceCondition { get; set; }

Включите автоматическое продвижение, когда задано это условие. Предоставленное имя станет булевым параметром в AnimationTree, которым можно управлять из кода (см. Использование AnimationTree). Например, если AnimationTree.TreeRoot является AnimationNodeStateMachine, а AnimationNodeStateMachineTransition.AdvanceCondition установлен в "idle":

C#
GetNode<AnimationTree>("animation_tree").Set("parameters/conditions/idle", IsOnFloor && (LinearVelocity.X == 0));
AdvanceExpressionСвойство
# AdvanceExpression
C#
public string AdvanceExpression { get; set; }

Используйте выражение как условие для переходов между состояниями машины. Можно создавать сложные условия продвижения анимации для переключения между состояниями и обеспечивает гораздо большую гибкость для создания сложных машин состояний путем прямого взаимодействия с кодом скрипта.

AdvanceModeСвойство
# AdvanceMode
C#
public AnimationNodeStateMachineTransition.AdvanceModeEnum AdvanceMode { get; set; }

Определяет, следует ли отключить переход, включить его при использовании AnimationNodeStateMachinePlayback.Travel или выполнить переход автоматически, если проверки AnimationNodeStateMachineTransition.AdvanceCondition и AnimationNodeStateMachineTransition.AdvanceExpression равны true (если назначено).

BreakLoopAtEndСвойство
# BreakLoopAtEnd
C#
public bool BreakLoopAtEnd { get; set; }

Если true, прерывает цикл в конце цикла перехода, даже если анимация зациклена.

PriorityСвойство
# Priority
C#
public int Priority { get; set; }

Переходы с более низким приоритетом предпочтительны при перемещении по дереву с помощью AnimationNodeStateMachinePlayback.Travel или AnimationNodeStateMachineTransition.AdvanceMode установлен в AnimationNodeStateMachineTransition.AdvanceModeEnum.Auto.

ResetСвойство
# Reset
C#
public bool Reset { get; set; }

Если true, то при переключении анимация назначения воспроизводится с начала.

SwitchModeСвойство
# SwitchMode
C#
public AnimationNodeStateMachineTransition.SwitchModeEnum SwitchMode { get; set; }

Тип перехода.

XfadeCurveСвойство
# XfadeCurve
C#
public Curve XfadeCurve { get; set; }

Легкая кривая для лучшего контроля над перекрестным слоем между этим состоянием и следующим. Curve.

XfadeTimeСвойство
# XfadeTime
C#
public float XfadeTime { get; set; }

Время для перехода между этим состоянием и следующим. Примечание: AnimationNodeStateMachine переходит в текущее состояние сразу после начала перехода. Точное оставшееся время можно вывести только из основной анимации. Когда AnimationNodeOutput считается самым верхним по потоку, то AnimationNodeStateMachineTransition.XfadeTime не масштабируется в зависимости от дельты нижнего потока. См. также AnimationNodeOneShot.FadeOutTime.

Методы18

GetAdvanceConditionStringName
# GetAdvanceCondition
C#
public StringName GetAdvanceCondition();
Возвращает StringName
GetAdvanceExpressionstring
# GetAdvanceExpression
C#
public string GetAdvanceExpression();
Возвращает string
GetAdvanceModeAnimationNodeStateMachineTransition.AdvanceModeEnum
# GetAdvanceMode
C#
public AnimationNodeStateMachineTransition.AdvanceModeEnum GetAdvanceMode();
Возвращает AnimationNodeStateMachineTransition.AdvanceModeEnum
GetPriorityint
# GetPriority
C#
public int GetPriority();
Возвращает int
GetSwitchModeAnimationNodeStateMachineTransition.SwitchModeEnum
# GetSwitchMode
C#
public AnimationNodeStateMachineTransition.SwitchModeEnum GetSwitchMode();
Возвращает AnimationNodeStateMachineTransition.SwitchModeEnum
GetXfadeCurveCurve
# GetXfadeCurve
C#
public Curve GetXfadeCurve();
Возвращает Curve
GetXfadeTimefloat
# GetXfadeTime
C#
public float GetXfadeTime();
Возвращает float
IsLoopBrokenAtEndbool
# IsLoopBrokenAtEnd
C#
public bool IsLoopBrokenAtEnd();
Возвращает bool
IsResetbool
# IsReset
C#
public bool IsReset();
Возвращает bool
SetAdvanceConditionvoid
# SetAdvanceCondition
C#
public void SetAdvanceCondition(StringName name);
Параметры
ИмяТипПо умолчанию
nameStringName—
SetAdvanceExpressionvoid
# SetAdvanceExpression
C#
public void SetAdvanceExpression(string text);
Параметры
ИмяТипПо умолчанию
textstring—
SetAdvanceModevoid
# SetAdvanceMode
C#
public void SetAdvanceMode(AnimationNodeStateMachineTransition.AdvanceModeEnum mode);
Параметры
ИмяТипПо умолчанию
modeAnimationNodeStateMachineTransition.AdvanceModeEnum—
SetBreakLoopAtEndvoid
# SetBreakLoopAtEnd
C#
public void SetBreakLoopAtEnd(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetPriorityvoid
# SetPriority
C#
public void SetPriority(int priority);
Параметры
ИмяТипПо умолчанию
priorityint—
SetResetvoid
# SetReset
C#
public void SetReset(bool reset);
Параметры
ИмяТипПо умолчанию
resetbool—
SetSwitchModevoid
# SetSwitchMode
C#
public void SetSwitchMode(AnimationNodeStateMachineTransition.SwitchModeEnum mode);
Параметры
ИмяТипПо умолчанию
modeAnimationNodeStateMachineTransition.SwitchModeEnum—
SetXfadeCurvevoid
# SetXfadeCurve
C#
public void SetXfadeCurve(Curve curve);
Параметры
ИмяТипПо умолчанию
curveCurve—
SetXfadeTimevoid
# SetXfadeTime
C#
public void SetXfadeTime(float secs);
Параметры
ИмяТипПо умолчанию
secsfloat—

Сигналы и события1

AdvanceConditionChangedСобытие
# AdvanceConditionChanged
C#
public event Action AdvanceConditionChanged;

Вызывается при изменении AnimationNodeStateMachineTransition.AdvanceCondition.

AnimationNodeStateMachineTransition.AdvanceModeEnum

ЗначениеОписание
Auto = 2

Автоматически использовать этот переход, если проверки AnimationNodeStateMachineTransition.AdvanceCondition и AnimationNodeStateMachineTransition.AdvanceExpression равны true (если назначено).

Disabled = 0

Не используйте этот переход.

Enabled = 1

Используйте этот переход только во время AnimationNodeStateMachinePlayback.Travel.

AnimationNodeStateMachineTransition.SwitchModeEnum

ЗначениеОписание
AtEnd = 2

Дождитесь окончания воспроизведения текущего состояния, затем переключитесь на начало анимации следующего состояния.

Immediate = 0

Немедленно переключиться на следующее состояние. Текущее состояние закончится и сольется с началом нового.

Sync = 1

Немедленно переключиться на следующее состояние, но новое состояние будет искаться в позиции воспроизведения старого состояния.

Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

Вход в аккаунт

Войдите в аккаунт Reckfell.

Один аккаунт для всей платформы Reckfell.