Gets the scalar intensity multiplier.
Sets the scalar intensity multiplier and flags the node as dirty.
Gets the material associated with this node if it is a Mesh, or recursively searches descendants and returns the material of the first child Mesh found.
The Material instance, or null if none was found.
Sets the material for this node (if it is a Mesh) or recursively applies it to all descendant Mesh nodes.
The Material instance to assign.
Gets all unique materials associated with this node and its descendants.
An array of Material instances.
Gets the spatial 3D position vector of this node. Modifying individual components of this vector will automatically flag the node as dirty.
Sets the spatial 3D position vector of this node. Copies the components of the incoming vector and flags the node as dirty.
Gets the spatial Euler rotation vector (pitch, yaw, roll) in radians. Modifying individual components of this vector will automatically flag the node as dirty.
Sets the spatial Euler rotation vector (pitch, yaw, roll) in radians. Copies the components of the incoming vector and flags the node as dirty.
Gets the spatial Euler rotation vector in degrees. Accessing or mutating components of this proxy converts automatically to/from radians.
Sets the spatial Euler rotation vector in degrees. Converts the incoming components to radians and flags the node as dirty.
Gets the spatial 3D scale vector of this node. Modifying individual components of this vector will automatically flag the node as dirty.
Sets the spatial 3D scale vector of this node. Copies the components of the incoming vector and flags the node as dirty.
Instantiates a new PointLight node.
Custom PointLight parameters.
Adds a child node to this node's hierarchy. If the child already has a parent, it is automatically removed from that parent first. Sets the child's dirty flag to true to force transform updates.
The Node instance to append as a child.
Packs world-space translation coordinates and point-light type flags.
Aligned point LightGPUData.
Retrieves the active shadow projection config mapping.
The configuration parameters, or null if shadow casting is disabled.
Computes and returns the world-space bounding box (AABB) of this node's collision shape. Transform the local shape bounds by the node's current world-space transformation matrix.
The transformed AABB bounding box, or null if no collision shape is set.
Determines if this node's world-space collision bounds overlap with another node's bounds. Both nodes must have active collision shapes; returns false otherwise.
The other Node3D instance to test against.
True if the world-space AABBs intersect, false otherwise.
Removes a child node from this node's hierarchy. Clears the parent reference of the child node and sets its dirty flag.
The Node instance to detach.
Helper method to set position, rotation, and scale components simultaneously. Copies existing components from provided vectors and marks the node transform as dirty.
Performs a depth-first traversal of the node hierarchy starting from this node, executing the provided callback on each visited node.
The function to invoke for each node.
Recomputes the local transformation matrix (localMatrix) by applying
translation, Euler rotation, and scaling transformations sequentially.
Overrides the base Node behavior to process component values.
Updates the global world matrix of this node and recursively propagates the updates down the hierarchy to all child nodes.
If true, forces transformation matrices to be recomputed even if they are not flagged as dirty.
Enables depth projection (not yet implemented for omnidirectional point lights).
ReadonlychildrenList of child nodes belonging to this node.
Optional collision shape representing the physical bounds of this node. Utilized for standard AABB intersection tests and spatial overlap checks.
Whether the local transform has changed and needs to be recomputed and propagated.
Local transformation matrix relative to the parent node.
Unique identifier or friendly name for the node.
Parent node in the scene graph. Null if this is the root node.
Linear distance limit at which point light attenuation falls to zero.
Visibility flag. If false, this node and its descendants are typically skipped in rendering.
Global world transformation matrix relative to the scene origin.
PointLight represents an omnidirectional light source emitting light rays uniformly outward from a single point in space (e.g. light bulbs). Attenuates based on distance and defined radius limits.