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。