SkeletonModification2DJiggle

Экспериментальное: This class may be changed or removed in future versions.

Наследует: SkeletonModification2D < Resource < RefCounted < Object

Модификация, которая покачивает узлы Bone2D по мере их движения к цели.

Описание

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

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

Примечание: Модификатор Jiggle имеет jiggle_joints, которые являются объектами данных, которые содержат данные для каждого сустава в цепочке Jiggle. Это отличается от узлов Bone2D! Соединения Jiggle содержат данные, необходимые для каждого Bone2D в цепочке костей, используемых модификацией Jiggle.

Свойства

float

damping

0.75

Vector2

gravity

Vector2(0, 6)

int

jiggle_data_chain_length

0

float

mass

0.75

float

stiffness

3.0

NodePath

target_nodepath

NodePath("")

bool

use_gravity

false

Методы

int

get_collision_mask() const

NodePath

get_jiggle_joint_bone2d_node(joint_idx: int) const

int

get_jiggle_joint_bone_index(joint_idx: int) const

float

get_jiggle_joint_damping(joint_idx: int) const

Vector2

get_jiggle_joint_gravity(joint_idx: int) const

float

get_jiggle_joint_mass(joint_idx: int) const

bool

get_jiggle_joint_override(joint_idx: int) const

float

get_jiggle_joint_stiffness(joint_idx: int) const

bool

get_jiggle_joint_use_gravity(joint_idx: int) const

bool

get_use_colliders() const

void

set_collision_mask(collision_mask: int)

void

set_jiggle_joint_bone2d_node(joint_idx: int, bone2d_node: NodePath)

void

set_jiggle_joint_bone_index(joint_idx: int, bone_idx: int)

void

set_jiggle_joint_damping(joint_idx: int, damping: float)

void

set_jiggle_joint_gravity(joint_idx: int, gravity: Vector2)

void

set_jiggle_joint_mass(joint_idx: int, mass: float)

void

set_jiggle_joint_override(joint_idx: int, override: bool)

void

set_jiggle_joint_stiffness(joint_idx: int, stiffness: float)

void

set_jiggle_joint_use_gravity(joint_idx: int, use_gravity: bool)

void

set_use_colliders(use_colliders: bool)


Описания свойств

float damping = 0.75 🔗

  • void set_damping(value: float)

  • float get_damping()

Величина демпфирования по умолчанию, применяемая к сочленениям Jiggle, если они не переопределены. Более высокие значения приводят к применению большего количества вычисленной скорости.


Vector2 gravity = Vector2(0, 6) 🔗

Значение силы тяжести по умолчанию, применяемое к сочленениям Jiggle, если они не переопределены.


int jiggle_data_chain_length = 0 🔗

  • void set_jiggle_data_chain_length(value: int)

  • int get_jiggle_data_chain_length()

Количество шарнирных соединений в модификации Jiggle.


float mass = 0.75 🔗

Значение массы по умолчанию, назначенное для сочленений Jiggle, если они не переопределены. Более высокие значения приводят к более быстрым движениям и большему перескоку.


float stiffness = 3.0 🔗

  • void set_stiffness(value: float)

  • float get_stiffness()

Значение жесткости по умолчанию, назначенное для Jiggle joints, если они не переопределены. Более высокие значения действуют скорее как пружины, быстро перемещаясь в правильное положение.


NodePath target_nodepath = NodePath("") 🔗

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


bool use_gravity = false 🔗

  • void set_use_gravity(value: bool)

  • bool get_use_gravity()

Следует ли применять вектор гравитации gravity к шарнирам Jiggle, предполагая, что они не переопределяют настройки по умолчанию.


Описания метода

int get_collision_mask() const 🔗

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


NodePath get_jiggle_joint_bone2d_node(joint_idx: int) const 🔗

Возвращает узел Bone2D, назначенный для сустава Jiggle в joint_idx.


int get_jiggle_joint_bone_index(joint_idx: int) const 🔗

Возвращает индекс узла Bone2D, назначенного для сустава Jiggle в joint_idx.


float get_jiggle_joint_damping(joint_idx: int) const 🔗

Возвращает величину демпфирования сочленения Jiggle в joint_idx.


Vector2 get_jiggle_joint_gravity(joint_idx: int) const 🔗

Возвращает Vector2, представляющий величину силы тяжести, которая влияет на сочленение Jiggle в точке joint_idx.


float get_jiggle_joint_mass(joint_idx: int) const 🔗

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


bool get_jiggle_joint_override(joint_idx: int) const 🔗

Возвращает логическое значение, указывающее, переопределяет ли соединение в joint_idx данные соединения Jiggle по умолчанию, определенные в модификации.


float get_jiggle_joint_stiffness(joint_idx: int) const 🔗

Возвращает жесткость шарнирного соединения Jiggle в joint_idx.


bool get_jiggle_joint_use_gravity(joint_idx: int) const 🔗

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


bool get_use_colliders() const 🔗

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


void set_collision_mask(collision_mask: int) 🔗

Устанавливает маску столкновений, которую модификатор Jiggle будет использовать при реагировании на коллайдеры, если модификатор Jiggle настроен на учет коллайдеров.


void set_jiggle_joint_bone2d_node(joint_idx: int, bone2d_node: NodePath) 🔗

Устанавливает узел Bone2D, назначенный для сустава Jiggle в joint_idx.


void set_jiggle_joint_bone_index(joint_idx: int, bone_idx: int) 🔗

Устанавливает индекс кости, bone_idx, для Jiggle joint в joint_idx. Когда это возможно, это также обновит bone2d_node для Jiggle joint на основе данных, предоставленных связанным скелетом.


void set_jiggle_joint_damping(joint_idx: int, damping: float) 🔗

Устанавливает величину демпфирования сочленения Jiggle в joint_idx.


void set_jiggle_joint_gravity(joint_idx: int, gravity: Vector2) 🔗

Устанавливает вектор силы тяжести сочленения Jiggle на joint_idx.


void set_jiggle_joint_mass(joint_idx: int, mass: float) 🔗

Устанавливает массу шарнира Jiggle в joint_idx.


void set_jiggle_joint_override(joint_idx: int, override: bool) 🔗

Устанавливает, должен ли Jiggle joint в joint_idx переопределять настройки Jiggle joint по умолчанию. Установка этого значения в true заставит joint использовать собственные настройки, а не настройки по умолчанию, прикрепленные к модификации.


void set_jiggle_joint_stiffness(joint_idx: int, stiffness: float) 🔗

Устанавливает жесткость шарнира Jiggle в joint_idx.


void set_jiggle_joint_use_gravity(joint_idx: int, use_gravity: bool) 🔗

Устанавливает, будет ли сочленение Jiggle в joint_idx использовать гравитацию.


void set_use_colliders(use_colliders: bool) 🔗

Если true, модификатор Jiggle будет учитывать коллайдеры, не давая им входить в эти объекты столкновения.