Attention: Here be dragons

This is the latest (unstable) version of this documentation, which may document features not available in or compatible with released stable versions of Godot.

SkeletonModification2DJiggle

Sperimentale: This class may be changed or removed in future versions.

Eredita: SkeletonModification2D < Resource < RefCounted < Object

Una modifica che fa oscillare i nodi Bone2D mentre si muovono verso un obiettivo.

Descrizione

Questa modificazione sposta una serie di ossa, solitamente chiamate catena d'ossa, verso un obiettivo. Ciò che rende speciale questa modifica è che calcola la velocità e l'accelerazione per ogni osso nella catena d'ossa ed esegue un calcolo molto leggero, simile alla fisica, utilizzando i valori immessi. Ciò consente alle ossa di oltrepassare l'obiettivo e "oscillare" attorno. Può essere configurato per agire più come una molla o oscillare come potrebbe fare un tessuto.

Questa modificazione è utile per aggiungere ulteriore movimento a cose come capelli, bordi di vestiti e altro. Ha diverse impostazioni che consentono di controllare come si muove l'articolazione quando si muove il bersaglio.

Nota: Il modificatore Jiggle ha jiggle_joints, che sono gli oggetti dati che contengono i dati per ogni articolazione nella catena Jiggle. Questo è diverso dai nodi Bone2D! Le articolazioni Jiggle contengono i dati necessari per ogni Bone2D nella catena d'ossa utilizzata dalla modificazione Jiggle.

Proprietà

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

Metodi

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

reset()

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)


Descrizioni delle proprietà

float damping = 0.75 🔗

  • void set_damping(value: float)

  • float get_damping()

La quantità predefinita di smorzamento applicata alle articolazioni Jiggle, se non è sovrascritta. Valori più alti portano ad applicare una quantità maggiore della velocità calcolata.


Vector2 gravity = Vector2(0, 6) 🔗

La quantità predefinita di gravità applicata alle articolazioni Jiggle, se non è sovrascritta.


int jiggle_data_chain_length = 0 🔗

  • void set_jiggle_data_chain_length(value: int)

  • int get_jiggle_data_chain_length()

La quantità di articolazioni Jiggle nella modificazione Jiggle.


float mass = 0.75 🔗

La quantità predefinita di massa assegnata alle articolazioni Jiggle, se non è sovrascritta. Valori più alti portano a movimenti più rapidi e a un maggiore superamento.


float stiffness = 3.0 🔗

  • void set_stiffness(value: float)

  • float get_stiffness()

La quantità predefinita di rigidità assegnata alle articolazioni Jiggle, se non è sovrascritta. Valori più alti agiscono più come molle, spostandosi rapidamente nella posizione corretta.


NodePath target_nodepath = NodePath("") 🔗

Il NodePath al nodo che è l'obiettivo per la modificazione Jiggle. Questo nodo è ciò verso cui la catena Jiggle tenterà di ruotare la catena d'ossa.


bool use_gravity = false 🔗

  • void set_use_gravity(value: bool)

  • bool get_use_gravity()

Imposta se il vettore di gravità, gravity, debba essere applicato alle articolazioni Jiggle, supponendo che non sovrascrivano le impostazioni predefinite.


Descrizioni dei metodi

int get_collision_mask() const 🔗

Restituisce la maschera di collisione utilizzata dal modificatore Jiggle quando le collisioni sono abilitate.


NodePath get_jiggle_joint_bone2d_node(joint_idx: int) const 🔗

Restituisce il nodo Bone2D assegnato all'articolazione Jiggle all'indice joint_idx.


int get_jiggle_joint_bone_index(joint_idx: int) const 🔗

Restituisce l'indice del nodo Bone2D assegnato all'articolazione Jiggle all'indice joint_idx.


float get_jiggle_joint_damping(joint_idx: int) const 🔗

Restituisce la quantità di smorzamento dell'articolazione Jiggle all'indice joint_idx.


Vector2 get_jiggle_joint_gravity(joint_idx: int) const 🔗

Restituisce un Vector2 che rappresenta la quantità di gravità da cui è influenzata l'articolazione Jiggle all'indice joint_idx.


float get_jiggle_joint_mass(joint_idx: int) const 🔗

Restituisce la quantità di massa dell'articolazione Jiggle all'indice joint_idx.


bool get_jiggle_joint_override(joint_idx: int) const 🔗

Restituisce un valore booleano che indica se l'articolazione all'indice joint_idx sta sovrascrivendo i dati dell'articolazione Jiggle predefiniti che sono stati definiti nella modificazione.


float get_jiggle_joint_stiffness(joint_idx: int) const 🔗

Restituisce la rigidità dell'articolazione Jiggle all'indice joint_idx.


bool get_jiggle_joint_use_gravity(joint_idx: int) const 🔗

Restituisce un valore booleano che indica se l'articolazione all'indice joint_idx utilizza la gravità oppure no.


bool get_use_colliders() const 🔗

Restituisce se il modificatore jiggle tiene conto dei collisori fisici durante la risoluzione.


void reset() 🔗

Resets the internal jiggle simulation state to the current bone positions, clearing velocity, acceleration, and accumulated forces.


void set_collision_mask(collision_mask: int) 🔗

Imposta la maschera di collisione che il modificatore Jiggle utilizzerà quando reagisce ai collisori, se il modificatore Jiggle è impostato per tenere conto dei collisori.


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

Imposta il nodo Bone2D assegnato all'articolazione Jiggle all'indice joint_idx.


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

Imposta l'indice osseo, bone_idx, dell'articolazione Jiggle su joint_idx. Quando possibile, questo aggiornerà anche il bone2d_node dell'articolazione Jiggle in base ai dati forniti dallo scheletro collegato.


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

Imposta la quantità di smorzamento dell'articolazione Jiggle all'indice joint_idx.


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

Imposta il vettore di gravità dell'articolazione Jiggle all'indice joint_idx.


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

Imposta la massa dell'articolazione Jiggle all'indice joint_idx.


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

Imposta se l'articolazione Jiggle all'indice joint_idx deve sovrascrivere le impostazioni predefinite delle articolazioni Jiggle. Impostando questo su true l'articolzione userà le proprie impostazioni invece di quelle predefinite associate alla modificazione.


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

Imposta la rigidità dell'articolazione Jiggle all'indice joint_idx.


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

Imposta se l'articolazione Jiggle all'indice joint_idx deve utilizzare la gravità.


void set_use_colliders(use_colliders: bool) 🔗

Se true, il modificatore Jiggle terrà conto dei collider, impedendo loro di entrare in questi oggetti di collisione.