mirror of
https://github.com/godotengine/godot-docs-l10n.git
synced 2025-12-31 09:49:22 +03:00
91 lines
8.4 KiB
ReStructuredText
91 lines
8.4 KiB
ReStructuredText
:github_url: hide
|
||
|
||
.. _class_AnimationNodeExtension:
|
||
|
||
AnimationNodeExtension
|
||
======================
|
||
|
||
**Экспериментальное:** This class may be changed or removed in future versions.
|
||
|
||
**Наследует:** :ref:`AnimationNode<class_AnimationNode>` **<** :ref:`Resource<class_Resource>` **<** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
|
||
|
||
Базовый класс для расширения :ref:`AnimationRootNode<class_AnimationRootNode>` из GDScript, C# или C++.
|
||
|
||
.. rst-class:: classref-introduction-group
|
||
|
||
Описание
|
||
----------------
|
||
|
||
**AnimationNodeExtension** раскрывает API :ref:`AnimationRootNode<class_AnimationRootNode>`, позволяя пользователям расширять его из GDScript, C# или C++. Этот класс не предназначен для прямого использования, а для расширения другими классами. Он используется для создания пользовательских узлов для системы :ref:`AnimationTree<class_AnimationTree>`.
|
||
|
||
.. rst-class:: classref-reftable-group
|
||
|
||
Методы
|
||
------------
|
||
|
||
.. table::
|
||
:widths: auto
|
||
|
||
+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`PackedFloat32Array<class_PackedFloat32Array>` | :ref:`_process_animation_node<class_AnimationNodeExtension_private_method__process_animation_node>`\ (\ playback_info\: :ref:`PackedFloat64Array<class_PackedFloat64Array>`, test_only\: :ref:`bool<class_bool>`\ ) |virtual| |required| |
|
||
+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`float<class_float>` | :ref:`get_remaining_time<class_AnimationNodeExtension_method_get_remaining_time>`\ (\ node_info\: :ref:`PackedFloat32Array<class_PackedFloat32Array>`, break_loop\: :ref:`bool<class_bool>`\ ) |static| |
|
||
+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
| :ref:`bool<class_bool>` | :ref:`is_looping<class_AnimationNodeExtension_method_is_looping>`\ (\ node_info\: :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ ) |static| |
|
||
+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+
|
||
|
||
.. rst-class:: classref-section-separator
|
||
|
||
----
|
||
|
||
.. rst-class:: classref-descriptions-group
|
||
|
||
Описания метода
|
||
------------------------------
|
||
|
||
.. _class_AnimationNodeExtension_private_method__process_animation_node:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`PackedFloat32Array<class_PackedFloat32Array>` **_process_animation_node**\ (\ playback_info\: :ref:`PackedFloat64Array<class_PackedFloat64Array>`, test_only\: :ref:`bool<class_bool>`\ ) |virtual| |required| :ref:`🔗<class_AnimationNodeExtension_private_method__process_animation_node>`
|
||
|
||
Версия метода :ref:`AnimationNode._process()<class_AnimationNode_private_method__process>`, которая должна быть переопределена пользовательскими узлами. Возвращает :ref:`PackedFloat32Array<class_PackedFloat32Array>` с обработанными данными анимации.
|
||
|
||
Параметр :ref:`PackedFloat64Array<class_PackedFloat64Array>` содержит информацию о воспроизведении, включающую следующие значения, закодированные как числа с плавающей точкой (по порядку): время воспроизведения и дельта, время начала и окончания, был ли запрошен поиск (закодирован как число с плавающей точкой больше ``0``), был ли запрос поиска запрошен извне (закодирован как число с плавающей точкой больше ``0``), текущий :ref:`LoopedFlag<enum_Animation_LoopedFlag>` (закодирован как число с плавающей точкой) и текущий вес смешивания.
|
||
|
||
Функция должна возвращать :ref:`PackedFloat32Array<class_PackedFloat32Array>` временной информации узла, содержащей следующие значения (по порядку): длина анимации, временная позиция, дельта, :ref:`LoopMode<enum_Animation_LoopMode>` (закодировано как float), заканчивается ли анимация (закодировано как float больше ``0``) и бесконечна ли анимация (закодировано как float больше ``0``). Все значения должны быть включены в возвращаемый массив.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AnimationNodeExtension_method_get_remaining_time:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`float<class_float>` **get_remaining_time**\ (\ node_info\: :ref:`PackedFloat32Array<class_PackedFloat32Array>`, break_loop\: :ref:`bool<class_bool>`\ ) |static| :ref:`🔗<class_AnimationNodeExtension_method_get_remaining_time>`
|
||
|
||
Возвращает оставшееся время анимации для заданной информации узла. Для циклических анимаций оставшееся время будет возвращено только если ``break_loop`` равен ``true``, в противном случае будет возвращено большое целочисленное значение.
|
||
|
||
.. rst-class:: classref-item-separator
|
||
|
||
----
|
||
|
||
.. _class_AnimationNodeExtension_method_is_looping:
|
||
|
||
.. rst-class:: classref-method
|
||
|
||
:ref:`bool<class_bool>` **is_looping**\ (\ node_info\: :ref:`PackedFloat32Array<class_PackedFloat32Array>`\ ) |static| :ref:`🔗<class_AnimationNodeExtension_method_is_looping>`
|
||
|
||
Возвращает ``true``, если анимация для заданного ``node_info`` является циклической.
|
||
|
||
.. |virtual| replace:: :abbr:`virtual (Этот метод обычно должен быть переопределен пользователем, чтобы иметь какой-либо эффект.)`
|
||
.. |required| replace:: :abbr:`required (This method is required to be overridden when extending its base class.)`
|
||
.. |const| replace:: :abbr:`const (Этот метод не имеет побочных эффектов. Он не изменяет ни одну из переменных-членов экземпляра.)`
|
||
.. |vararg| replace:: :abbr:`vararg (Этот метод принимает любое количество аргументов после описанных здесь.)`
|
||
.. |constructor| replace:: :abbr:`constructor (Этот метод используется для создания типа.)`
|
||
.. |static| replace:: :abbr:`static (Этот метод не нуждается в вызове экземпляра, поэтому его можно вызвать напрямую, используя имя класса.)`
|
||
.. |operator| replace:: :abbr:`operator (Этот метод описывает допустимый оператор для использования с этим типом в качестве левого операнда.)`
|
||
.. |bitfield| replace:: :abbr:`BitField (Это значение является целым числом, составленным как битовая маска следующих флагов.)`
|
||
.. |void| replace:: :abbr:`void (Нет возвращаемого значения.)`
|