godot/doc/classes/VisibilityEnabler.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

51 lines
2.5 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="VisibilityEnabler" inherits="VisibilityNotifier" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
Enables certain nodes only when approximately visible.
</brief_description>
<description>
The VisibilityEnabler will disable [RigidBody] and [AnimationPlayer] nodes when they are not visible. It will only affect other nodes within the same scene as the VisibilityEnabler itself.
If you just want to receive notifications, use [VisibilityNotifier] instead.
[b]Note:[/b] VisibilityEnabler 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].
[b]Note:[/b] VisibilityEnabler will not affect nodes added after scene initialization.
</description>
<tutorials>
</tutorials>
<methods>
<method name="is_enabler_enabled" qualifiers="const">
<return type="bool" />
<argument index="0" name="enabler" type="int" enum="VisibilityEnabler.Enabler" />
<description>
Returns whether the enabler identified by given [enum Enabler] constant is active.
</description>
</method>
<method name="set_enabler">
<return type="void" />
<argument index="0" name="enabler" type="int" enum="VisibilityEnabler.Enabler" />
<argument index="1" name="enabled" type="bool" />
<description>
Sets active state of the enabler identified by given [enum Enabler] constant.
</description>
</method>
</methods>
<members>
<member name="freeze_bodies" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
If [code]true[/code], [RigidBody] nodes will be paused.
</member>
<member name="pause_animations" type="bool" setter="set_enabler" getter="is_enabler_enabled" default="true">
If [code]true[/code], [AnimationPlayer] nodes will be paused.
</member>
</members>
<constants>
<constant name="ENABLER_PAUSE_ANIMATIONS" value="0" enum="Enabler">
This enabler will pause [AnimationPlayer] nodes.
</constant>
<constant name="ENABLER_FREEZE_BODIES" value="1" enum="Enabler">
This enabler will freeze [RigidBody] nodes.
</constant>
<constant name="ENABLER_MAX" value="2" enum="Enabler">
Represents the size of the [enum Enabler] enum.
</constant>
</constants>
</class>