Most basic 3D game object, parent of all 3D related nodes. Most basic 3D game object, with a 3D [Transform] and visibility settings. All other 3D game objects inherit from Spatial. Use Spatial as a parent node to move, scale, rotate and show/hide children in a 3D project. Returns the SpatialGizmo for this node. Used for example in [EditorSpatialGizmo] as custom visualization and editing handles in Editor. Returns the parent [code]Spatial[/code], or an empty [Object] if no parent exists or parent is not of type [code]Spatial[/code]. Returns the current [World] resource this Spatial node is registered to. Rotates the current node along normal [Vector3] by angle in radians in Global space. Moves the node by [Vector3] offset in Global space. Disables rendering of this node. Change Spatial Visible property to false. Returns whether node notifies about its local transformation changes. Spatial will not propagate this by default. Returns whether this node is set as Toplevel, that is whether it ignores its parent nodes transformations. Returns whether the node notifies about its global and local transformation changes. Spatial will not propagate this by default. Returns whether the node is visible, taking into consideration that its parents visibility. Rotates itself to point into direction of target position. Operations take place in global space. Moves the node to specified position and then rotates itself to point into direction of target position. Operations take place in global space. Resets this node's transformations (like scale, skew and taper) preserving its rotation and translation. Performs orthonormalization on this node [Transform3D]. Rotates the node in local space on given normal [Vector3] by angle in radians. Rotates the node in local space on X axis by angle in radians. Rotates the node in local space on Y axis by angle in radians. Rotates the node in local space on Z axis by angle in radians. Makes the node ignore its parents transformations. Node transformations are only in global space. Set [SpatialGizmo] for this node. Used for example in [EditorSpatialGizmo] as custom visualization and editing handles in Editor. Reset all transformations for this node. Set its [Transform3D] to identity matrix. Set whether the node ignores notification that its transformation (global or local) changed. Set whether the node notifies about its local transformation changes. Spatial will not propagate this by default. Set whether the node notifies about its global and local transformation changes. Spatial will not propagate this by default. Enables rendering of this node. Change Spatial Visible property to "True". Transforms [Vector3] "local_point" from this node's local space to world space. Transforms [Vector3] "global_point" from world space to this node's local space. Changes the node's position by given offset [Vector3]. Updates the [SpatialGizmo] of this node. World space (global) [Transform] of this node. Local euler rotation in radians of this node. Local euler rotation in degrees of this node. Local scale of this node. Local space [Transform] of this node. Local translation of this node. Visibility of this node. Toggles if this node is rendered. Emitted when node visibility changes. Spatial nodes receives this notification when their global transform changes. This means that either the current or a parent node changed its transform. In order for NOTIFICATION_TRANSFORM_CHANGED to work user first needs to ask for it, with set_notify_transform(true). Spatial nodes receives this notification when they are registered to new [World] resource. Spatial nodes receives this notification when they are unregistered from current [World] resource. Spatial nodes receives this notification when their visibility changes.