SkeletonModificationStack2D
實驗性: This class may be changed or removed in future versions.
繼承: Resource < RefCounted < Object
存放 SkeletonModification2D 堆疊的資源。
說明
該資源由 Skeleton 使用,並持有一個 SkeletonModification2D 堆疊。
這控制了修改的順序以及它們的套用方式。修改順序對於全身 IK 設定尤為重要,因為需要以正確的循序執行修改以獲得所需的結果。例如,想在人形骨骼的手臂之前對脊柱執行一個修改。
該資源還控制所有修改被套用於 Skeleton2D 的強度。
屬性
|
||
|
||
|
方法
void |
add_modification(modification: SkeletonModification2D) |
void |
delete_modification(mod_idx: int) |
void |
enable_all_modifications(enabled: bool) |
void |
|
get_is_setup() const |
|
get_modification(mod_idx: int) const |
|
get_skeleton() const |
|
void |
set_modification(mod_idx: int, modification: SkeletonModification2D) |
void |
setup() |
屬性說明
如果為 true,則會呼叫該堆疊中的修改器。這是通過 Skeleton2D 節點自動處理的。
堆疊中修改器的數量。
堆疊中修改的插值強度。0 的值將使修改不被套用,0.5 的強度將套用一半,1 的強度將允許修改被完全套用並覆蓋 Skeleton2D Bone2D 姿勢。
方法說明
void add_modification(modification: SkeletonModification2D) 🔗
將傳入的 SkeletonModification2D 入堆疊。
void delete_modification(mod_idx: int) 🔗
如果存在,則刪除位於索引位置 mod_idx 的 SkeletonModification2D。
void enable_all_modifications(enabled: bool) 🔗
啟用堆疊中的所有 SkeletonModification2D。
void execute(delta: float, execution_mode: int) 🔗
使用傳入的執行模式 execution_mode 執行堆疊中的所有 SkeletonModification2D,從索引 0 執行到 modification_count。
注意:根據修改器的不同,結果可能會因修改器順序的不同而不同。例如,對脊柱的修改應該在對手臂的修改之前執行,這樣才能得到正確的結果。
返回一個布林值,指示該修改堆疊是否已被設定並可以執行。
SkeletonModification2D get_modification(mod_idx: int) const 🔗
返回傳入索引 mod_idx 處的 SkeletonModification2D。
Skeleton2D get_skeleton() const 🔗
返回 SkeletonModification2D 綁定到的 Skeleton2D 節點。
void set_modification(mod_idx: int, modification: SkeletonModification2D) 🔗
將位於 mod_idx 的修改器設定為傳入的 modification。
void setup() 🔗
設定該修改堆疊以便它可以執行。該函式應由 Skeleton2D 呼叫,除非知道自己在做什麼,否則不應被手動呼叫。