diff options
Diffstat (limited to 'doc/classes/Camera3D.xml')
-rw-r--r-- | doc/classes/Camera3D.xml | 74 |
1 files changed, 38 insertions, 36 deletions
diff --git a/doc/classes/Camera3D.xml b/doc/classes/Camera3D.xml index 56e5ce1522..65fdecc3c6 100644 --- a/doc/classes/Camera3D.xml +++ b/doc/classes/Camera3D.xml @@ -12,9 +12,9 @@ <methods> <method name="clear_current"> <return type="void" /> - <argument index="0" name="enable_next" type="bool" default="true" /> + <param index="0" name="enable_next" type="bool" default="true" /> <description> - If this is the current camera, remove it from being current. If [code]enable_next[/code] is [code]true[/code], request to make the next camera current, if any. + If this is the current camera, remove it from being current. If [param enable_next] is [code]true[/code], request to make the next camera current, if any. </description> </method> <method name="get_camera_rid" qualifiers="const"> @@ -31,13 +31,13 @@ </method> <method name="get_cull_mask_value" qualifiers="const"> <return type="bool" /> - <argument index="0" name="layer_number" type="int" /> + <param index="0" name="layer_number" type="int" /> <description> - Returns whether or not the specified layer of the [member cull_mask] is enabled, given a [code]layer_number[/code] between 1 and 20. + Returns whether or not the specified layer of the [member cull_mask] is enabled, given a [param layer_number] between 1 and 20. </description> </method> <method name="get_frustum" qualifiers="const"> - <return type="Array" /> + <return type="Plane[]" /> <description> Returns the camera's frustum planes in world space units as an array of [Plane]s in the following order: near, far, left, top, right, bottom. Not to be confused with [member frustum_offset]. </description> @@ -50,7 +50,7 @@ </method> <method name="is_position_behind" qualifiers="const"> <return type="bool" /> - <argument index="0" name="world_point" type="Vector3" /> + <param index="0" name="world_point" type="Vector3" /> <description> Returns [code]true[/code] if the given position is behind the camera (the blue part of the linked diagram). [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/camera3d_position_frustum.png]See this diagram[/url] for an overview of position query methods. [b]Note:[/b] A position which returns [code]false[/code] may still be outside the camera's field of view. @@ -58,7 +58,7 @@ </method> <method name="is_position_in_frustum" qualifiers="const"> <return type="bool" /> - <argument index="0" name="world_point" type="Vector3" /> + <param index="0" name="world_point" type="Vector3" /> <description> Returns [code]true[/code] if the given position is inside the camera's frustum (the green part of the linked diagram). [url=https://raw.githubusercontent.com/godotengine/godot-docs/master/img/camera3d_position_frustum.png]See this diagram[/url] for an overview of position query methods. </description> @@ -71,72 +71,72 @@ </method> <method name="project_local_ray_normal" qualifiers="const"> <return type="Vector3" /> - <argument index="0" name="screen_point" type="Vector2" /> + <param index="0" name="screen_point" type="Vector2" /> <description> Returns a normal vector from the screen point location directed along the camera. Orthogonal cameras are normalized. Perspective cameras account for perspective, screen width/height, etc. </description> </method> <method name="project_position" qualifiers="const"> <return type="Vector3" /> - <argument index="0" name="screen_point" type="Vector2" /> - <argument index="1" name="z_depth" type="float" /> + <param index="0" name="screen_point" type="Vector2" /> + <param index="1" name="z_depth" type="float" /> <description> - Returns the 3D point in world space that maps to the given 2D coordinate in the [Viewport] rectangle on a plane that is the given [code]z_depth[/code] distance into the scene away from the camera. + Returns the 3D point in world space that maps to the given 2D coordinate in the [Viewport] rectangle on a plane that is the given [param z_depth] distance into the scene away from the camera. </description> </method> <method name="project_ray_normal" qualifiers="const"> <return type="Vector3" /> - <argument index="0" name="screen_point" type="Vector2" /> + <param index="0" name="screen_point" type="Vector2" /> <description> Returns a normal vector in world space, that is the result of projecting a point on the [Viewport] rectangle by the inverse camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking. </description> </method> <method name="project_ray_origin" qualifiers="const"> <return type="Vector3" /> - <argument index="0" name="screen_point" type="Vector2" /> + <param index="0" name="screen_point" type="Vector2" /> <description> Returns a 3D position in world space, that is the result of projecting a point on the [Viewport] rectangle by the inverse camera projection. This is useful for casting rays in the form of (origin, normal) for object intersection or picking. </description> </method> <method name="set_cull_mask_value"> <return type="void" /> - <argument index="0" name="layer_number" type="int" /> - <argument index="1" name="value" type="bool" /> + <param index="0" name="layer_number" type="int" /> + <param index="1" name="value" type="bool" /> <description> - Based on [code]value[/code], enables or disables the specified layer in the [member cull_mask], given a [code]layer_number[/code] between 1 and 20. + Based on [param value], enables or disables the specified layer in the [member cull_mask], given a [param layer_number] between 1 and 20. </description> </method> <method name="set_frustum"> <return type="void" /> - <argument index="0" name="size" type="float" /> - <argument index="1" name="offset" type="Vector2" /> - <argument index="2" name="z_near" type="float" /> - <argument index="3" name="z_far" type="float" /> + <param index="0" name="size" type="float" /> + <param index="1" name="offset" type="Vector2" /> + <param index="2" name="z_near" type="float" /> + <param index="3" name="z_far" type="float" /> <description> - Sets the camera projection to frustum mode (see [constant PROJECTION_FRUSTUM]), by specifying a [code]size[/code], an [code]offset[/code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in world space units. + Sets the camera projection to frustum mode (see [constant PROJECTION_FRUSTUM]), by specifying a [param size], an [param offset], and the [param z_near] and [param z_far] clip planes in world space units. See also [member frustum_offset]. </description> </method> <method name="set_orthogonal"> <return type="void" /> - <argument index="0" name="size" type="float" /> - <argument index="1" name="z_near" type="float" /> - <argument index="2" name="z_far" type="float" /> + <param index="0" name="size" type="float" /> + <param index="1" name="z_near" type="float" /> + <param index="2" name="z_far" type="float" /> <description> - Sets the camera projection to orthogonal mode (see [constant PROJECTION_ORTHOGONAL]), by specifying a [code]size[/code], and the [code]z_near[/code] and [code]z_far[/code] clip planes in world space units. (As a hint, 2D games often use this projection, with values specified in pixels.) + Sets the camera projection to orthogonal mode (see [constant PROJECTION_ORTHOGONAL]), by specifying a [param size], and the [param z_near] and [param z_far] clip planes in world space units. (As a hint, 2D games often use this projection, with values specified in pixels.) </description> </method> <method name="set_perspective"> <return type="void" /> - <argument index="0" name="fov" type="float" /> - <argument index="1" name="z_near" type="float" /> - <argument index="2" name="z_far" type="float" /> + <param index="0" name="fov" type="float" /> + <param index="1" name="z_near" type="float" /> + <param index="2" name="z_far" type="float" /> <description> - Sets the camera projection to perspective mode (see [constant PROJECTION_PERSPECTIVE]), by specifying a [code]fov[/code] (field of view) angle in degrees, and the [code]z_near[/code] and [code]z_far[/code] clip planes in world space units. + Sets the camera projection to perspective mode (see [constant PROJECTION_PERSPECTIVE]), by specifying a [param fov] (field of view) angle in degrees, and the [param z_near] and [param z_far] clip planes in world space units. </description> </method> <method name="unproject_position" qualifiers="const"> <return type="Vector2" /> - <argument index="0" name="world_point" type="Vector3" /> + <param index="0" name="world_point" type="Vector3" /> <description> Returns the 2D coordinate in the [Viewport] rectangle that maps to the given 3D point in world space. [b]Note:[/b] When using this to position GUI elements over a 3D viewport, use [method is_position_behind] to prevent them from appearing if the 3D point is behind the camera: @@ -144,7 +144,7 @@ # This code block is part of a script that inherits from Node3D. # `control` is a reference to a node inheriting from Control. control.visible = not get_viewport().get_camera_3d().is_position_behind(global_transform.origin) - control.rect_position = get_viewport().get_camera_3d().unproject_position(global_transform.origin) + control.position = get_viewport().get_camera_3d().unproject_position(global_transform.origin) [/codeblock] </description> </method> @@ -155,6 +155,7 @@ </member> <member name="current" type="bool" setter="set_current" getter="is_current" default="false"> If [code]true[/code], the ancestor [Viewport] is currently using this camera. + If multiple cameras are in the scene, one will always be made current. For example, if two [Camera3D] nodes are present in the scene and only one is current, setting one camera's [member current] to [code]false[/code] will cause the other camera to be made current. </member> <member name="doppler_tracking" type="int" setter="set_doppler_tracking" getter="get_doppler_tracking" enum="Camera3D.DopplerTracking" default="0"> If not [constant DOPPLER_TRACKING_DISABLED], this camera will simulate the [url=https://en.wikipedia.org/wiki/Doppler_effect]Doppler effect[/url] for objects changed in particular [code]_process[/code] methods. See [enum DopplerTracking] for possible values. @@ -178,6 +179,7 @@ </member> <member name="frustum_offset" type="Vector2" setter="set_frustum_offset" getter="get_frustum_offset" default="Vector2(0, 0)"> The camera's frustum offset. This can be changed from the default to create "tilted frustum" effects such as [url=https://zdoom.org/wiki/Y-shearing]Y-shearing[/url]. + [b]Note:[/b] Only effective if [member projection] is [constant PROJECTION_FRUSTUM]. </member> <member name="h_offset" type="float" setter="set_h_offset" getter="get_h_offset" default="0.0"> The horizontal (X) offset of the camera viewport. @@ -188,24 +190,24 @@ <member name="near" type="float" setter="set_near" getter="get_near" default="0.05"> The distance to the near culling boundary for this camera relative to its local Z axis. </member> - <member name="projection" type="int" setter="set_projection" getter="get_projection" enum="Camera3D.Projection" default="0"> + <member name="projection" type="int" setter="set_projection" getter="get_projection" enum="Camera3D.ProjectionType" default="0"> The camera's projection mode. In [constant PROJECTION_PERSPECTIVE] mode, objects' Z distance from the camera's local space scales their perceived size. </member> <member name="size" type="float" setter="set_size" getter="get_size" default="1.0"> - The camera's size measured as 1/2 the width or height. Only applicable in orthogonal and frustum modes. Since [member keep_aspect] locks on axis, [code]size[/code] sets the other axis' size length. + The camera's size in meters measured as the diameter of the width or height, depending on [member keep_aspect]. Only applicable in orthogonal and frustum modes. </member> <member name="v_offset" type="float" setter="set_v_offset" getter="get_v_offset" default="0.0"> The vertical (Y) offset of the camera viewport. </member> </members> <constants> - <constant name="PROJECTION_PERSPECTIVE" value="0" enum="Projection"> + <constant name="PROJECTION_PERSPECTIVE" value="0" enum="ProjectionType"> Perspective projection. Objects on the screen becomes smaller when they are far away. </constant> - <constant name="PROJECTION_ORTHOGONAL" value="1" enum="Projection"> + <constant name="PROJECTION_ORTHOGONAL" value="1" enum="ProjectionType"> Orthogonal projection, also known as orthographic projection. Objects remain the same size on the screen no matter how far away they are. </constant> - <constant name="PROJECTION_FRUSTUM" value="2" enum="Projection"> + <constant name="PROJECTION_FRUSTUM" value="2" enum="ProjectionType"> Frustum projection. This mode allows adjusting [member frustum_offset] to create "tilted frustum" effects. </constant> <constant name="KEEP_WIDTH" value="0" enum="KeepAspect"> |