Files
godot-docs-l10n/classes/ru/class_editorresourceconversionplugin.rst

109 lines
6.8 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

:github_url: hide
.. _class_EditorResourceConversionPlugin:
EditorResourceConversionPlugin
==============================
**Наследует:** :ref:`RefCounted<class_RefCounted>` **<** :ref:`Object<class_Object>`
Плагин для добавления пользовательских преобразователей из одного формата ресурсов в другой в контекстном меню выбора ресурсов редактора; например, преобразование :ref:`StandardMaterial3D<class_StandardMaterial3D>` в :ref:`ShaderMaterial<class_ShaderMaterial>`.
.. rst-class:: classref-introduction-group
Описание
----------------
**EditorResourceConversionPlugin** вызывается, когда контекстное меню вызывается для ресурса в инспекторе редактора. Соответствующие плагины преобразования будут отображаться как пункты меню для преобразования данного ресурса в целевой тип.
Ниже показан пример базового плагина, который преобразует :ref:`ImageTexture<class_ImageTexture>` в :ref:`PortableCompressedTexture2D<class_PortableCompressedTexture2D>`.
.. tabs::
.. code-tab:: gdscript
extends EditorResourceConversionPlugin
func _handles(resource: Resource):
return resource is ImageTexture
func _converts_to():
return "PortableCompressedTexture2D"
func _convert(itex: Resource):
var ptex = PortableCompressedTexture2D.new()
ptex.create_from_image(itex.get_image(), PortableCompressedTexture2D.COMPRESSION_MODE_LOSSLESS)
return ptex
Чтобы использовать **EditorResourceConversionPlugin**, сначала зарегистрируйте его с помощью метода :ref:`EditorPlugin.add_resource_conversion_plugin()<class_EditorPlugin_method_add_resource_conversion_plugin>`.
.. rst-class:: classref-reftable-group
Методы
------------
.. table::
:widths: auto
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`Resource<class_Resource>` | :ref:`_convert<class_EditorResourceConversionPlugin_private_method__convert>`\ (\ resource\: :ref:`Resource<class_Resource>`\ ) |virtual| |const| |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`String<class_String>` | :ref:`_converts_to<class_EditorResourceConversionPlugin_private_method__converts_to>`\ (\ ) |virtual| |const| |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
| :ref:`bool<class_bool>` | :ref:`_handles<class_EditorResourceConversionPlugin_private_method__handles>`\ (\ resource\: :ref:`Resource<class_Resource>`\ ) |virtual| |const| |
+---------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------+
.. rst-class:: classref-section-separator
----
.. rst-class:: classref-descriptions-group
Описания метода
------------------------------
.. _class_EditorResourceConversionPlugin_private_method__convert:
.. rst-class:: classref-method
:ref:`Resource<class_Resource>` **_convert**\ (\ resource\: :ref:`Resource<class_Resource>`\ ) |virtual| |const| :ref:`🔗<class_EditorResourceConversionPlugin_private_method__convert>`
Принимает входной :ref:`Resource<class_Resource>` и преобразует его в тип, указанный в :ref:`_converts_to()<class_EditorResourceConversionPlugin_private_method__converts_to>`. Возвращаемый :ref:`Resource<class_Resource>` является результатом преобразования, а входной :ref:`Resource<class_Resource>` остается неизменным.
.. rst-class:: classref-item-separator
----
.. _class_EditorResourceConversionPlugin_private_method__converts_to:
.. rst-class:: classref-method
:ref:`String<class_String>` **_converts_to**\ (\ ) |virtual| |const| :ref:`🔗<class_EditorResourceConversionPlugin_private_method__converts_to>`
Возвращает имя класса целевого типа :ref:`Resource<class_Resource>`, в который этот плагин преобразует исходные ресурсы.
.. rst-class:: classref-item-separator
----
.. _class_EditorResourceConversionPlugin_private_method__handles:
.. rst-class:: classref-method
:ref:`bool<class_bool>` **_handles**\ (\ resource\: :ref:`Resource<class_Resource>`\ ) |virtual| |const| :ref:`🔗<class_EditorResourceConversionPlugin_private_method__handles>`
Вызывается для определения того, может ли данный плагин преобразовать определенный :ref:`Resource<class_Resource>` в целевой тип ресурса.
.. |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 (Нет возвращаемого значения.)`