summaryrefslogtreecommitdiff
path: root/doc/classes/EditorNode3DGizmoPlugin.xml
diff options
context:
space:
mode:
Diffstat (limited to 'doc/classes/EditorNode3DGizmoPlugin.xml')
-rw-r--r--doc/classes/EditorNode3DGizmoPlugin.xml198
1 files changed, 198 insertions, 0 deletions
diff --git a/doc/classes/EditorNode3DGizmoPlugin.xml b/doc/classes/EditorNode3DGizmoPlugin.xml
new file mode 100644
index 0000000000..ca75b47fbf
--- /dev/null
+++ b/doc/classes/EditorNode3DGizmoPlugin.xml
@@ -0,0 +1,198 @@
+<?xml version="1.0" encoding="UTF-8" ?>
+<class name="EditorNode3DGizmoPlugin" inherits="Resource" version="4.0">
+ <brief_description>
+ Used by the editor to define Node3D gizmo types.
+ </brief_description>
+ <description>
+ EditorNode3DGizmoPlugin allows you to define a new type of Gizmo. There are two main ways to do so: extending [EditorNode3DGizmoPlugin] for the simpler gizmos, or creating a new [EditorNode3DGizmo] type. See the tutorial in the documentation for more info.
+ </description>
+ <tutorials>
+ <link>https://docs.godotengine.org/en/latest/tutorials/plugins/editor/spatial_gizmos.html</link>
+ </tutorials>
+ <methods>
+ <method name="add_material">
+ <return type="void">
+ </return>
+ <argument index="0" name="name" type="String">
+ </argument>
+ <argument index="1" name="material" type="StandardMaterial3D">
+ </argument>
+ <description>
+ Adds a new material to the internal material list for the plugin. It can then be accessed with [method get_material]. Should not be overridden.
+ </description>
+ </method>
+ <method name="can_be_hidden" qualifiers="virtual">
+ <return type="bool">
+ </return>
+ <description>
+ Override this method to define whether the gizmo can be hidden or not. Returns [code]true[/code] if not overridden.
+ </description>
+ </method>
+ <method name="commit_handle" qualifiers="virtual">
+ <return type="void">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <argument index="1" name="index" type="int">
+ </argument>
+ <argument index="2" name="restore" type="Variant">
+ </argument>
+ <argument index="3" name="cancel" type="bool" default="false">
+ </argument>
+ <description>
+ Override this method to commit gizmo handles. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ <method name="create_gizmo" qualifiers="virtual">
+ <return type="EditorNode3DGizmo">
+ </return>
+ <argument index="0" name="spatial" type="Node3D">
+ </argument>
+ <description>
+ Override this method to return a custom [EditorNode3DGizmo] for the spatial nodes of your choice, return [code]null[/code] for the rest of nodes. See also [method has_gizmo].
+ </description>
+ </method>
+ <method name="create_handle_material">
+ <return type="void">
+ </return>
+ <argument index="0" name="name" type="String">
+ </argument>
+ <argument index="1" name="billboard" type="bool" default="false">
+ </argument>
+ <description>
+ Creates a handle material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_handles]. Should not be overridden.
+ </description>
+ </method>
+ <method name="create_icon_material">
+ <return type="void">
+ </return>
+ <argument index="0" name="name" type="String">
+ </argument>
+ <argument index="1" name="texture" type="Texture2D">
+ </argument>
+ <argument index="2" name="on_top" type="bool" default="false">
+ </argument>
+ <argument index="3" name="color" type="Color" default="Color( 1, 1, 1, 1 )">
+ </argument>
+ <description>
+ Creates an icon material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_unscaled_billboard]. Should not be overridden.
+ </description>
+ </method>
+ <method name="create_material">
+ <return type="void">
+ </return>
+ <argument index="0" name="name" type="String">
+ </argument>
+ <argument index="1" name="color" type="Color">
+ </argument>
+ <argument index="2" name="billboard" type="bool" default="false">
+ </argument>
+ <argument index="3" name="on_top" type="bool" default="false">
+ </argument>
+ <argument index="4" name="use_vertex_color" type="bool" default="false">
+ </argument>
+ <description>
+ Creates an unshaded material with its variants (selected and/or editable) and adds them to the internal material list. They can then be accessed with [method get_material] and used in [method EditorNode3DGizmo.add_mesh] and [method EditorNode3DGizmo.add_lines]. Should not be overridden.
+ </description>
+ </method>
+ <method name="get_handle_name" qualifiers="virtual">
+ <return type="String">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <argument index="1" name="index" type="int">
+ </argument>
+ <description>
+ Override this method to provide gizmo's handle names. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ <method name="get_handle_value" qualifiers="virtual">
+ <return type="Variant">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <argument index="1" name="index" type="int">
+ </argument>
+ <description>
+ Gets actual value of a handle from gizmo. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ <method name="get_material">
+ <return type="StandardMaterial3D">
+ </return>
+ <argument index="0" name="name" type="String">
+ </argument>
+ <argument index="1" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <description>
+ Gets material from the internal list of materials. If an [EditorNode3DGizmo] is provided, it will try to get the corresponding variant (selected and/or editable).
+ </description>
+ </method>
+ <method name="get_name" qualifiers="virtual">
+ <return type="String">
+ </return>
+ <description>
+ Override this method to provide the name that will appear in the gizmo visibility menu.
+ </description>
+ </method>
+ <method name="get_priority" qualifiers="virtual">
+ <return type="String">
+ </return>
+ <description>
+ </description>
+ </method>
+ <method name="has_gizmo" qualifiers="virtual">
+ <return type="bool">
+ </return>
+ <argument index="0" name="spatial" type="Node3D">
+ </argument>
+ <description>
+ Override this method to define which Node3D nodes have a gizmo from this plugin. Whenever a [Node3D] node is added to a scene this method is called, if it returns [code]true[/code] the node gets a generic [EditorNode3DGizmo] assigned and is added to this plugin's list of active gizmos.
+ </description>
+ </method>
+ <method name="is_handle_highlighted" qualifiers="virtual">
+ <return type="bool">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <argument index="1" name="index" type="int">
+ </argument>
+ <description>
+ Gets whether a handle is highlighted or not. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ <method name="is_selectable_when_hidden" qualifiers="virtual">
+ <return type="bool">
+ </return>
+ <description>
+ Override this method to define whether Node3D with this gizmo should be selecteble even when the gizmo is hidden.
+ </description>
+ </method>
+ <method name="redraw" qualifiers="virtual">
+ <return type="void">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <description>
+ Callback to redraw the provided gizmo. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ <method name="set_handle" qualifiers="virtual">
+ <return type="void">
+ </return>
+ <argument index="0" name="gizmo" type="EditorNode3DGizmo">
+ </argument>
+ <argument index="1" name="index" type="int">
+ </argument>
+ <argument index="2" name="camera" type="Camera3D">
+ </argument>
+ <argument index="3" name="point" type="Vector2">
+ </argument>
+ <description>
+ Update the value of a handle after it has been updated. Called for this plugin's active gizmos.
+ </description>
+ </method>
+ </methods>
+ <constants>
+ </constants>
+</class>