EditorSpatialGizmoPlugin

Inherits: Resource < Reference < Object

由编辑部用于定义空间小工具的类型。

描述

EditorSpatialGizmoPlugin 允许您定义一种新的辅助工具类型。这样做的主要方法有两种:扩展 EditorSpatialGizmoPlugin 以获得更简单的Gizmos,或创建新的 EditorSpatialGizmoPlugin 类型。有关更多信息,请参阅文档中的教程。

教程

方法

void

add_material ( String name, SpatialMaterial material )

bool

can_be_hidden ( ) virtual

void

commit_handle ( EditorSpatialGizmo gizmo, int index, Variant restore, bool cancel=false ) virtual

EditorSpatialGizmo

create_gizmo ( Spatial spatial ) virtual

void

create_handle_material ( String name, bool billboard=false, Texture texture=null )

void

create_icon_material ( String name, Texture texture, bool on_top=false, Color color=Color( 1, 1, 1, 1 ) )

void

create_material ( String name, Color color, bool billboard=false, bool on_top=false, bool use_vertex_color=false )

String

get_handle_name ( EditorSpatialGizmo gizmo, int index ) virtual

Variant

get_handle_value ( EditorSpatialGizmo gizmo, int index ) virtual

SpatialMaterial

get_material ( String name, EditorSpatialGizmo gizmo=null )

String

get_name ( ) virtual

int

get_priority ( ) virtual

bool

has_gizmo ( Spatial spatial ) virtual

bool

is_handle_highlighted ( EditorSpatialGizmo gizmo, int index ) virtual

bool

is_selectable_when_hidden ( ) virtual

void

redraw ( EditorSpatialGizmo gizmo ) virtual

void

set_handle ( EditorSpatialGizmo gizmo, int index, Camera camera, Vector2 point ) virtual

方法说明

将新材质添加到插件的内部插件列表中。然后可以使用get_material访问它。不会该被覆盖。


  • bool can_be_hidden ( ) virtual

重写此方法以定义是否可以隐藏Gizmo。如果未覆盖,则返回true


重写此方法以提交Gizmo句柄。调用此插件的活动辅助工具。


重写此方法可为您选择的空间节点返回自定义 EditorSpatialGizmo,为其余节点返回 null。另请参阅 has_gizmo


  • void create_handle_material ( String name, bool billboard=false, Texture texture=null )

创建一个手柄材质及其变体 (选定的和/或可编辑的),并将它们添加到内部材质列表。然后可以用 get_material 访问它们,并在 EditorSpatialGizmo.add_handles 中使用。不应该被重写。

你可以选择性地提供一个纹理来代替默认的图标。


  • void create_icon_material ( String name, Texture texture, bool on_top=false, Color color=Color( 1, 1, 1, 1 ) )

创建一个图标材质及其变体 (选定的和/或可编辑的),并将它们添加到内部材质列表。然后可以用 get_material 访问它们,并在 EditorSpatialGizmo.add_unscaled_billboard 中使用。不应该被重写。


  • void create_material ( String name, Color color, bool billboard=false, bool on_top=false, bool use_vertex_color=false )

创建一个没有阴影的材质及其变体 (选定的和/或可编辑的),并将它们添加到内部材质列表。然后可以用 get_material 访问它们,并在 EditorSpatialGizmo.add_meshEditorSpatialGizmo.add_lines 中使用。不应该被重写。


重写此方法以提供Gizmo的句柄名称。调用此插件的活动工具。


从Gizmo获取句柄的实际值。调用此插件的活动工具。


从内部材质列表中获取材质。如果提供了一个 EditorSpatialGizmo ,它将尝试获取相应的变体 (选定的和/或可编辑的)。


重写此方法以提供将出现在工具可见性菜单中的名称。


  • int get_priority ( ) virtual

重写此方法可以设置工具的优先级。值越高,优先级越高。如果具有较高优先级的工具与另一个工具发生冲突,则仅使用具有较高优先级的工具。

所有内置编辑器小控件均返回-1优先级。如果未重写,则此方法将返回0,这意味着自定义控件将自动覆盖内置控件。


覆盖这个方法来定义哪些空间节点有这个插件的 gizmo。每当一个 Spatial 节点被添加到一个场景中时,这个方法就会被调用,如果它返回 true,该节点就会被分配一个通用的 EditorSpatialGizmo,并被添加到这个插件的激活 Gizmos列表中。


获取句柄是否高亮显示。调用此插件的活动工具。


  • bool is_selectable_when_hidden ( ) virtual

覆盖此方法,以定义具有此工具的空间是否应该在工具被隐藏时也可以被选择。


回调以重新绘制提供的工具。调用此插件的活动工具。


更新句柄后更新其值。调用此插件的活动工具。