virtualx-engine/doc/classes/ClippedCamera.xml
Hugo Locurcio b087538119
Add an XML schema for documentation
This makes it easier to spot syntax errors when editing the
class reference. The schema is referenced locally so validation
can still work offline.

Each class XML's schema conformance is also checked on GitHub Actions.
2022-03-16 23:01:02 +01:00

95 lines
3.9 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<class name="ClippedCamera" inherits="Camera" version="3.5" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd">
<brief_description>
A [Camera] that includes collision.
</brief_description>
<description>
This node extends [Camera] to add collisions with [Area] and/or [PhysicsBody] nodes. The camera cannot move through colliding objects.
</description>
<tutorials>
</tutorials>
<methods>
<method name="add_exception">
<return type="void" />
<argument index="0" name="node" type="Object" />
<description>
Adds a collision exception so the camera does not collide with the specified node.
</description>
</method>
<method name="add_exception_rid">
<return type="void" />
<argument index="0" name="rid" type="RID" />
<description>
Adds a collision exception so the camera does not collide with the specified [RID].
</description>
</method>
<method name="clear_exceptions">
<return type="void" />
<description>
Removes all collision exceptions.
</description>
</method>
<method name="get_clip_offset" qualifiers="const">
<return type="float" />
<description>
Returns the distance the camera has been offset due to a collision.
</description>
</method>
<method name="get_collision_mask_bit" qualifiers="const">
<return type="bool" />
<argument index="0" name="bit" type="int" />
<description>
Returns [code]true[/code] if the specified bit index is on.
[b]Note:[/b] Bit indices range from 0-19.
</description>
</method>
<method name="remove_exception">
<return type="void" />
<argument index="0" name="node" type="Object" />
<description>
Removes a collision exception with the specified node.
</description>
</method>
<method name="remove_exception_rid">
<return type="void" />
<argument index="0" name="rid" type="RID" />
<description>
Removes a collision exception with the specified [RID].
</description>
</method>
<method name="set_collision_mask_bit">
<return type="void" />
<argument index="0" name="bit" type="int" />
<argument index="1" name="value" type="bool" />
<description>
Sets the specified bit index to the [code]value[/code].
[b]Note:[/b] Bit indices range from 0-19.
</description>
</method>
</methods>
<members>
<member name="clip_to_areas" type="bool" setter="set_clip_to_areas" getter="is_clip_to_areas_enabled" default="false">
If [code]true[/code], the camera stops on contact with [Area]s.
</member>
<member name="clip_to_bodies" type="bool" setter="set_clip_to_bodies" getter="is_clip_to_bodies_enabled" default="true">
If [code]true[/code], the camera stops on contact with [PhysicsBody]s.
</member>
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="1">
The camera's collision mask. Only objects in at least one collision layer matching the mask will be detected. See [url=$DOCS_URL/tutorials/physics/physics_introduction.html#collision-layers-and-masks]Collision layers and masks[/url] in the documentation for more information.
</member>
<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0">
The camera's collision margin. The camera can't get closer than this distance to a colliding object.
</member>
<member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="ClippedCamera.ProcessMode" default="0">
The camera's process callback. See [enum ProcessMode].
</member>
</members>
<constants>
<constant name="CLIP_PROCESS_PHYSICS" value="0" enum="ProcessMode">
The camera updates with the [code]_physics_process[/code] callback.
</constant>
<constant name="CLIP_PROCESS_IDLE" value="1" enum="ProcessMode">
The camera updates with the [code]_process[/code] callback.
</constant>
</constants>
</class>