2018-08-29 22:25:11 +02:00
|
|
|
<?xml version="1.0" encoding="UTF-8" ?>
|
2020-03-30 18:22:57 +02:00
|
|
|
<class name="ClippedCamera3D" inherits="Camera3D" version="4.0">
|
2018-08-29 22:25:11 +02:00
|
|
|
<brief_description>
|
2020-03-30 18:22:57 +02:00
|
|
|
A [Camera3D] that includes collision.
|
2018-08-29 22:25:11 +02:00
|
|
|
</brief_description>
|
|
|
|
<description>
|
2020-03-30 18:22:57 +02:00
|
|
|
This node extends [Camera3D] to add collisions with [Area3D] and/or [PhysicsBody3D] nodes. The camera cannot move through colliding objects.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
<tutorials>
|
|
|
|
</tutorials>
|
|
|
|
<methods>
|
|
|
|
<method name="add_exception">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="node" type="Object">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Adds a collision exception so the camera does not collide with the specified node.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="add_exception_rid">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="rid" type="RID">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Adds a collision exception so the camera does not collide with the specified [RID].
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="clear_exceptions">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Removes all collision exceptions.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
2019-06-15 00:04:55 +02:00
|
|
|
<method name="get_clip_offset" qualifiers="const">
|
|
|
|
<return type="float">
|
|
|
|
</return>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Returns the distance the camera has been offset due to a collision.
|
2019-06-15 00:04:55 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
2018-08-29 22:25:11 +02:00
|
|
|
<method name="get_collision_mask_bit" qualifiers="const">
|
|
|
|
<return type="bool">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="bit" type="int">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Returns [code]true[/code] if the specified bit index is on.
|
|
|
|
[b]Note:[/b] Bit indices range from 0-19.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="remove_exception">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="node" type="Object">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Removes a collision exception with the specified node.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="remove_exception_rid">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="rid" type="RID">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Removes a collision exception with the specified [RID].
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
<method name="set_collision_mask_bit">
|
|
|
|
<return type="void">
|
|
|
|
</return>
|
|
|
|
<argument index="0" name="bit" type="int">
|
|
|
|
</argument>
|
|
|
|
<argument index="1" name="value" type="bool">
|
|
|
|
</argument>
|
|
|
|
<description>
|
2019-10-06 19:56:23 +02:00
|
|
|
Sets the specified bit index to the [code]value[/code].
|
|
|
|
[b]Note:[/b] Bit indices range from 0-19.
|
2018-08-29 22:25:11 +02:00
|
|
|
</description>
|
|
|
|
</method>
|
|
|
|
</methods>
|
|
|
|
<members>
|
2019-06-29 12:38:01 +02:00
|
|
|
<member name="clip_to_areas" type="bool" setter="set_clip_to_areas" getter="is_clip_to_areas_enabled" default="false">
|
2020-03-30 18:22:57 +02:00
|
|
|
If [code]true[/code], the camera stops on contact with [Area3D]s.
|
2018-08-29 22:25:11 +02:00
|
|
|
</member>
|
2019-06-29 12:38:01 +02:00
|
|
|
<member name="clip_to_bodies" type="bool" setter="set_clip_to_bodies" getter="is_clip_to_bodies_enabled" default="true">
|
2020-03-30 18:22:57 +02:00
|
|
|
If [code]true[/code], the camera stops on contact with [PhysicsBody3D]s.
|
2018-08-29 22:25:11 +02:00
|
|
|
</member>
|
2019-06-29 12:38:01 +02:00
|
|
|
<member name="collision_mask" type="int" setter="set_collision_mask" getter="get_collision_mask" default="1">
|
2019-10-06 19:56:23 +02:00
|
|
|
The camera's collision mask. Only objects in at least one collision layer matching the mask will be detected.
|
2018-08-29 22:25:11 +02:00
|
|
|
</member>
|
2019-06-29 12:38:01 +02:00
|
|
|
<member name="margin" type="float" setter="set_margin" getter="get_margin" default="0.0">
|
2019-10-06 19:56:23 +02:00
|
|
|
The camera's collision margin. The camera can't get closer than this distance to a colliding object.
|
2018-08-29 22:25:11 +02:00
|
|
|
</member>
|
2020-03-30 18:22:57 +02:00
|
|
|
<member name="process_mode" type="int" setter="set_process_mode" getter="get_process_mode" enum="ClippedCamera3D.ProcessMode" default="0">
|
2019-10-06 19:56:23 +02:00
|
|
|
The camera's process callback. See [enum ProcessMode].
|
2018-08-29 22:25:11 +02:00
|
|
|
</member>
|
|
|
|
</members>
|
|
|
|
<constants>
|
|
|
|
<constant name="CLIP_PROCESS_PHYSICS" value="0" enum="ProcessMode">
|
2019-10-06 19:56:23 +02:00
|
|
|
The camera updates with the [code]_physics_process[/code] callback.
|
2018-08-29 22:25:11 +02:00
|
|
|
</constant>
|
|
|
|
<constant name="CLIP_PROCESS_IDLE" value="1" enum="ProcessMode">
|
2019-10-06 19:56:23 +02:00
|
|
|
The camera updates with the [code]_process[/code] callback.
|
2018-08-29 22:25:11 +02:00
|
|
|
</constant>
|
|
|
|
</constants>
|
|
|
|
</class>
|