reckfellENGINE

Animation

Ресурс с дорожками, ключами, длиной и режимом цикла.

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

Animation хранит данные клипа. Для воспроизведения добавьте его в AnimationLibrary и назначьте библиотеку AnimationPlayer или используйте её через AnimationTree. Один ресурс не является уже выполняемой анимацией.

Тип дорожки определяет формат ключей и цель. У Value путь содержит свойство; у специализированной 3D-дорожки он указывает Entity3D или кость. Method-дорожки требуют отдельного учёта перемотки и повторных событий.

Клипы и ключи · Дорожки и события

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

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

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

Свойства4

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

Возвращает true, если трек захвата включен. Это кэшированное значение только для чтения для производительности.

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

Общая длина анимации (в секундах). Замечание: Длина не ограничена последним ключом, так как он может находиться до или после конца для обеспечения корректной интерполяции и зацикливания.

LoopModeСвойство
# LoopMode
C#
public Animation.LoopModeEnum LoopMode { get; set; }

Определяет поведение обоих концов временной шкалы анимации во время её воспроизведения. Это указывает, следует ли перезапускать анимацию и как это сделать, а также используется для корректной интерполяции циклов анимации.

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

Значение шага анимации.

Методы91

AddMarkervoid
# AddMarker
C#
public void AddMarker(StringName name, double time);

Добавляет к этому маркер Animation.

Параметры
ИмяТипПо умолчанию
nameStringName—
timedouble—
AddTrackint
# AddTrack
C#
public int AddTrack(Animation.TrackType type, int atPosition = -1);

Добавить дорожку Animation.

Параметры
ИмяТипПо умолчанию
typeAnimation.TrackType—
atPositionint-1
Возвращает int
AnimationTrackGetKeyAnimationStringName
# AnimationTrackGetKeyAnimation
C#
public StringName AnimationTrackGetKeyAnimation(int trackIdx, int keyIdx);

Возвращает имя анимации в ключе, идентифицированном key_idx. . . . . track_idx должен быть индексом Animation Дорожка.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает StringName
AnimationTrackInsertKeyint
# AnimationTrackInsertKey
C#
public int AnimationTrackInsertKey(int trackIdx, double time, StringName animation);

Вставить ключ со значением animation на данном time (в секундах) track_idx должен быть индексом Animation Дорожка.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
animationStringName—
Возвращает int
AnimationTrackSetKeyAnimationvoid
# AnimationTrackSetKeyAnimation
C#
public void AnimationTrackSetKeyAnimation(int trackIdx, int keyIdx, StringName animation);

Устанавливает ключ, идентифицированный key_idx стоимость animation. . . . . track_idx должен быть индексом Animation Дорожка.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
animationStringName—
AudioTrackGetKeyEndOffsetfloat
# AudioTrackGetKeyEndOffset
C#
public float AudioTrackGetKeyEndOffset(int trackIdx, int keyIdx);

Возвращает конечное смещение ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки. Конечное смещение — это количество секунд, обрезанных в конце аудиопотока.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает float
AudioTrackGetKeyStartOffsetfloat
# AudioTrackGetKeyStartOffset
C#
public float AudioTrackGetKeyStartOffset(int trackIdx, int keyIdx);

Возвращает начальное смещение ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки. Начальное смещение — это количество секунд, отрезанных в начале аудиопотока.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает float
AudioTrackGetKeyStreamResource
# AudioTrackGetKeyStream
C#
public Resource AudioTrackGetKeyStream(int trackIdx, int keyIdx);

Возвращает аудиопоток ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает Resource
AudioTrackInsertKeyint
# AudioTrackInsertKey
C#
public int AudioTrackInsertKey(int trackIdx, double time, Resource stream, float startOffset = 0f, float endOffset = 0f);

Вставляет ключ аудиодорожки в указанное time в секундах. track_idx должен быть индексом аудиодорожки. stream — ресурс AudioStream для воспроизведения. start_offset — количество секунд, обрезанных в начале аудиопотока, а end_offset — в конце.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
streamResource—
startOffsetfloat0f
endOffsetfloat0f
Возвращает int
AudioTrackIsUseBlendbool
# AudioTrackIsUseBlend
C#
public bool AudioTrackIsUseBlend(int trackIdx);

Возвращает true, если трек в track_idx будет смешан с другими анимациями.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает bool
AudioTrackSetKeyEndOffsetvoid
# AudioTrackSetKeyEndOffset
C#
public void AudioTrackSetKeyEndOffset(int trackIdx, int keyIdx, float offset);

Устанавливает конечное смещение ключа, идентифицированного key_idx, на значение offset. track_idx должен быть индексом аудиодорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
offsetfloat—
AudioTrackSetKeyStartOffsetvoid
# AudioTrackSetKeyStartOffset
C#
public void AudioTrackSetKeyStartOffset(int trackIdx, int keyIdx, float offset);

Устанавливает начальное смещение ключа, идентифицированного key_idx, на значение offset. track_idx должен быть индексом аудиодорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
offsetfloat—
AudioTrackSetKeyStreamvoid
# AudioTrackSetKeyStream
C#
public void AudioTrackSetKeyStream(int trackIdx, int keyIdx, Resource stream);

Устанавливает поток ключа, идентифицированного key_idx, на значение stream. track_idx должен быть индексом аудиодорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
streamResource—
AudioTrackSetUseBlendvoid
# AudioTrackSetUseBlend
C#
public void AudioTrackSetUseBlend(int trackIdx, bool enable);

Устанавливает, будет ли трек смешиваться с другими анимациями. Если true, громкость воспроизведения звука меняется в зависимости от значения смешивания.

Параметры
ИмяТипПо умолчанию
trackIdxint—
enablebool—
BezierTrackGetKeyInHandleVector2
# BezierTrackGetKeyInHandle
C#
public Vector2 BezierTrackGetKeyInHandle(int trackIdx, int keyIdx);

Возвращает дескриптор ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает Vector2
BezierTrackGetKeyOutHandleVector2
# BezierTrackGetKeyOutHandle
C#
public Vector2 BezierTrackGetKeyOutHandle(int trackIdx, int keyIdx);

Возвращает выходной дескриптор ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает Vector2
BezierTrackGetKeyValuefloat
# BezierTrackGetKeyValue
C#
public float BezierTrackGetKeyValue(int trackIdx, int keyIdx);

Возвращает значение ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает float
BezierTrackInsertKeyint
# BezierTrackInsertKey
C#
public int BezierTrackInsertKey(int trackIdx, double time, float value, Vector2? inHandle = default, Vector2? outHandle = default);

Вставляет ключ дорожки Безье в указанное time в секундах. track_idx должен быть индексом дорожки Безье. in_handle — вес левой стороны добавленной точки кривой Безье, out_handle — вес правой стороны, а value — фактическое значение в этой точке.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
valuefloat—
inHandleVector2?default
outHandleVector2?default
inHandle

Если параметр не имеет значения, то значение по умолчанию: new Vector2(0.0f, 0.0f).

outHandle

Если параметр не имеет значения, то значение по умолчанию: new Vector2(0.0f, 0.0f).

Возвращает int
BezierTrackInterpolatefloat
# BezierTrackInterpolate
C#
public float BezierTrackInterpolate(int trackIdx, double time);

Возвращает интерполированное значение в указанном time (в секундах). track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
Возвращает float
BezierTrackSetKeyInHandlevoid
# BezierTrackSetKeyInHandle
C#
public void BezierTrackSetKeyInHandle(int trackIdx, int keyIdx, Vector2 inHandle, float balancedValueTimeRatio = 1f);

Устанавливает входной дескриптор ключа, идентифицированного key_idx, на значение in_handle. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
inHandleVector2—
balancedValueTimeRatiofloat1f
BezierTrackSetKeyOutHandlevoid
# BezierTrackSetKeyOutHandle
C#
public void BezierTrackSetKeyOutHandle(int trackIdx, int keyIdx, Vector2 outHandle, float balancedValueTimeRatio = 1f);

Устанавливает выходной дескриптор ключа, идентифицированного key_idx, на значение out_handle. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
outHandleVector2—
balancedValueTimeRatiofloat1f
BezierTrackSetKeyValuevoid
# BezierTrackSetKeyValue
C#
public void BezierTrackSetKeyValue(int trackIdx, int keyIdx, float value);

Устанавливает значение ключа, идентифицированного key_idx, на заданное значение. track_idx должен быть индексом дорожки Безье.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
valuefloat—
BlendShapeTrackInsertKeyint
# BlendShapeTrackInsertKey
C#
public int BlendShapeTrackInsertKey(int trackIdx, double time, float amount);

Вставляет ключ в заданную дорожку форма смеси. Возвращает индекс ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
amountfloat—
Возвращает int
BlendShapeTrackInterpolate2 перегрузки
# BlendShapeTrackInterpolate · 1/2
C#
public float BlendShapeTrackInterpolate(int trackIdx, double timeSec);

Возвращает интерполированную форму смеси в данный момент времени (в секундах). track_idx должен быть индексом смешанной формы. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
Возвращает float
# BlendShapeTrackInterpolate · 2/2
C#
public float BlendShapeTrackInterpolate(int trackIdx, double timeSec, bool backward = false);

Возвращает интерполированную форму смеси в данный момент времени (в секундах). track_idx должен быть индексом смешанной формы. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
backwardboolfalse
Возвращает float
Clearvoid
# Clear
C#
public void Clear();

Очистить анимацию (удалить все дорожки и сбросить всё).

Compressvoid
# Compress
C#
public void Compress(uint pageSize = 8192, uint fps = 120, float splitTolerance = 4f);

Сжать анимацию и все ее дорожки на месте. Это заставит Animation.TrackIsCompressed возвращать true после вызова этой Animation. Сжатые дорожки требуют меньше памяти для воспроизведения и предназначены для использования в сложных 3D-анимациях (например, катсценах), импортированных из внешнего 3D-программного обеспечения. Сжатие происходит с потерями, но разница обычно не заметна в реальных условиях. Примечание: Сжатые дорожки имеют различные ограничения (например, невозможность редактирования в редакторе), поэтому используйте сжатые анимации только в том случае, если они вам действительно нужны.

Параметры
ИмяТипПо умолчанию
pageSizeuint8192
fpsuint120
splitTolerancefloat4f
CopyTrackvoid
# CopyTrack
C#
public void CopyTrack(int trackIdx, Animation toAnimation);

Добавляет новый трек в to_animation, который является копией указанного трека из этой анимации.

Параметры
ИмяТипПо умолчанию
trackIdxint—
toAnimationAnimation—
FindTrackint
# FindTrack
C#
public int FindTrack(EntityPath path, Animation.TrackType type);

Возвращает индекс указанной дорожки. Если дорожка не найдена, возвращает -1.

Параметры
ИмяТипПо умолчанию
pathEntityPath—
typeAnimation.TrackType—
Возвращает int
GetLengthdouble
# GetLength
C#
public double GetLength();
Возвращает double
GetLoopModeAnimation.LoopModeEnum
# GetLoopMode
C#
public Animation.LoopModeEnum GetLoopMode();
Возвращает Animation.LoopModeEnum
GetMarkerAtTimeStringName
# GetMarkerAtTime
C#
public StringName GetMarkerAtTime(double time);

Возвращает имя маркера, расположенного в указанное время.

Параметры
ИмяТипПо умолчанию
timedouble—
Возвращает StringName
GetMarkerColorColor
# GetMarkerColor
C#
public Color GetMarkerColor(StringName name);

Возвращает цвет указанного маркера.

Параметры
ИмяТипПо умолчанию
nameStringName—
Возвращает Color
GetMarkerNamesstring[]
# GetMarkerNames
C#
public string[] GetMarkerNames();

Возвращает каждый маркер в этом Animation, расставленный по времени.

Возвращает string[]
GetMarkerTimedouble
# GetMarkerTime
C#
public double GetMarkerTime(StringName name);

Возвращает время указанного маркера.

Параметры
ИмяТипПо умолчанию
nameStringName—
Возвращает double
GetNextMarkerStringName
# GetNextMarker
C#
public StringName GetNextMarker(double time);

Возвращает ближайший маркер, который следует после указанного времени. Если такого маркера не существует, возвращается пустая строка.

Параметры
ИмяТипПо умолчанию
timedouble—
Возвращает StringName
GetPrevMarkerStringName
# GetPrevMarker
C#
public StringName GetPrevMarker(double time);

Возвращает ближайший маркер, который предшествует указанному времени. Если такого маркера не существует, возвращается пустая строка.

Параметры
ИмяТипПо умолчанию
timedouble—
Возвращает StringName
GetStepfloat
# GetStep
C#
public float GetStep();
Возвращает float
GetTrackCountint
# GetTrackCount
C#
public int GetTrackCount();

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

Возвращает int
HasMarkerbool
# HasMarker
C#
public bool HasMarker(StringName name);

Returns (Возврат) true Если это Animation содержит маркер с указанным именем.

Параметры
ИмяТипПо умолчанию
nameStringName—
Возвращает bool
IsCaptureIncludedbool
# IsCaptureIncluded
C#
public bool IsCaptureIncluded();
Возвращает bool
MethodTrackGetNameStringName
# MethodTrackGetName
C#
public StringName MethodTrackGetName(int trackIdx, int keyIdx);

Возвращает имя метода для дорожки методов.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает StringName
MethodTrackGetParamsReckfell.Collections.Array
# MethodTrackGetParams
C#
public Reckfell.Collections.Array MethodTrackGetParams(int trackIdx, int keyIdx);

Возвращает значения аргументов, которые необходимо вызвать в дорожке метода для заданного ключа в заданной дорожке.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает Reckfell.Collections.Array
Optimizevoid
# Optimize
C#
public void Optimize(float allowedVelocityErr = 0.01f, float allowedAngularErr = 0.01f, int precision = 3);

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

Параметры
ИмяТипПо умолчанию
allowedVelocityErrfloat0.01f
allowedAngularErrfloat0.01f
precisionint3
PositionTrackInsertKeyint
# PositionTrackInsertKey
C#
public int PositionTrackInsertKey(int trackIdx, double time, Vector3 position);

Вставляет ключ в заданную 3D-трек позиции. Возвращает индекс ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
positionVector3—
Возвращает int
PositionTrackInterpolate2 перегрузки
# PositionTrackInterpolate · 1/2
C#
public Vector3 PositionTrackInterpolate(int trackIdx, double timeSec);

Возвращает интерполяционное значение положения в данный момент времени (в секундах). track_idx должен быть индексом трехмерной траектории положения. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
Возвращает Vector3
# PositionTrackInterpolate · 2/2
C#
public Vector3 PositionTrackInterpolate(int trackIdx, double timeSec, bool backward = false);

Возвращает интерполяционное значение положения в данный момент времени (в секундах). track_idx должен быть индексом трехмерной траектории положения. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
backwardboolfalse
Возвращает Vector3
RemoveMarkervoid
# RemoveMarker
C#
public void RemoveMarker(StringName name);

Удалить отметку с указанным именем из этого Animation.

Параметры
ИмяТипПо умолчанию
nameStringName—
RemoveTrackvoid
# RemoveTrack
C#
public void RemoveTrack(int trackIdx);

Удаляет дорожку, указав индекс дорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
RotationTrackInsertKeyint
# RotationTrackInsertKey
C#
public int RotationTrackInsertKey(int trackIdx, double time, Quaternion rotation);

Вставляет ключ в заданную 3D-дорожку вращения. Возвращает индекс ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
rotationQuaternion—
Возвращает int
RotationTrackInterpolate2 перегрузки
# RotationTrackInterpolate · 1/2
C#
public Quaternion RotationTrackInterpolate(int trackIdx, double timeSec);

Возвращает интерполяционное значение вращения в данный момент времени (в секундах). track_idx должен быть индексом трехмерного вращения. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
Возвращает Quaternion
# RotationTrackInterpolate · 2/2
C#
public Quaternion RotationTrackInterpolate(int trackIdx, double timeSec, bool backward = false);

Возвращает интерполяционное значение вращения в данный момент времени (в секундах). track_idx должен быть индексом трехмерного вращения. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
backwardboolfalse
Возвращает Quaternion
ScaleTrackInsertKeyint
# ScaleTrackInsertKey
C#
public int ScaleTrackInsertKey(int trackIdx, double time, Vector3 scale);

Вставляет ключ в заданную 3D-шкалу трека. Возвращает индекс ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
scaleVector3—
Возвращает int
ScaleTrackInterpolate2 перегрузки
# ScaleTrackInterpolate · 1/2
C#
public Vector3 ScaleTrackInterpolate(int trackIdx, double timeSec);

Возвращает значение интерполяции шкалы в данный момент времени (в секундах). track_idx должен быть индексом трехмерной шкалы. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
Возвращает Vector3
# ScaleTrackInterpolate · 2/2
C#
public Vector3 ScaleTrackInterpolate(int trackIdx, double timeSec, bool backward = false);

Возвращает значение интерполяции шкалы в данный момент времени (в секундах). track_idx должен быть индексом трехмерной шкалы. Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
backwardboolfalse
Возвращает Vector3
SetLengthvoid
# SetLength
C#
public void SetLength(double timeSec);
Параметры
ИмяТипПо умолчанию
timeSecdouble—
SetLoopModevoid
# SetLoopMode
C#
public void SetLoopMode(Animation.LoopModeEnum loopMode);
Параметры
ИмяТипПо умолчанию
loopModeAnimation.LoopModeEnum—
SetMarkerColorvoid
# SetMarkerColor
C#
public void SetMarkerColor(StringName name, Color color);

Устанавливает цвет указанного маркера.

Параметры
ИмяТипПо умолчанию
nameStringName—
colorColor—
SetStepvoid
# SetStep
C#
public void SetStep(float sizeSec);
Параметры
ИмяТипПо умолчанию
sizeSecfloat—
TrackFindKey2 перегрузки
# TrackFindKey · 1/2
C#
public int TrackFindKey(int trackIdx, double time, Animation.FindMode findMode);

Находит индекс ключа по времени в заданном треке. При желании находит его только в том случае, если указано приблизительное/точное время. Если limit равно true, он не возвращает ключи за пределами диапазона анимации. Если backward равно true, направление меняется на противоположное в методах, которые полагаются на однонаправленную обработку. Например, в случае, если find_mode равно Animation.FindMode.Nearest, если в текущей позиции сразу после искомого нет ключа, первый найденный ключ извлекается путем поиска перед позицией, но если backward равно true, первый найденный ключ извлекается после позиции.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
findModeAnimation.FindMode—
Возвращает int
# TrackFindKey · 2/2
C#
public int TrackFindKey(int trackIdx, double time, Animation.FindMode findMode = Animation.FindMode.Nearest, bool limit = false, bool backward = false);

Находит индекс ключа по времени в заданном треке. При желании находит его только в том случае, если указано приблизительное/точное время. Если limit равно true, он не возвращает ключи за пределами диапазона анимации. Если backward равно true, направление меняется на противоположное в методах, которые полагаются на однонаправленную обработку. Например, в случае, если find_mode равно Animation.FindMode.Nearest, если в текущей позиции сразу после искомого нет ключа, первый найденный ключ извлекается путем поиска перед позицией, но если backward равно true, первый найденный ключ извлекается после позиции.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
findModeAnimation.FindModeAnimation.FindMode.Nearest
limitboolfalse
backwardboolfalse
Возвращает int
TrackGetInterpolationLoopWrapbool
# TrackGetInterpolationLoopWrap
C#
public bool TrackGetInterpolationLoopWrap(int trackIdx);

Возвращает true, если дорожка в track_idx оборачивает цикл интерполяции. Новые дорожки оборачивают цикл интерполяции по умолчанию.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает bool
TrackGetInterpolationTypeAnimation.InterpolationType
# TrackGetInterpolationType
C#
public Animation.InterpolationType TrackGetInterpolationType(int trackIdx);

Возвращает тип интерполяции данной дорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает Animation.InterpolationType
TrackGetKeyCountint
# TrackGetKeyCount
C#
public int TrackGetKeyCount(int trackIdx);

Возвращает количество ключей в заданной дорожке.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает int
TrackGetKeyTimedouble
# TrackGetKeyTime
C#
public double TrackGetKeyTime(int trackIdx, int keyIdx);

Возвращает время, в котором расположен ключ.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает double
TrackGetKeyTransitionfloat
# TrackGetKeyTransition
C#
public float TrackGetKeyTransition(int trackIdx, int keyIdx);

Возвращает кривую перехода (плавность) для определенной клавиши (см. встроенную математическую функцию @GlobalScope.ease).

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает float
TrackGetKeyValueVariant
# TrackGetKeyValue
C#
public Variant TrackGetKeyValue(int trackIdx, int keyIdx);

Возвращает значение заданной клавиши в заданной дорожке.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
Возвращает Variant
TrackGetPathEntityPath
# TrackGetPath
C#
public EntityPath TrackGetPath(int trackIdx);

Узнает путь дорожки. Дополнительная информация о формате дорожки, см. Animation.TrackSetPath.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает EntityPath
TrackGetTypeAnimation.TrackType
# TrackGetType
C#
public Animation.TrackType TrackGetType(int trackIdx);

Получает тип дорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает Animation.TrackType
TrackInsertKeyint
# TrackInsertKey
C#
public int TrackInsertKey(int trackIdx, double time, Variant key, float transition = 1f);

Вставляет общий ключ в указанный трек. Возвращает индекс ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
keyVariant—
transitionfloat1f
Возвращает int
TrackIsCompressedbool
# TrackIsCompressed
C#
public bool TrackIsCompressed(int trackIdx);

Возвращает true, если трек сжат, false в противном случае. См. также Animation.Compress.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает bool
TrackIsEnabledbool
# TrackIsEnabled
C#
public bool TrackIsEnabled(int trackIdx);

Возвращает true, если трек с индексом track_idx включен.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает bool
TrackIsImportedbool
# TrackIsImported
C#
public bool TrackIsImported(int trackIdx);

Возвращает true, если указанная дорожка импортирована. В противном случае возвращает false.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает bool
TrackMoveDownvoid
# TrackMoveDown
C#
public void TrackMoveDown(int trackIdx);

Перемещает дорожку вниз.

Параметры
ИмяТипПо умолчанию
trackIdxint—
TrackMoveTovoid
# TrackMoveTo
C#
public void TrackMoveTo(int trackIdx, int toIdx);

Изменяет индексную позицию дорожки track_idx на ту, которая определена в to_idx.

Параметры
ИмяТипПо умолчанию
trackIdxint—
toIdxint—
TrackMoveUpvoid
# TrackMoveUp
C#
public void TrackMoveUp(int trackIdx);

Перемещает дорожку вверх.

Параметры
ИмяТипПо умолчанию
trackIdxint—
TrackRemoveKeyvoid
# TrackRemoveKey
C#
public void TrackRemoveKey(int trackIdx, int keyIdx);

Удаляет ключ по индексу из данной дорожки.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
TrackRemoveKeyAtTimevoid
# TrackRemoveKeyAtTime
C#
public void TrackRemoveKeyAtTime(int trackIdx, double time);

Удаляет ключ в time в указанном треке.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timedouble—
TrackSetEnabledvoid
# TrackSetEnabled
C#
public void TrackSetEnabled(int trackIdx, bool enabled);

Включает/отключает данную дорожку. По умолчанию дорожки включены.

Параметры
ИмяТипПо умолчанию
trackIdxint—
enabledbool—
TrackSetImportedvoid
# TrackSetImported
C#
public void TrackSetImported(int trackIdx, bool imported);

Устанавливает, импортирован ли данная дорожка.

Параметры
ИмяТипПо умолчанию
trackIdxint—
importedbool—
TrackSetInterpolationLoopWrapvoid
# TrackSetInterpolationLoopWrap
C#
public void TrackSetInterpolationLoopWrap(int trackIdx, bool interpolation);

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

Параметры
ИмяТипПо умолчанию
trackIdxint—
interpolationbool—
TrackSetInterpolationTypevoid
# TrackSetInterpolationType
C#
public void TrackSetInterpolationType(int trackIdx, Animation.InterpolationType interpolation);

Устанавливает тип интерполяции заданного трека.

Параметры
ИмяТипПо умолчанию
trackIdxint—
interpolationAnimation.InterpolationType—
TrackSetKeyTimevoid
# TrackSetKeyTime
C#
public void TrackSetKeyTime(int trackIdx, int keyIdx, double time);

Устанавливает время существующего ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
timedouble—
TrackSetKeyTransitionvoid
# TrackSetKeyTransition
C#
public void TrackSetKeyTransition(int trackIdx, int keyIdx, float transition);

Устанавливает кривую перехода (плавность) для определенной клавиши (см. встроенную математическую функцию @GlobalScope.ease).

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyIdxint—
transitionfloat—
TrackSetKeyValuevoid
# TrackSetKeyValue
C#
public void TrackSetKeyValue(int trackIdx, int key, Variant value);

Устанавливает значение существующего ключа.

Параметры
ИмяТипПо умолчанию
trackIdxint—
keyint—
valueVariant—
TrackSetPathvoid
# TrackSetPath
C#
public void TrackSetPath(int trackIdx, EntityPath path);

Задаёт цель дорожки относительно RootEntity микшера. Для Value укажите путь и свойство, например Visual:position; для специализированной Position3D/Rotation3D/Scale3D — Entity3D либо путь кости без суффикса свойства. Строковое имя свойства движка может отличаться от C#-имени.

Параметры
ИмяТипПо умолчанию
trackIdxint—
pathEntityPath—
TrackSwapvoid
# TrackSwap
C#
public void TrackSwap(int trackIdx, int withIdx);

Меняет индексную позицию дорожки track_idx на дорожку with_idx.

Параметры
ИмяТипПо умолчанию
trackIdxint—
withIdxint—
ValueTrackGetUpdateModeAnimation.UpdateMode
# ValueTrackGetUpdateMode
C#
public Animation.UpdateMode ValueTrackGetUpdateMode(int trackIdx);

Возвращает режим обновления дорожки значений.

Параметры
ИмяТипПо умолчанию
trackIdxint—
Возвращает Animation.UpdateMode
ValueTrackInterpolate2 перегрузки
# ValueTrackInterpolate · 1/2
C#
public Variant ValueTrackInterpolate(int trackIdx, double timeSec);

Возвращает интерполяционное значение в данный момент времени (в секундах). track_idx должен быть индексом стоимостного трека. Если backward это true, ключи извлекаются в обратном графике, так что основной ключ является ключом после time_sec. Это изменяет результат только для Animation.UpdateMode.Discrete и Animation.InterpolationType.Nearest; другие типы интерполяции дают тот же результат, что и вперед. Примечание: AnimationMixer всегда проходит false для непрерывных треков с воспроизведением API.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
Возвращает Variant
# ValueTrackInterpolate · 2/2
C#
public Variant ValueTrackInterpolate(int trackIdx, double timeSec, bool backward = false);

Возвращает интерполяционное значение в данный момент времени (в секундах). track_idx должен быть индексом стоимостного трека. Если backward это true, ключи извлекаются в обратном графике, так что основной ключ является ключом после time_sec. Это изменяет результат только для Animation.UpdateMode.Discrete и Animation.InterpolationType.Nearest; другие типы интерполяции дают тот же результат, что и вперед. Примечание: AnimationMixer всегда проходит false для непрерывных треков с воспроизведением API.

Параметры
ИмяТипПо умолчанию
trackIdxint—
timeSecdouble—
backwardboolfalse
Возвращает Variant
ValueTrackSetUpdateModevoid
# ValueTrackSetUpdateMode
C#
public void ValueTrackSetUpdateMode(int trackIdx, Animation.UpdateMode mode);

Устанавливает режим обновления дорожки значений.

Параметры
ИмяТипПо умолчанию
trackIdxint—
modeAnimation.UpdateMode—

Animation.FindMode

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

Находит только ключ с приблизительным временем.

Exact = 2

Находит только ключ с соответствующим временем.

Nearest = 0

Находит ближайший временной ключ.

Animation.InterpolationType

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

Кубическая интерполяция. Выглядит более гладко, чем линейная интерполяция, но интерполяция более затратна. Придерживайтесь Animation.InterpolationType.Linear для сложных 3D-анимаций, импортированных из внешнего программного обеспечения, даже если это требует использования более высокой частоты кадров анимации взамен.

CubicAngle = 4

Кубическая интерполяция с вращением по кратчайшему пути. Примечание: Значение результата всегда нормализовано и может не совпадать со значением ключа.

Интерпол_MAKIMA

Linear = 1

Линейная интерполяция.

LinearAngle = 3

Линейная интерполяция с вращением по кратчайшему пути. Примечание: Значение результата всегда нормализовано и может не совпадать со значением ключа.

Makima = 5

Модифицированная интерполяция Акимы. Animation.InterpolationType.Cubic, это производит гладкую кривую через ключи, но она меньше перегибает и остается плоской, где три или более смежных ключей имеют одинаковое значение. Она использует два ключа с каждой стороны текущего сегмента, так что она немного дороже кубической интерполяции.

MakimaAngle = 6

Модифицирована интерполяция Акимы с самой короткой вращением пути. Примечание: Значение результата всегда нормализуется и может не соответствовать ключевому значению.

Nearest = 0

Без интерполяции (ближайшее значение).

Animation.LoopModeEnum

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

В обоих концах анимации она будет повторяться без изменения направления воспроизведения.

None = 0

В обоих случаях воспроизведение анимации остановится.

Pingpong = 2

Повторяет воспроизведение и обратное воспроизведение в обоих концах анимации.

Animation.LoopedFlag

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

Этот флаг указывает на то, что анимация достигла конца и сразу после обработки цикла.

None = 0

Этот флаг указывает, что анимация выполняется без зацикливания.

Start = 2

Этот флаг указывает на то, что анимация достигла начала анимации и сразу после обработки цикла.

Animation.TrackType

ЗначениеОписание
Animation = 8

Animation трассы играют анимацию в других AnimationPlayer узлы.

Интерпольская деятельность

Audio = 7

Аудиодорожки используются для воспроизведения аудиопотока с любым типом AudioStreamPlayer. Поток можно обрезать и предварительно просмотреть в анимации.

Bezier = 6

Дорожки Безье используются для интерполяции значения с использованием пользовательских кривых. Их также можно использовать для анимации подсвойств векторов и цветов (например, альфа-значение Color).

BlendShape = 4

Орбита смешанной формы.

Method = 5

Метод отслеживает вызовы функций с заданными аргументами для каждого ключа.

Position3D = 1

Трехмерная дорожка положения (значения хранятся в Vector3).

Rotation3D = 2

Трехмерная дорожка вращения (значения хранятся в Quaternions).

Scale3D = 3

Дорожка 3D-масштаба (значения хранятся в Vector3).

Value = 0

Значение отслеживает заданные значения в свойствах узла, но только те, которые можно интерполировать. Для 3D-позиции/вращения/масштаба рекомендуется использовать выделенных дорожек треков Animation.TrackType.Position3D, Animation.TrackType.Rotation3D и Animation.TrackType.Scale3D вместо Animation.TrackType.Value по соображениям производительности.

Animation.UpdateMode

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

То же, что и Animation.UpdateMode.Continuous, но работает как флаг для захвата значения текущего объекта и выполнения интерполяции в некоторых методах. См. также AnimationMixer.Capture, AnimationPlayer.PlaybackAutoCapture и AnimationPlayer.PlayWithCapture.

Continuous = 0

Обновляйте между ключевыми кадрами и сохраняйте значение.

Discrete = 1

Обновление на ключевых кадрах.

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

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

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

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