reckfellENGINE

Bone2D

Кость в иерархии скелета 2D.

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

Bone2D задаёт локальную трансформацию звена и сохранённую исходную позу Rest. Родителем должна быть другая Bone2D или Skeleton2D: промежуточная Entity2D разрывает цепь регистрации костей.

Дочерние изображения могут двигаться как жёсткие части. Для деформации одного Polygon2D нужны отдельные веса вершин и связь со скелетом. SetLength() сам по себе не растягивает изображение или полигон.

Практический пример.

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

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

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

Свойства1

RestСвойство
# Rest
C#
public Transform2D Rest { get; set; }

Сохранённая трансформация кости относительно родительской кости или Skeleton2D. Это не мировая поза. Присваивание меняет исходную позу для деформации; для переноса текущей кости в неё вызовите ApplyRest().

Методы11

ApplyRestvoid
# ApplyRest
C#
public void ApplyRest();

Копирует Rest в локальную Transform только этой кости. Не обходит дочерние кости и не отключает анимацию или IK; другой источник позы может перезаписать результат.

GetAutocalculateLengthAndAnglebool
# GetAutocalculateLengthAndAngle
C#
public bool GetAutocalculateLengthAndAngle();

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

Возвращает bool
GetBoneAnglefloat
# GetBoneAngle
C#
public float GetBoneAngle();

Возвращает угол кости в Bone2D. Примечание: Это отличается от поворота Bone2D. Угол кости — это поворот кости, показанный гизмо (gizmo), на который не влияет Entity2D.Transform Bone2D.

Возвращает float
GetIndexInSkeletonint
# GetIndexInSkeleton
C#
public int GetIndexInSkeleton();

Возвращает индекс в текущем скелете, предварительно обновляя подготовку костей. Без зарегистрированного Skeleton2D сообщает ошибку и возвращает -1. Индекс может измениться после перестройки иерархии.

Возвращает int
GetLengthfloat
# GetLength
C#
public float GetLength();

Возвращает длину кости в узле Bone2D.

Возвращает float
GetRestTransform2D
# GetRest
C#
public Transform2D GetRest();
Возвращает Transform2D
GetSkeletonRestTransform2D
# GetSkeletonRest
C#
public Transform2D GetSkeletonRest();

Возвращает исходную трансформацию в координатах скелета: произведение локальных Rest по цепи родительских костей. Это не GlobalTransform текущей анимированной позы.

Возвращает Transform2D
SetAutocalculateLengthAndAnglevoid
# SetAutocalculateLengthAndAngle
C#
public void SetAutocalculateLengthAndAngle(bool autoCalculate);

Если установлено значение true, узел Bone2D попытается автоматически рассчитать угол и длину кости, используя первый дочерний узел Bone2D, если таковой существует. Если таковых нет, Bone2D не сможет автоматически рассчитать эти значения и выведет предупреждение.

Параметры
ИмяТипПо умолчанию
autoCalculatebool—
SetBoneAnglevoid
# SetBoneAngle
C#
public void SetBoneAngle(float angle);

Устанавливает угол кости для Bone2D. Обычно устанавливается на поворот от Bone2D к дочернему узлу Bone2D. Примечание: Это отличается от поворота Bone2D. Угол кости — это поворот кости, показанный гизмо (gizmo), на который не влияет Entity2D.Transform Bone2D.

Параметры
ИмяТипПо умолчанию
anglefloat—
SetLengthvoid
# SetLength
C#
public void SetLength(float length);

Задаёт длину кости для её геометрического представления и решателей. Для ручного задания отключите автоматическое вычисление через SetAutocalculateLengthAndAngle(false). Длина сама по себе не меняет вершины Polygon2D и не растягивает дочерний спрайт.

Параметры
ИмяТипПо умолчанию
lengthfloat—
SetRestvoid
# SetRest
C#
public void SetRest(Transform2D rest);
Параметры
ИмяТипПо умолчанию
restTransform2D—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

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

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

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