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.
Checking the stable version of the documentation...
AnimationNodeExtension
實驗性: This class may be changed or removed in future versions.
繼承: AnimationNode < Resource < RefCounted < Object
用於從 GDScript、C# 或 C++ 擴充 AnimationRootNode 的基底類別。
說明
AnimationNodeExtension 讓 AnimationRootNode 的 API 可供 GDScript、C# 或 C++ 擴充使用。此類別並非直接使用,而是提供給其他類別繼承,以便為 AnimationTree 系統建立自訂節點。
方法
_process_animation_node(playback_info: PackedFloat64Array, test_only: bool) virtual required |
|
get_remaining_time(node_info: PackedFloat32Array, break_loop: bool) static |
|
is_looping(node_info: PackedFloat32Array) static |
方法說明
PackedFloat32Array _process_animation_node(playback_info: PackedFloat64Array, test_only: bool) virtual required 🔗
這是供自訂節點覆寫的 AnimationNode._process() 版本,會回傳已處理動畫資料的 PackedFloat32Array。
PackedFloat64Array 參數包含播放資訊,依序以浮點數表示以下數值:播放時間與增量、開始與結束時間、是否請求跳轉(大於 0 的浮點數表示已請求)、跳轉是否來自外部(同樣以大於 0 表示)、目前的 LoopedFlag 以及目前的混合權重。
函式必須回傳節點時間資訊的 PackedFloat32Array,順序為:動畫長度、當前時間位置、增量、LoopMode、動畫是否即將結束(大於 0 表示是)以及動畫是否為無限(大於 0 表示是)。回傳陣列必須包含所有這些數值。
float get_remaining_time(node_info: PackedFloat32Array, break_loop: bool) static 🔗
回傳指定節點資訊的動畫剩餘時間。若動畫循環播放,只有當 break_loop 為 true 時才會回傳剩餘時間,否則會回傳一個很大的整數值。
bool is_looping(node_info: PackedFloat32Array) static 🔗
如果給定的 node_info 動畫正在循環,則返回 true。