EditorResourceConversionPlugin

继承: RefCounted < Object

用于在编辑器资源选择器上下文菜单中将自定义转换器从一种资源格式添加到另一种资源格式的插件;例如,将StandardMaterial3D转换为ShaderMaterial

描述

EditorResourceConversionPlugin在编辑器检查器中为资源打开上下文菜单时被调用。相关转换插件将显示为菜单选项,以将给定资源转换为目标类型。

下面显示了一个将ImageTexture转换为PortableCompressedTexture2D的基本插件示例。

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,首先使用EditorPlugin.add_resource_conversion_plugin()方法进行注册。

方法

Resource

_convert(resource: Resource) virtual const

String

_converts_to() virtual const

bool

_handles(resource: Resource) virtual const


方法说明

Resource _convert(resource: Resource) virtual const 🔗

获取输入Resource并将其转换为_converts_to()中给出的类型。返回的Resource是转换的结果,输入Resource保持不变。


String _converts_to() virtual const 🔗

返回此插件将源资源转换为的Resource目标类型的类名。


bool _handles(resource: Resource) virtual const 🔗

调用以确定此插件是否可以将特定的Resource转换为目标资源类型。