* This is the 3D counterpart to #49632 * Implemented a bit different as 3D works using instancing After merged, both 2D and 3D classes will most likely be renamed in a separate PR to DisplayNotifier2D/3D.
42 lines
1.9 KiB
XML
42 lines
1.9 KiB
XML
<?xml version="1.0" encoding="UTF-8" ?>
|
|
<class name="VisibilityNotifier3D" inherits="VisualInstance3D" version="4.0">
|
|
<brief_description>
|
|
Detects approximately when the node is visible on screen.
|
|
</brief_description>
|
|
<description>
|
|
The VisibilityNotifier3D detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a [Camera3D]'s view.
|
|
If you want nodes to be disabled automatically when they exit the screen, use [VisibilityEnabler3D] instead.
|
|
[b]Note:[/b] VisibilityNotifier3D uses an approximate heuristic for performance reasons. It doesn't take walls and other occlusion into account. The heuristic is an implementation detail and may change in future versions. If you need precise visibility checking, use another method such as adding an [Area3D] node as a child of a [Camera3D] node and/or [method Vector3.dot].
|
|
</description>
|
|
<tutorials>
|
|
</tutorials>
|
|
<methods>
|
|
<method name="is_on_screen" qualifiers="const">
|
|
<return type="bool">
|
|
</return>
|
|
<description>
|
|
If [code]true[/code], the bounding box is on the screen.
|
|
[b]Note:[/b] It takes one frame for the node's visibility to be assessed once added to the scene tree, so this method will return [code]false[/code] right after it is instantiated, even if it will be on screen in the draw pass.
|
|
</description>
|
|
</method>
|
|
</methods>
|
|
<members>
|
|
<member name="aabb" type="AABB" setter="set_aabb" getter="get_aabb" default="AABB( -1, -1, -1, 2, 2, 2 )">
|
|
The VisibilityNotifier3D's bounding box.
|
|
</member>
|
|
</members>
|
|
<signals>
|
|
<signal name="screen_entered">
|
|
<description>
|
|
Emitted when the VisibilityNotifier3D enters the screen.
|
|
</description>
|
|
</signal>
|
|
<signal name="screen_exited">
|
|
<description>
|
|
Emitted when the VisibilityNotifier3D exits the screen.
|
|
</description>
|
|
</signal>
|
|
</signals>
|
|
<constants>
|
|
</constants>
|
|
</class>
|