reckfellENGINE

AnimationNodeBlendSpace1D

Набор AnimationRootNode, размещенных на виртуальной оси, плавно переходящих между двумя соседними. Используется AnimationTree.

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

Набор AnimationRootNode, размещенных на виртуальной оси, плавно переходящих между двумя соседними. Используется AnimationTree.

Ресурс, используемый AnimationNodeBlendTree. AnimationNodeBlendSpace1D представляет собой виртуальную ось, на которую можно добавить любой тип AnimationRootNode с помощью AnimationNodeBlendSpace1D.AddBlendPoint. Выводит линейную смесь двух AnimationRootNode, смежных с текущим значением. Вы можете задать пределы оси с помощью AnimationNodeBlendSpace1D.MinSpace и AnimationNodeBlendSpace1D.MaxSpace.

В факультативном порядке сигналы могут использоваться путем установки AnimationNodeObserverBlendSpace до конца AnimationTree.

C#
var observer = animationTree.Get("parameters/BlendSpace/observer").As<AnimationNodeObserverBlendSpace>();
observer.ClosestPointChanged += OnClosestPointChanged;

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

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

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

Свойства8

BlendModeСвойство
# BlendMode
C#
public AnimationNodeBlendSpace1D.BlendModeEnum BlendMode { get; set; }

Управляет интерполяцией между анимациями.

CyclicLengthСвойство
# CyclicLength
C#
public double CyclicLength { get; set; }

Длина общего цикла в секундах для SyncMode.CyclicConstant. Задайте положительное значение; это не вес смешивания и не длина каждого исходного Animation. В CyclicMutable длительность вычисляется из активных клипов.

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

Верхний предел оси пространства смешивания для положения точек. См. AnimationNodeBlendSpace1D.AddBlendPoint.

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

Нижний предел оси пространства смешивания для положения точек. См. AnimationNodeBlendSpace1D.AddBlendPoint.

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

Приращение позиции для привязки при перемещении точки по оси.

Переводчики:

SyncСвойство · Устарело
# Sync
C#
public bool Sync { get; set; }

Если true, режим синхронизации включен (эквивалентно AnimationNodeBlendSpace1D.SyncModeEnum.Independent). Это свойство сохранено для обратной совместимости.

SyncModeСвойство
# SyncMode
C#
public AnimationNodeBlendSpace1D.SyncModeEnum SyncMode { get; set; }

Управляет временем точек: None обновляет активные, Independent — все независимо от веса. CyclicMutable согласует цикл по взвешенным длинам активных клипов, CyclicConstant использует CyclicLength. Циклические режимы требуют прямых точек AnimationNodeAnimation.

ValueLabelСвойство
# ValueLabel
C#
public string ValueLabel { get; set; }

Label виртуальной оси смешанного пространства.

Методы28

AddBlendPoint2 перегрузки
# AddBlendPoint · 1/2
C#
public void AddBlendPoint(AnimationRootNode node, float pos, int atIndex);

Добавляет новую точку с именем name, соответствующую узлу node на виртуальной оси в позиции, заданной параметром pos. Вы можете вставить её в указанный индекс, используя аргумент at_index. Если оставить значение по умолчанию для at_index, точка будет добавлена в конец массива точек смешивания. Примечание: Если имя не указано, в качестве идентификатора используется индекс. В будущем пустые имена будут объявлены устаревшими, поэтому рекомендуется явно передавать имя.

Параметры
ИмяТипПо умолчанию
nodeAnimationRootNode—
posfloat—
atIndexint—
# AddBlendPoint · 2/2
C#
public void AddBlendPoint(AnimationRootNode node, float pos, int atIndex = -1, StringName name = null);

Добавляет новую точку с именем name, соответствующую узлу node на виртуальной оси в позиции, заданной параметром pos. Вы можете вставить её в указанный индекс, используя аргумент at_index. Если оставить значение по умолчанию для at_index, точка будет добавлена в конец массива точек смешивания. Примечание: Если имя не указано, в качестве идентификатора используется индекс. В будущем пустые имена будут объявлены устаревшими, поэтому рекомендуется явно передавать имя.

Параметры
ИмяТипПо умолчанию
nodeAnimationRootNode—
posfloat—
atIndexint-1
nameStringNamenull
FindBlendPointByNameint
# FindBlendPointByName
C#
public int FindBlendPointByName(StringName name);

Возвращает индекс точки смешения с заданным name. Возвращает -1, если точка смешения с таким именем не найдена.

Параметры
ИмяТипПо умолчанию
nameStringName—
Возвращает int
GetBlendModeAnimationNodeBlendSpace1D.BlendModeEnum
# GetBlendMode
C#
public AnimationNodeBlendSpace1D.BlendModeEnum GetBlendMode();
Возвращает AnimationNodeBlendSpace1D.BlendModeEnum
GetBlendPointCountint
# GetBlendPointCount
C#
public int GetBlendPointCount();

Возвращает количество точек на оси смешивания.

Возвращает int
GetBlendPointNameStringName
# GetBlendPointName
C#
public StringName GetBlendPointName(int point);

Возвращает имя точки смешения по индексу point.

Параметры
ИмяТипПо умолчанию
pointint—
Возвращает StringName
GetBlendPointNodeAnimationRootNode
# GetBlendPointNode
C#
public AnimationRootNode GetBlendPointNode(int point);

Возвращает AnimationNode, на который ссылается точка с индексом point.

Параметры
ИмяТипПо умолчанию
pointint—
Возвращает AnimationRootNode
GetBlendPointPositionfloat
# GetBlendPointPosition
C#
public float GetBlendPointPosition(int point);

Возвращает положение точки с индексом point.

Параметры
ИмяТипПо умолчанию
pointint—
Возвращает float
GetCyclicLengthdouble
# GetCyclicLength
C#
public double GetCyclicLength();
Возвращает double
GetMaxSpacefloat
# GetMaxSpace
C#
public float GetMaxSpace();
Возвращает float
GetMinSpacefloat
# GetMinSpace
C#
public float GetMinSpace();
Возвращает float
GetSnapfloat
# GetSnap
C#
public float GetSnap();
Возвращает float
GetSyncModeAnimationNodeBlendSpace1D.SyncModeEnum
# GetSyncMode
C#
public AnimationNodeBlendSpace1D.SyncModeEnum GetSyncMode();
Возвращает AnimationNodeBlendSpace1D.SyncModeEnum
GetValueLabelstring
# GetValueLabel
C#
public string GetValueLabel();
Возвращает string
IsUsingSyncbool
# IsUsingSync
C#
public bool IsUsingSync();
Возвращает bool
RemoveBlendPointvoid
# RemoveBlendPoint
C#
public void RemoveBlendPoint(int point);

Удаляет точку с индексом point из оси смешивания.

Параметры
ИмяТипПо умолчанию
pointint—
ReorderBlendPointvoid
# ReorderBlendPoint
C#
public void ReorderBlendPoint(int fromIndex, int toIndex);

Меняет местами точки смешивания в индексах from_index и to_index, заменив их позиции и свойства.

Параметры
ИмяТипПо умолчанию
fromIndexint—
toIndexint—
SetBlendModevoid
# SetBlendMode
C#
public void SetBlendMode(AnimationNodeBlendSpace1D.BlendModeEnum mode);
Параметры
ИмяТипПо умолчанию
modeAnimationNodeBlendSpace1D.BlendModeEnum—
SetBlendPointNamevoid
# SetBlendPointName
C#
public void SetBlendPointName(int point, StringName name);

Задает имя точки смешивания по индексу point. Если имя конфликтует с существующей точкой, будет автоматически сгенерировано уникальное имя.

Параметры
ИмяТипПо умолчанию
pointint—
nameStringName—
SetBlendPointNodevoid
# SetBlendPointNode
C#
public void SetBlendPointNode(int point, AnimationRootNode node);

Изменяет AnimationNode, на который ссылается точка с индексом point.

Параметры
ИмяТипПо умолчанию
pointint—
nodeAnimationRootNode—
SetBlendPointPositionvoid
# SetBlendPointPosition
C#
public void SetBlendPointPosition(int point, float pos);

Обновляет положение точки с индексом point на оси смешивания.

Параметры
ИмяТипПо умолчанию
pointint—
posfloat—
SetCyclicLengthvoid
# SetCyclicLength
C#
public void SetCyclicLength(double length);
Параметры
ИмяТипПо умолчанию
lengthdouble—
SetMaxSpacevoid
# SetMaxSpace
C#
public void SetMaxSpace(float maxSpace);
Параметры
ИмяТипПо умолчанию
maxSpacefloat—
SetMinSpacevoid
# SetMinSpace
C#
public void SetMinSpace(float minSpace);
Параметры
ИмяТипПо умолчанию
minSpacefloat—
SetSnapvoid
# SetSnap
C#
public void SetSnap(float snap);
Параметры
ИмяТипПо умолчанию
snapfloat—
SetSyncModevoid
# SetSyncMode
C#
public void SetSyncMode(AnimationNodeBlendSpace1D.SyncModeEnum syncMode);
Параметры
ИмяТипПо умолчанию
syncModeAnimationNodeBlendSpace1D.SyncModeEnum—
SetUseSyncvoid
# SetUseSync
C#
public void SetUseSync(bool enable);
Параметры
ИмяТипПо умолчанию
enablebool—
SetValueLabelvoid
# SetValueLabel
C#
public void SetValueLabel(string text);
Параметры
ИмяТипПо умолчанию
textstring—

AnimationNodeBlendSpace1D.BlendModeEnum

ЗначениеОписание
Discrete = 1

Пространство смешивания воспроизводит анимацию узла анимации, к которому ближе всего позиция смешивания. Полезно для покадровой 2D-анимации.

DiscreteCarry = 2

Аналогично AnimationNodeBlendSpace1D.BlendModeEnum.Discrete, но запускает новую анимацию с позиции воспроизведения последней анимации.

Interpolated = 0

Интерполяция между анимациями линейная.

AnimationNodeBlendSpace1D.SyncModeEnum

ЗначениеОписание
CyclicConstant = 3

Все анимации масштабируются по времени таким образом, что каждый цикл завершается за AnimationNodeBlendSpace1D.CyclicLength секунд, что обеспечивает их синхронизацию независимо от их индивидуальной длины. Примечание: Если вы примените AnimationNodeTimeSeek к результату при обработке анимаций разной длины, синхронизация будет нарушена. В таких случаях рекомендуется использовать AnimationNodeAnimation.UseCustomTimeline для выравнивания длительности анимаций.

CyclicMutable = 2

Все анимации масштабируются по времени, чтобы оставаться синхронизированными, при этом длительность цикла динамически вычисляется на основе активных весов смешивания. Это самонормализация: отдельная анимация воспроизводится с нормальной скоростью. Примечание: Если вы примените AnimationNodeTimeSeek к результату при обработке анимаций разной длины, синхронизация будет нарушена. В таких случаях рекомендуется использовать AnimationNodeAnimation.UseCustomTimeline для выравнивания длительности анимаций.

Independent = 1

Неактивные анимации продвигаются с весом 0. Это эквивалентно предыдущему поведению sync = true.

None = 0

Неактивные анимации замораживаются и не переходят к следующему этапу.

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

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

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

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