mirror of
https://github.com/Relintai/pandemonium_engine.git
synced 2024-12-27 14:17:37 +01:00
150 lines
6.6 KiB
XML
150 lines
6.6 KiB
XML
|
<?xml version="1.0" encoding="UTF-8" ?>
|
||
|
<class name="EditorSpatialGizmo" inherits="SpatialGizmo" version="3.5">
|
||
|
<brief_description>
|
||
|
Custom gizmo for editing Spatial objects.
|
||
|
</brief_description>
|
||
|
<description>
|
||
|
Custom gizmo that is used for providing custom visualization and editing (handles) for 3D Spatial objects. See [EditorSpatialGizmoPlugin] for more information.
|
||
|
</description>
|
||
|
<tutorials>
|
||
|
</tutorials>
|
||
|
<methods>
|
||
|
<method name="add_collision_segments">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="segments" type="PoolVector3Array" />
|
||
|
<description>
|
||
|
Adds the specified [code]segments[/code] to the gizmo's collision shape for picking. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_collision_triangles">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="triangles" type="TriangleMesh" />
|
||
|
<description>
|
||
|
Adds collision triangles to the gizmo for picking. A [TriangleMesh] can be generated from a regular [Mesh] too. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_handles">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="handles" type="PoolVector3Array" />
|
||
|
<argument index="1" name="material" type="Material" />
|
||
|
<argument index="2" name="billboard" type="bool" default="false" />
|
||
|
<argument index="3" name="secondary" type="bool" default="false" />
|
||
|
<description>
|
||
|
Adds a list of handles (points) which can be used to deform the object being edited.
|
||
|
There are virtual functions which will be called upon editing of these handles. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_lines">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="lines" type="PoolVector3Array" />
|
||
|
<argument index="1" name="material" type="Material" />
|
||
|
<argument index="2" name="billboard" type="bool" default="false" />
|
||
|
<argument index="3" name="modulate" type="Color" default="Color( 1, 1, 1, 1 )" />
|
||
|
<description>
|
||
|
Adds lines to the gizmo (as sets of 2 points), with a given material. The lines are used for visualizing the gizmo. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_mesh">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="mesh" type="Mesh" />
|
||
|
<argument index="1" name="billboard" type="bool" default="false" />
|
||
|
<argument index="2" name="skeleton" type="SkinReference" default="null" />
|
||
|
<argument index="3" name="material" type="Material" default="null" />
|
||
|
<description>
|
||
|
Adds a mesh to the gizmo with the specified [code]billboard[/code] state, [code]skeleton[/code] and [code]material[/code]. If [code]billboard[/code] is [code]true[/code], the mesh will rotate to always face the camera. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="add_unscaled_billboard">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="material" type="Material" />
|
||
|
<argument index="1" name="default_scale" type="float" default="1" />
|
||
|
<argument index="2" name="modulate" type="Color" default="Color( 1, 1, 1, 1 )" />
|
||
|
<description>
|
||
|
Adds an unscaled billboard for visualization. Call this function during [method redraw].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="clear">
|
||
|
<return type="void" />
|
||
|
<description>
|
||
|
Removes everything in the gizmo including meshes, collisions and handles.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="commit_handle" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="index" type="int" />
|
||
|
<argument index="1" name="restore" type="Variant" />
|
||
|
<argument index="2" name="cancel" type="bool" default="false" />
|
||
|
<description>
|
||
|
Commit a handle being edited (handles must have been previously added by [method add_handles]).
|
||
|
If the [code]cancel[/code] parameter is [code]true[/code], an option to restore the edited value to the original is provided.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_handle_name" qualifiers="virtual">
|
||
|
<return type="String" />
|
||
|
<argument index="0" name="index" type="int" />
|
||
|
<description>
|
||
|
Gets the name of an edited handle (handles must have been previously added by [method add_handles]).
|
||
|
Handles can be named for reference to the user when editing.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_handle_value" qualifiers="virtual">
|
||
|
<return type="Variant" />
|
||
|
<argument index="0" name="index" type="int" />
|
||
|
<description>
|
||
|
Gets actual value of a handle. This value can be anything and used for eventually undoing the motion when calling [method commit_handle].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_plugin" qualifiers="const">
|
||
|
<return type="EditorSpatialGizmoPlugin" />
|
||
|
<description>
|
||
|
Returns the [EditorSpatialGizmoPlugin] that owns this gizmo. It's useful to retrieve materials using [method EditorSpatialGizmoPlugin.get_material].
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="get_spatial_node" qualifiers="const">
|
||
|
<return type="Spatial" />
|
||
|
<description>
|
||
|
Returns the Spatial node associated with this gizmo.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="is_handle_highlighted" qualifiers="virtual">
|
||
|
<return type="bool" />
|
||
|
<argument index="0" name="index" type="int" />
|
||
|
<description>
|
||
|
Returns [code]true[/code] if the handle at index [code]index[/code] is highlighted by being hovered with the mouse.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="redraw" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<description>
|
||
|
This function is called when the [Spatial] this gizmo refers to changes (the [method Spatial.update_gizmo] is called).
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="set_handle" qualifiers="virtual">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="index" type="int" />
|
||
|
<argument index="1" name="camera" type="Camera" />
|
||
|
<argument index="2" name="point" type="Vector2" />
|
||
|
<description>
|
||
|
This function is used when the user drags a gizmo handle (previously added with [method add_handles]) in screen coordinates.
|
||
|
The [Camera] is also provided so screen coordinates can be converted to raycasts.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="set_hidden">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="hidden" type="bool" />
|
||
|
<description>
|
||
|
Sets the gizmo's hidden state. If [code]true[/code], the gizmo will be hidden. If [code]false[/code], it will be shown.
|
||
|
</description>
|
||
|
</method>
|
||
|
<method name="set_spatial_node">
|
||
|
<return type="void" />
|
||
|
<argument index="0" name="node" type="Node" />
|
||
|
<description>
|
||
|
Sets the reference [Spatial] node for the gizmo. [code]node[/code] must inherit from [Spatial].
|
||
|
</description>
|
||
|
</method>
|
||
|
</methods>
|
||
|
<constants>
|
||
|
</constants>
|
||
|
</class>
|