Animation
Ресурс с дорожками, ключами, длиной и режимом цикла.
Animation хранит данные клипа. Для воспроизведения добавьте его в AnimationLibrary и назначьте библиотеку AnimationPlayer или используйте её через AnimationTree. Один ресурс не является уже выполняемой анимацией.
Тип дорожки определяет формат ключей и цель. У Value путь содержит свойство; у специализированной 3D-дорожки он указывает Entity3D или кость. Method-дорожки требуют отдельного учёта перемотки и повторных событий.
Клипы и ключи · Дорожки и события
Объявления сверены с C# SDK 1.0.0. Раскройте имя, чтобы увидеть сигнатуры и описание.
Конструкторы1
AnimationКонструктор
public Animation();Свойства4
CaptureIncludedСвойство
public bool CaptureIncluded { get; }Возвращает true, если трек захвата включен. Это кэшированное значение только для чтения для производительности.
LengthСвойство
public double Length { get; set; }Общая длина анимации (в секундах). Замечание: Длина не ограничена последним ключом, так как он может находиться до или после конца для обеспечения корректной интерполяции и зацикливания.
LoopModeСвойство
public Animation.LoopModeEnum LoopMode { get; set; }Определяет поведение обоих концов временной шкалы анимации во время её воспроизведения. Это указывает, следует ли перезапускать анимацию и как это сделать, а также используется для корректной интерполяции циклов анимации.
StepСвойство
public float Step { get; set; }Значение шага анимации.
Методы91
AddMarkervoid
public void AddMarker(StringName name, double time);Добавляет к этому маркер Animation.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
time | double | — |
AddTrackint
public int AddTrack(Animation.TrackType type, int atPosition = -1);Добавить дорожку Animation.
| Имя | Тип | По умолчанию |
|---|---|---|
type | Animation.TrackType | — |
atPosition | int | -1 |
intAnimationTrackGetKeyAnimationStringName
public StringName AnimationTrackGetKeyAnimation(int trackIdx, int keyIdx);Возвращает имя анимации в ключе, идентифицированном key_idx. . . . . track_idx должен быть индексом Animation Дорожка.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
StringNameAnimationTrackInsertKeyint
public int AnimationTrackInsertKey(int trackIdx, double time, StringName animation);Вставить ключ со значением animation на данном time (в секундах) track_idx должен быть индексом Animation Дорожка.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
animation | StringName | — |
intAnimationTrackSetKeyAnimationvoid
public void AnimationTrackSetKeyAnimation(int trackIdx, int keyIdx, StringName animation);Устанавливает ключ, идентифицированный key_idx стоимость animation. . . . . track_idx должен быть индексом Animation Дорожка.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
animation | StringName | — |
AudioTrackGetKeyEndOffsetfloat
public float AudioTrackGetKeyEndOffset(int trackIdx, int keyIdx);Возвращает конечное смещение ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки.
Конечное смещение — это количество секунд, обрезанных в конце аудиопотока.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
floatAudioTrackGetKeyStartOffsetfloat
public float AudioTrackGetKeyStartOffset(int trackIdx, int keyIdx);Возвращает начальное смещение ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки.
Начальное смещение — это количество секунд, отрезанных в начале аудиопотока.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
floatAudioTrackGetKeyStreamResource
public Resource AudioTrackGetKeyStream(int trackIdx, int keyIdx);Возвращает аудиопоток ключа, идентифицированного key_idx. track_idx должен быть индексом аудиодорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
ResourceAudioTrackInsertKeyint
public int AudioTrackInsertKey(int trackIdx, double time, Resource stream, float startOffset = 0f, float endOffset = 0f);Вставляет ключ аудиодорожки в указанное time в секундах. track_idx должен быть индексом аудиодорожки.
stream — ресурс AudioStream для воспроизведения. start_offset — количество секунд, обрезанных в начале аудиопотока, а end_offset — в конце.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
stream | Resource | — |
startOffset | float | 0f |
endOffset | float | 0f |
intAudioTrackIsUseBlendbool
public bool AudioTrackIsUseBlend(int trackIdx);Возвращает true, если трек в track_idx будет смешан с другими анимациями.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
boolAudioTrackSetKeyEndOffsetvoid
public void AudioTrackSetKeyEndOffset(int trackIdx, int keyIdx, float offset);Устанавливает конечное смещение ключа, идентифицированного key_idx, на значение offset. track_idx должен быть индексом аудиодорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
offset | float | — |
AudioTrackSetKeyStartOffsetvoid
public void AudioTrackSetKeyStartOffset(int trackIdx, int keyIdx, float offset);Устанавливает начальное смещение ключа, идентифицированного key_idx, на значение offset. track_idx должен быть индексом аудиодорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
offset | float | — |
AudioTrackSetKeyStreamvoid
public void AudioTrackSetKeyStream(int trackIdx, int keyIdx, Resource stream);Устанавливает поток ключа, идентифицированного key_idx, на значение stream. track_idx должен быть индексом аудиодорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
stream | Resource | — |
AudioTrackSetUseBlendvoid
public void AudioTrackSetUseBlend(int trackIdx, bool enable);Устанавливает, будет ли трек смешиваться с другими анимациями. Если true, громкость воспроизведения звука меняется в зависимости от значения смешивания.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
enable | bool | — |
BezierTrackGetKeyInHandleVector2
public Vector2 BezierTrackGetKeyInHandle(int trackIdx, int keyIdx);Возвращает дескриптор ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
Vector2BezierTrackGetKeyOutHandleVector2
public Vector2 BezierTrackGetKeyOutHandle(int trackIdx, int keyIdx);Возвращает выходной дескриптор ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
Vector2BezierTrackGetKeyValuefloat
public float BezierTrackGetKeyValue(int trackIdx, int keyIdx);Возвращает значение ключа, идентифицированного key_idx. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
floatBezierTrackInsertKeyint
public int BezierTrackInsertKey(int trackIdx, double time, float value, Vector2? inHandle = default, Vector2? outHandle = default);Вставляет ключ дорожки Безье в указанное time в секундах. track_idx должен быть индексом дорожки Безье.
in_handle — вес левой стороны добавленной точки кривой Безье, out_handle — вес правой стороны, а value — фактическое значение в этой точке.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
value | float | — |
inHandle | Vector2? | default |
outHandle | Vector2? | default |
inHandleЕсли параметр не имеет значения, то значение по умолчанию: new Vector2(0.0f, 0.0f).
outHandleЕсли параметр не имеет значения, то значение по умолчанию: new Vector2(0.0f, 0.0f).
intBezierTrackInterpolatefloat
public float BezierTrackInterpolate(int trackIdx, double time);Возвращает интерполированное значение в указанном time (в секундах). track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
floatBezierTrackSetKeyInHandlevoid
public void BezierTrackSetKeyInHandle(int trackIdx, int keyIdx, Vector2 inHandle, float balancedValueTimeRatio = 1f);Устанавливает входной дескриптор ключа, идентифицированного key_idx, на значение in_handle. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
inHandle | Vector2 | — |
balancedValueTimeRatio | float | 1f |
BezierTrackSetKeyOutHandlevoid
public void BezierTrackSetKeyOutHandle(int trackIdx, int keyIdx, Vector2 outHandle, float balancedValueTimeRatio = 1f);Устанавливает выходной дескриптор ключа, идентифицированного key_idx, на значение out_handle. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
outHandle | Vector2 | — |
balancedValueTimeRatio | float | 1f |
BezierTrackSetKeyValuevoid
public void BezierTrackSetKeyValue(int trackIdx, int keyIdx, float value);Устанавливает значение ключа, идентифицированного key_idx, на заданное значение. track_idx должен быть индексом дорожки Безье.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
value | float | — |
BlendShapeTrackInsertKeyint
public int BlendShapeTrackInsertKey(int trackIdx, double time, float amount);Вставляет ключ в заданную дорожку форма смеси. Возвращает индекс ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
amount | float | — |
intBlendShapeTrackInterpolate2 перегрузки
public float BlendShapeTrackInterpolate(int trackIdx, double timeSec);Возвращает интерполированную форму смеси в данный момент времени (в секундах). track_idx должен быть индексом смешанной формы.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
floatpublic float BlendShapeTrackInterpolate(int trackIdx, double timeSec, bool backward = false);Возвращает интерполированную форму смеси в данный момент времени (в секундах). track_idx должен быть индексом смешанной формы.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
backward | bool | false |
floatClearvoid
public void Clear();Очистить анимацию (удалить все дорожки и сбросить всё).
Compressvoid
public void Compress(uint pageSize = 8192, uint fps = 120, float splitTolerance = 4f);Сжать анимацию и все ее дорожки на месте. Это заставит Animation.TrackIsCompressed возвращать true после вызова этой Animation. Сжатые дорожки требуют меньше памяти для воспроизведения и предназначены для использования в сложных 3D-анимациях (например, катсценах), импортированных из внешнего 3D-программного обеспечения. Сжатие происходит с потерями, но разница обычно не заметна в реальных условиях.
Примечание: Сжатые дорожки имеют различные ограничения (например, невозможность редактирования в редакторе), поэтому используйте сжатые анимации только в том случае, если они вам действительно нужны.
| Имя | Тип | По умолчанию |
|---|---|---|
pageSize | uint | 8192 |
fps | uint | 120 |
splitTolerance | float | 4f |
CopyTrackvoid
public void CopyTrack(int trackIdx, Animation toAnimation);Добавляет новый трек в to_animation, который является копией указанного трека из этой анимации.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
toAnimation | Animation | — |
FindTrackint
public int FindTrack(EntityPath path, Animation.TrackType type);Возвращает индекс указанной дорожки. Если дорожка не найдена, возвращает -1.
| Имя | Тип | По умолчанию |
|---|---|---|
path | EntityPath | — |
type | Animation.TrackType | — |
intGetLengthdouble
public double GetLength();doubleGetLoopModeAnimation.LoopModeEnum
public Animation.LoopModeEnum GetLoopMode();Animation.LoopModeEnumGetMarkerAtTimeStringName
public StringName GetMarkerAtTime(double time);Возвращает имя маркера, расположенного в указанное время.
| Имя | Тип | По умолчанию |
|---|---|---|
time | double | — |
StringNameGetMarkerColorColor
public Color GetMarkerColor(StringName name);Возвращает цвет указанного маркера.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
ColorGetMarkerNamesstring[]
public string[] GetMarkerNames();Возвращает каждый маркер в этом Animation, расставленный по времени.
string[]GetMarkerTimedouble
public double GetMarkerTime(StringName name);Возвращает время указанного маркера.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
doubleGetNextMarkerStringName
public StringName GetNextMarker(double time);Возвращает ближайший маркер, который следует после указанного времени. Если такого маркера не существует, возвращается пустая строка.
| Имя | Тип | По умолчанию |
|---|---|---|
time | double | — |
StringNameGetPrevMarkerStringName
public StringName GetPrevMarker(double time);Возвращает ближайший маркер, который предшествует указанному времени. Если такого маркера не существует, возвращается пустая строка.
| Имя | Тип | По умолчанию |
|---|---|---|
time | double | — |
StringNameGetStepfloat
public float GetStep();floatGetTrackCountint
public int GetTrackCount();Возвращает количество дорожек в анимации.
intHasMarkerbool
public bool HasMarker(StringName name);Returns (Возврат) true Если это Animation содержит маркер с указанным именем.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
boolIsCaptureIncludedbool
public bool IsCaptureIncluded();boolMethodTrackGetNameStringName
public StringName MethodTrackGetName(int trackIdx, int keyIdx);Возвращает имя метода для дорожки методов.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
StringNameMethodTrackGetParamsReckfell.Collections.Array
public Reckfell.Collections.Array MethodTrackGetParams(int trackIdx, int keyIdx);Возвращает значения аргументов, которые необходимо вызвать в дорожке метода для заданного ключа в заданной дорожке.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
Reckfell.Collections.ArrayOptimizevoid
public void Optimize(float allowedVelocityErr = 0.01f, float allowedAngularErr = 0.01f, int precision = 3);Оптимизируйте анимацию и все ее дорожки на месте. Это сохранит только столько ключей, сколько необходимо для удержания анимации в указанных границах.
| Имя | Тип | По умолчанию |
|---|---|---|
allowedVelocityErr | float | 0.01f |
allowedAngularErr | float | 0.01f |
precision | int | 3 |
PositionTrackInsertKeyint
public int PositionTrackInsertKey(int trackIdx, double time, Vector3 position);Вставляет ключ в заданную 3D-трек позиции. Возвращает индекс ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
position | Vector3 | — |
intPositionTrackInterpolate2 перегрузки
public Vector3 PositionTrackInterpolate(int trackIdx, double timeSec);Возвращает интерполяционное значение положения в данный момент времени (в секундах). track_idx должен быть индексом трехмерной траектории положения.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
Vector3public Vector3 PositionTrackInterpolate(int trackIdx, double timeSec, bool backward = false);Возвращает интерполяционное значение положения в данный момент времени (в секундах). track_idx должен быть индексом трехмерной траектории положения.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
backward | bool | false |
Vector3RemoveMarkervoid
public void RemoveMarker(StringName name);Удалить отметку с указанным именем из этого Animation.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
RemoveTrackvoid
public void RemoveTrack(int trackIdx);Удаляет дорожку, указав индекс дорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
RotationTrackInsertKeyint
public int RotationTrackInsertKey(int trackIdx, double time, Quaternion rotation);Вставляет ключ в заданную 3D-дорожку вращения. Возвращает индекс ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
rotation | Quaternion | — |
intRotationTrackInterpolate2 перегрузки
public Quaternion RotationTrackInterpolate(int trackIdx, double timeSec);Возвращает интерполяционное значение вращения в данный момент времени (в секундах). track_idx должен быть индексом трехмерного вращения.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
Quaternionpublic Quaternion RotationTrackInterpolate(int trackIdx, double timeSec, bool backward = false);Возвращает интерполяционное значение вращения в данный момент времени (в секундах). track_idx должен быть индексом трехмерного вращения.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
backward | bool | false |
QuaternionScaleTrackInsertKeyint
public int ScaleTrackInsertKey(int trackIdx, double time, Vector3 scale);Вставляет ключ в заданную 3D-шкалу трека. Возвращает индекс ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
scale | Vector3 | — |
intScaleTrackInterpolate2 перегрузки
public Vector3 ScaleTrackInterpolate(int trackIdx, double timeSec);Возвращает значение интерполяции шкалы в данный момент времени (в секундах). track_idx должен быть индексом трехмерной шкалы.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
Vector3public Vector3 ScaleTrackInterpolate(int trackIdx, double timeSec, bool backward = false);Возвращает значение интерполяции шкалы в данный момент времени (в секундах). track_idx должен быть индексом трехмерной шкалы.
Примечание: Если backward это true, ключи извлечены в обратном графике. Animation.ValueTrackInterpolate.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
backward | bool | false |
Vector3SetLengthvoid
public void SetLength(double timeSec);| Имя | Тип | По умолчанию |
|---|---|---|
timeSec | double | — |
SetLoopModevoid
public void SetLoopMode(Animation.LoopModeEnum loopMode);| Имя | Тип | По умолчанию |
|---|---|---|
loopMode | Animation.LoopModeEnum | — |
SetMarkerColorvoid
public void SetMarkerColor(StringName name, Color color);Устанавливает цвет указанного маркера.
| Имя | Тип | По умолчанию |
|---|---|---|
name | StringName | — |
color | Color | — |
SetStepvoid
public void SetStep(float sizeSec);| Имя | Тип | По умолчанию |
|---|---|---|
sizeSec | float | — |
TrackFindKey2 перегрузки
public int TrackFindKey(int trackIdx, double time, Animation.FindMode findMode);Находит индекс ключа по времени в заданном треке. При желании находит его только в том случае, если указано приблизительное/точное время.
Если limit равно true, он не возвращает ключи за пределами диапазона анимации.
Если backward равно true, направление меняется на противоположное в методах, которые полагаются на однонаправленную обработку.
Например, в случае, если find_mode равно Animation.FindMode.Nearest, если в текущей позиции сразу после искомого нет ключа, первый найденный ключ извлекается путем поиска перед позицией, но если backward равно true, первый найденный ключ извлекается после позиции.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
findMode | Animation.FindMode | — |
intpublic 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, первый найденный ключ извлекается после позиции.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
findMode | Animation.FindMode | Animation.FindMode.Nearest |
limit | bool | false |
backward | bool | false |
intTrackGetInterpolationLoopWrapbool
public bool TrackGetInterpolationLoopWrap(int trackIdx);Возвращает true, если дорожка в track_idx оборачивает цикл интерполяции. Новые дорожки оборачивают цикл интерполяции по умолчанию.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
boolTrackGetInterpolationTypeAnimation.InterpolationType
public Animation.InterpolationType TrackGetInterpolationType(int trackIdx);Возвращает тип интерполяции данной дорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
Animation.InterpolationTypeTrackGetKeyCountint
public int TrackGetKeyCount(int trackIdx);Возвращает количество ключей в заданной дорожке.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
intTrackGetKeyTimedouble
public double TrackGetKeyTime(int trackIdx, int keyIdx);Возвращает время, в котором расположен ключ.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
doubleTrackGetKeyTransitionfloat
public float TrackGetKeyTransition(int trackIdx, int keyIdx);Возвращает кривую перехода (плавность) для определенной клавиши (см. встроенную математическую функцию @GlobalScope.ease).
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
floatTrackGetKeyValueVariant
public Variant TrackGetKeyValue(int trackIdx, int keyIdx);Возвращает значение заданной клавиши в заданной дорожке.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
VariantTrackGetPathEntityPath
public EntityPath TrackGetPath(int trackIdx);Узнает путь дорожки. Дополнительная информация о формате дорожки, см. Animation.TrackSetPath.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
EntityPathTrackGetTypeAnimation.TrackType
public Animation.TrackType TrackGetType(int trackIdx);Получает тип дорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
Animation.TrackTypeTrackInsertKeyint
public int TrackInsertKey(int trackIdx, double time, Variant key, float transition = 1f);Вставляет общий ключ в указанный трек. Возвращает индекс ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
key | Variant | — |
transition | float | 1f |
intTrackIsCompressedbool
public bool TrackIsCompressed(int trackIdx);Возвращает true, если трек сжат, false в противном случае. См. также Animation.Compress.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
boolTrackIsEnabledbool
public bool TrackIsEnabled(int trackIdx);Возвращает true, если трек с индексом track_idx включен.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
boolTrackIsImportedbool
public bool TrackIsImported(int trackIdx);Возвращает true, если указанная дорожка импортирована. В противном случае возвращает false.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
boolTrackMoveDownvoid
public void TrackMoveDown(int trackIdx);Перемещает дорожку вниз.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
TrackMoveTovoid
public void TrackMoveTo(int trackIdx, int toIdx);Изменяет индексную позицию дорожки track_idx на ту, которая определена в to_idx.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
toIdx | int | — |
TrackMoveUpvoid
public void TrackMoveUp(int trackIdx);Перемещает дорожку вверх.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
TrackRemoveKeyvoid
public void TrackRemoveKey(int trackIdx, int keyIdx);Удаляет ключ по индексу из данной дорожки.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
TrackRemoveKeyAtTimevoid
public void TrackRemoveKeyAtTime(int trackIdx, double time);Удаляет ключ в time в указанном треке.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
time | double | — |
TrackSetEnabledvoid
public void TrackSetEnabled(int trackIdx, bool enabled);Включает/отключает данную дорожку. По умолчанию дорожки включены.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
enabled | bool | — |
TrackSetImportedvoid
public void TrackSetImported(int trackIdx, bool imported);Устанавливает, импортирован ли данная дорожка.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
imported | bool | — |
TrackSetInterpolationLoopWrapvoid
public void TrackSetInterpolationLoopWrap(int trackIdx, bool interpolation);Если true, дорожка с track_idx завершает цикл интерполяции.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
interpolation | bool | — |
TrackSetInterpolationTypevoid
public void TrackSetInterpolationType(int trackIdx, Animation.InterpolationType interpolation);Устанавливает тип интерполяции заданного трека.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
interpolation | Animation.InterpolationType | — |
TrackSetKeyTimevoid
public void TrackSetKeyTime(int trackIdx, int keyIdx, double time);Устанавливает время существующего ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
time | double | — |
TrackSetKeyTransitionvoid
public void TrackSetKeyTransition(int trackIdx, int keyIdx, float transition);Устанавливает кривую перехода (плавность) для определенной клавиши (см. встроенную математическую функцию @GlobalScope.ease).
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
keyIdx | int | — |
transition | float | — |
TrackSetKeyValuevoid
public void TrackSetKeyValue(int trackIdx, int key, Variant value);Устанавливает значение существующего ключа.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
key | int | — |
value | Variant | — |
TrackSetPathvoid
public void TrackSetPath(int trackIdx, EntityPath path);Задаёт цель дорожки относительно RootEntity микшера. Для Value укажите путь и свойство, например Visual:position; для специализированной Position3D/Rotation3D/Scale3D — Entity3D либо путь кости без суффикса свойства. Строковое имя свойства движка может отличаться от C#-имени.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
path | EntityPath | — |
TrackSwapvoid
public void TrackSwap(int trackIdx, int withIdx);Меняет индексную позицию дорожки track_idx на дорожку with_idx.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
withIdx | int | — |
ValueTrackGetUpdateModeAnimation.UpdateMode
public Animation.UpdateMode ValueTrackGetUpdateMode(int trackIdx);Возвращает режим обновления дорожки значений.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
Animation.UpdateModeValueTrackInterpolate2 перегрузки
public Variant ValueTrackInterpolate(int trackIdx, double timeSec);Возвращает интерполяционное значение в данный момент времени (в секундах). track_idx должен быть индексом стоимостного трека.
Если backward это true, ключи извлекаются в обратном графике, так что основной ключ является ключом после time_sec. Это изменяет результат только для Animation.UpdateMode.Discrete и Animation.InterpolationType.Nearest; другие типы интерполяции дают тот же результат, что и вперед.
Примечание: AnimationMixer всегда проходит false для непрерывных треков с воспроизведением API.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
Variantpublic Variant ValueTrackInterpolate(int trackIdx, double timeSec, bool backward = false);Возвращает интерполяционное значение в данный момент времени (в секундах). track_idx должен быть индексом стоимостного трека.
Если backward это true, ключи извлекаются в обратном графике, так что основной ключ является ключом после time_sec. Это изменяет результат только для Animation.UpdateMode.Discrete и Animation.InterpolationType.Nearest; другие типы интерполяции дают тот же результат, что и вперед.
Примечание: AnimationMixer всегда проходит false для непрерывных треков с воспроизведением API.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
timeSec | double | — |
backward | bool | false |
VariantValueTrackSetUpdateModevoid
public void ValueTrackSetUpdateMode(int trackIdx, Animation.UpdateMode mode);Устанавливает режим обновления дорожки значений.
| Имя | Тип | По умолчанию |
|---|---|---|
trackIdx | int | — |
mode | Animation.UpdateMode | — |
Animation.FindMode
| Значение | Описание |
|---|---|
Approx = 1 | Находит только ключ с приблизительным временем. |
Exact = 2 | Находит только ключ с соответствующим временем. |
Nearest = 0 | Находит ближайший временной ключ. |
Animation.InterpolationType
| Значение | Описание |
|---|---|
Cubic = 2 | Кубическая интерполяция. Выглядит более гладко, чем линейная интерполяция, но интерполяция более затратна. Придерживайтесь |
CubicAngle = 4 | Кубическая интерполяция с вращением по кратчайшему пути. Примечание: Значение результата всегда нормализовано и может не совпадать со значением ключа. Интерпол_MAKIMA |
Linear = 1 | Линейная интерполяция. |
LinearAngle = 3 | Линейная интерполяция с вращением по кратчайшему пути. Примечание: Значение результата всегда нормализовано и может не совпадать со значением ключа. |
Makima = 5 | Модифицированная интерполяция Акимы. |
MakimaAngle = 6 | Модифицирована интерполяция Акимы с самой короткой вращением пути. Примечание: Значение результата всегда нормализуется и может не соответствовать ключевому значению. |
Nearest = 0 | Без интерполяции (ближайшее значение). |
Animation.LoopModeEnum
| Значение | Описание |
|---|---|
Linear = 1 | В обоих концах анимации она будет повторяться без изменения направления воспроизведения. |
None = 0 | В обоих случаях воспроизведение анимации остановится. |
Pingpong = 2 | Повторяет воспроизведение и обратное воспроизведение в обоих концах анимации. |
Animation.LoopedFlag
Animation.TrackType
| Значение | Описание |
|---|---|
Animation = 8 | Animation трассы играют анимацию в других Интерпольская деятельность |
Audio = 7 | Аудиодорожки используются для воспроизведения аудиопотока с любым типом |
Bezier = 6 | Дорожки Безье используются для интерполяции значения с использованием пользовательских кривых. Их также можно использовать для анимации подсвойств векторов и цветов (например, альфа-значение |
BlendShape = 4 | Орбита смешанной формы. |
Method = 5 | Метод отслеживает вызовы функций с заданными аргументами для каждого ключа. |
Position3D = 1 | Трехмерная дорожка положения (значения хранятся в |
Rotation3D = 2 | Трехмерная дорожка вращения (значения хранятся в |
Scale3D = 3 | Дорожка 3D-масштаба (значения хранятся в |
Value = 0 | Значение отслеживает заданные значения в свойствах узла, но только те, которые можно интерполировать. Для 3D-позиции/вращения/масштаба рекомендуется использовать выделенных дорожек треков |
Animation.UpdateMode
| Значение | Описание |
|---|---|
Capture = 2 | То же, что и |
Continuous = 0 | Обновляйте между ключевыми кадрами и сохраняйте значение. |
Discrete = 1 | Обновление на ключевых кадрах. |