reckfellENGINE

SkeletonModification2DTwoBoneIK

Модификация, которая вращает две кости, используя закон косинусов, чтобы достичь цели.

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

Модификация, которая вращает две кости, используя закон косинусов, чтобы достичь цели.

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

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

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

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

Свойства4

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

Если true, кости в модификации будут изгибаться наружу, а не внутрь при сокращении. Если false, кости будут изгибаться внутрь при сокращении.

TargetEntitypathСвойство
# TargetEntitypath
C#
public EntityPath TargetEntitypath { get; set; }

EntityPath к узлу, который является целью модификации TwoBoneIK. Этот узел будет использоваться модификацией при изгибе узлов Bone2D.

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

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

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

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

Методы16

GetFlipBendDirectionbool
# GetFlipBendDirection
C#
public bool GetFlipBendDirection();
Возвращает bool
GetJointOneBone2DEntityEntityPath
# GetJointOneBone2DEntity
C#
public EntityPath GetJointOneBone2DEntity();

Возвращает узел Bone2D, который используется в качестве первой кости в модификации TwoBoneIK.

Возвращает EntityPath
GetJointOneBoneIdxint
# GetJointOneBoneIdx
C#
public int GetJointOneBoneIdx();

Возвращает индекс узла Bone2D, который используется в качестве первой кости в модификации TwoBoneIK.

Возвращает int
GetJointTwoBone2DEntityEntityPath
# GetJointTwoBone2DEntity
C#
public EntityPath GetJointTwoBone2DEntity();

Возвращает узел Bone2D, который используется как вторая кость в модификации TwoBoneIK.

Возвращает EntityPath
GetJointTwoBoneIdxint
# GetJointTwoBoneIdx
C#
public int GetJointTwoBoneIdx();

Возвращает индекс узла Bone2D, который используется в качестве второй кости в модификации TwoBoneIK.

Возвращает int
GetTargetEntityEntityPath
# GetTargetEntity
C#
public EntityPath GetTargetEntity();
Возвращает EntityPath
GetTargetMaximumDistancefloat
# GetTargetMaximumDistance
C#
public float GetTargetMaximumDistance();
Возвращает float
GetTargetMinimumDistancefloat
# GetTargetMinimumDistance
C#
public float GetTargetMinimumDistance();
Возвращает float
SetFlipBendDirectionvoid
# SetFlipBendDirection
C#
public void SetFlipBendDirection(bool flipDirection);
Параметры
ИмяТипПо умолчанию
flipDirectionbool—
SetJointOneBone2DEntityvoid
# SetJointOneBone2DEntity
C#
public void SetJointOneBone2DEntity(EntityPath bone2DEntity);

Устанавливает узел Bone2D, который используется в качестве первой кости в модификации TwoBoneIK.

Параметры
ИмяТипПо умолчанию
bone2DEntityEntityPath—
SetJointOneBoneIdxvoid
# SetJointOneBoneIdx
C#
public void SetJointOneBoneIdx(int boneIdx);

Устанавливает индекс узла Bone2D, который используется в качестве первой кости в модификации TwoBoneIK.

Параметры
ИмяТипПо умолчанию
boneIdxint—
SetJointTwoBone2DEntityvoid
# SetJointTwoBone2DEntity
C#
public void SetJointTwoBone2DEntity(EntityPath bone2DEntity);

Устанавливает узел Bone2D, который используется в качестве второй кости в модификации TwoBoneIK.

Параметры
ИмяТипПо умолчанию
bone2DEntityEntityPath—
SetJointTwoBoneIdxvoid
# SetJointTwoBoneIdx
C#
public void SetJointTwoBoneIdx(int boneIdx);

Устанавливает индекс узла Bone2D, который используется в качестве второй кости в модификации TwoBoneIK.

Параметры
ИмяТипПо умолчанию
boneIdxint—
SetTargetEntityvoid
# SetTargetEntity
C#
public void SetTargetEntity(EntityPath targetEntitypath);
Параметры
ИмяТипПо умолчанию
targetEntitypathEntityPath—
SetTargetMaximumDistancevoid
# SetTargetMaximumDistance
C#
public void SetTargetMaximumDistance(float maximumDistance);
Параметры
ИмяТипПо умолчанию
maximumDistancefloat—
SetTargetMinimumDistancevoid
# SetTargetMinimumDistance
C#
public void SetTargetMinimumDistance(float minimumDistance);
Параметры
ИмяТипПо умолчанию
minimumDistancefloat—
Документация Reckfell EngineНаверх ↑
БЫСТРЫЙ ПЕРЕХОДНачало работыEntity и иерархияC# & .NET 10Сцены и префабы
Руководства и полный API Reckfell K
reckfellENGINE
RECKFELL ACCOUNT

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

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

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