Files
godot/doc/classes/VisibilityNotifier.xml
Rémi Verschelde 32ddd4f4e0 Doctool: Remove version attribute from XML header
We don't use that info for anything, and it generates unnecessary diffs
every time we bump the minor version (and CI failures if we forget to
sync some files from opt-in modules (mono, text_server_fb).

(cherry picked from commit 81064cc239)
2024-09-11 12:41:48 +02:00

58 lines
2.8 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisibilityNotifier" inherits="CullInstance" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
Detects approximately when the node is visible on screen.
</brief_description>
<description>
The VisibilityNotifier detects when it is visible on the screen. It also notifies when its bounding rectangle enters or exits the screen or a [Camera]'s view.
If you want nodes to be disabled automatically when they exit the screen, use [VisibilityEnabler] instead.
[b]Note:[/b] VisibilityNotifier uses an approximate heuristic for performance reasons. It doesn't take walls and other occlusion into account (unless you are using [Portal]s). 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 [Area] node as a child of a [Camera] node and/or [method Vector3.dot].
</description>
<tutorials>
</tutorials>
<methods>
<method name="is_on_screen" qualifiers="const">
<return type="bool" />
<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 VisibilityNotifier's bounding box.
</member>
<member name="max_distance" type="float" setter="set_max_distance" getter="get_max_distance" default="0.0">
In addition to checking whether a node is on screen or within a [Camera]'s view, VisibilityNotifier can also optionally check whether a node is within a specified maximum distance when using a [Camera] with perspective projection. This is useful for throttling the performance requirements of nodes that are far away.
[b]Note:[/b] This feature will be disabled if set to 0.0.
</member>
</members>
<signals>
<signal name="camera_entered">
<argument index="0" name="camera" type="Camera" />
<description>
Emitted when the VisibilityNotifier enters a [Camera]'s view.
</description>
</signal>
<signal name="camera_exited">
<argument index="0" name="camera" type="Camera" />
<description>
Emitted when the VisibilityNotifier exits a [Camera]'s view.
</description>
</signal>
<signal name="screen_entered">
<description>
Emitted when the VisibilityNotifier enters the screen.
</description>
</signal>
<signal name="screen_exited">
<description>
Emitted when the VisibilityNotifier exits the screen.
</description>
</signal>
</signals>
<constants>
</constants>
</class>