diff options
Diffstat (limited to 'doc/classes')
-rw-r--r-- | doc/classes/Animation.xml | 16 | ||||
-rw-r--r-- | doc/classes/BaseMaterial3D.xml | 14 | ||||
-rw-r--r-- | doc/classes/Basis.xml | 2 | ||||
-rw-r--r-- | doc/classes/CanvasItem.xml | 10 | ||||
-rw-r--r-- | doc/classes/CanvasTexture.xml | 11 | ||||
-rw-r--r-- | doc/classes/Light3D.xml | 2 | ||||
-rw-r--r-- | doc/classes/MultiplayerPeer.xml | 20 | ||||
-rw-r--r-- | doc/classes/NavigationAgent2D.xml | 2 | ||||
-rw-r--r-- | doc/classes/Node3D.xml | 1 | ||||
-rw-r--r-- | doc/classes/OS.xml | 2 | ||||
-rw-r--r-- | doc/classes/OmniLight3D.xml | 1 | ||||
-rw-r--r-- | doc/classes/ProjectSettings.xml | 13 | ||||
-rw-r--r-- | doc/classes/RenderingDevice.xml | 4 | ||||
-rw-r--r-- | doc/classes/RenderingServer.xml | 6 | ||||
-rw-r--r-- | doc/classes/ResourceFormatSaver.xml | 9 | ||||
-rw-r--r-- | doc/classes/SpotLight3D.xml | 2 | ||||
-rw-r--r-- | doc/classes/StandardMaterial3D.xml | 2 | ||||
-rw-r--r-- | doc/classes/TextEdit.xml | 6 | ||||
-rw-r--r-- | doc/classes/TextLine.xml | 1 | ||||
-rw-r--r-- | doc/classes/Vector3.xml | 8 | ||||
-rw-r--r-- | doc/classes/Vector4i.xml | 8 | ||||
-rw-r--r-- | doc/classes/Viewport.xml | 2 |
22 files changed, 125 insertions, 17 deletions
diff --git a/doc/classes/Animation.xml b/doc/classes/Animation.xml index df0fb11ac7..008296713d 100644 --- a/doc/classes/Animation.xml +++ b/doc/classes/Animation.xml @@ -26,6 +26,7 @@ [/csharp] [/codeblocks] Animations are just data containers, and must be added to nodes such as an [AnimationPlayer] to be played back. Animation tracks have different types, each with its own set of dedicated methods. Check [enum TrackType] to see available types. + [b]Note:[/b] For 3D position/rotation/scale, using the dedicated [constant TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] track types instead of [constant TYPE_VALUE] is recommended for performance reasons. </description> <tutorials> <link title="Animation documentation index">$DOCS_URL/tutorials/animation/index.html</link> @@ -209,6 +210,7 @@ <param index="1" name="time" type="float" /> <param index="2" name="amount" type="float" /> <description> + Inserts a key in a given blend shape track. Returns the key index. </description> </method> <method name="clear"> @@ -223,6 +225,8 @@ <param index="1" name="fps" type="int" default="120" /> <param index="2" name="split_tolerance" type="float" default="4.0" /> <description> + Compress the animation and all its tracks in-place. This will make [method track_is_compressed] return [code]true[/code] once called on this [Animation]. Compressed tracks require less memory to be played, and are designed to be used for complex 3D animations (such as cutscenes) imported from external 3D software. Compression is lossy, but the difference is usually not noticeable in real world conditions. + [b]Note:[/b] Compressed tracks have various limitations (such as not being editable from the editor), so only use compressed animations if you actually need them. </description> </method> <method name="copy_track"> @@ -278,6 +282,7 @@ <param index="1" name="time" type="float" /> <param index="2" name="position" type="Vector3" /> <description> + Inserts a key in a given 3D position track. Returns the key index. </description> </method> <method name="remove_track"> @@ -293,6 +298,7 @@ <param index="1" name="time" type="float" /> <param index="2" name="rotation" type="Quaternion" /> <description> + Inserts a key in a given 3D rotation track. Returns the key index. </description> </method> <method name="scale_track_insert_key"> @@ -301,6 +307,7 @@ <param index="1" name="time" type="float" /> <param index="2" name="scale" type="Vector3" /> <description> + Inserts a key in a given 3D scale track. Returns the key index. </description> </method> <method name="track_find_key" qualifiers="const"> @@ -385,6 +392,7 @@ <return type="bool" /> <param index="0" name="track_idx" type="int" /> <description> + Returns [code]true[/code] if the track is compressed, [code]false[/code] otherwise. See also [method compress]. </description> </method> <method name="track_is_enabled" qualifiers="const"> @@ -569,15 +577,19 @@ </signals> <constants> <constant name="TYPE_VALUE" value="0" enum="TrackType"> - Value tracks set values in node properties, but only those which can be Interpolated. + Value tracks set values in node properties, but only those which can be interpolated. For 3D position/rotation/scale, using the dedicated [constant TYPE_POSITION_3D], [constant TYPE_ROTATION_3D] and [constant TYPE_SCALE_3D] track types instead of [constant TYPE_VALUE] is recommended for performance reasons. </constant> <constant name="TYPE_POSITION_3D" value="1" enum="TrackType"> + 3D position track (values are stored in [Vector3]s). </constant> <constant name="TYPE_ROTATION_3D" value="2" enum="TrackType"> + 3D rotation track (values are stored in [Quaternion]s). </constant> <constant name="TYPE_SCALE_3D" value="3" enum="TrackType"> + 3D scale track (values are stored in [Vector3]s). </constant> <constant name="TYPE_BLEND_SHAPE" value="4" enum="TrackType"> + Blend shape track. </constant> <constant name="TYPE_METHOD" value="5" enum="TrackType"> Method tracks call functions with given arguments per key. @@ -598,7 +610,7 @@ Linear interpolation. </constant> <constant name="INTERPOLATION_CUBIC" value="2" enum="InterpolationType"> - Cubic interpolation. + Cubic interpolation. This looks smoother than linear interpolation, but is more expensive to interpolate. Stick to [constant INTERPOLATION_LINEAR] for complex 3D animations imported from external software, even if it requires using a higher animation framerate in return. </constant> <constant name="INTERPOLATION_LINEAR_ANGLE" value="3" enum="InterpolationType"> Linear interpolation with shortest path rotation. diff --git a/doc/classes/BaseMaterial3D.xml b/doc/classes/BaseMaterial3D.xml index dbc7d0fb29..de980eab0c 100644 --- a/doc/classes/BaseMaterial3D.xml +++ b/doc/classes/BaseMaterial3D.xml @@ -115,7 +115,7 @@ The color used by the backlight effect. Represents the light passing through an object. </member> <member name="backlight_enabled" type="bool" setter="set_feature" getter="get_feature" default="false"> - If [code]true[/code], the backlight effect is enabled. + If [code]true[/code], the backlight effect is enabled. See also [member subsurf_scatter_transmittance_enabled]. </member> <member name="backlight_texture" type="Texture2D" setter="set_texture" getter="get_texture"> Texture used to control the backlight effect per-pixel. Added to [member backlight]. @@ -289,6 +289,7 @@ [b]Note:[/b] If [member detail_enabled] is [code]true[/code], the [member detail_albedo] texture is drawn [i]below[/i] the [member normal_texture]. To display a normal map [i]above[/i] the [member detail_albedo] texture, use [member detail_normal] instead. </member> <member name="orm_texture" type="Texture2D" setter="set_texture" getter="get_texture"> + The Occlusion/Roughness/Metallic texture to use. This is a more efficient replacement of [member ao_texture], [member roughness_texture] and [member metallic_texture] in [ORMMaterial3D]. Ambient occlusion is stored in the red channel. Roughness map is stored in the green channel. Metallic map is stored in the blue channel. The alpha channel is ignored. </member> <member name="particles_anim_h_frames" type="int" setter="set_particles_anim_h_frames" getter="get_particles_anim_h_frames"> The number of horizontal frames in the particle sprite sheet. Only enabled when using [constant BILLBOARD_PARTICLES]. See [member billboard_mode]. @@ -350,13 +351,13 @@ </member> <member name="specular_mode" type="int" setter="set_specular_mode" getter="get_specular_mode" enum="BaseMaterial3D.SpecularMode" default="0"> The method for rendering the specular blob. See [enum SpecularMode]. - [b]Note:[/b] Only applies to the specular blob. Does not affect specular reflections from the Sky, SSR, or ReflectionProbes. + [b]Note:[/b] [member specular_mode] only applies to the specular blob. It does not affect specular reflections from the sky, screen-space reflections, [VoxelGI], SDFGI or [ReflectionProbe]s. To disable reflections from these sources as well, set [member metallic_specular] to [code]0.0[/code] instead. </member> <member name="subsurf_scatter_enabled" type="bool" setter="set_feature" getter="get_feature" default="false"> If [code]true[/code], subsurface scattering is enabled. Emulates light that penetrates an object's surface, is scattered, and then emerges. </member> <member name="subsurf_scatter_skin_mode" type="bool" setter="set_flag" getter="get_flag" default="false"> - If [code]true[/code], subsurface scattering will use a special mode optimized for the color and density of human skin. + If [code]true[/code], subsurface scattering will use a special mode optimized for the color and density of human skin, such as boosting the intensity of the red channel in subsurface scattering. </member> <member name="subsurf_scatter_strength" type="float" setter="set_subsurface_scattering_strength" getter="get_subsurface_scattering_strength" default="0.0"> The strength of the subsurface scattering effect. @@ -365,14 +366,19 @@ Texture used to control the subsurface scattering strength. Stored in the red texture channel. Multiplied by [member subsurf_scatter_strength]. </member> <member name="subsurf_scatter_transmittance_boost" type="float" setter="set_transmittance_boost" getter="get_transmittance_boost" default="0.0"> + The intensity of the subsurface scattering transmittance effect. </member> <member name="subsurf_scatter_transmittance_color" type="Color" setter="set_transmittance_color" getter="get_transmittance_color" default="Color(1, 1, 1, 1)"> + The color to multiply the subsurface scattering transmittance effect with. Ignored if [member subsurf_scatter_skin_mode] is [code]true[/code]. </member> <member name="subsurf_scatter_transmittance_depth" type="float" setter="set_transmittance_depth" getter="get_transmittance_depth" default="0.1"> + The depth of the subsurface scattering transmittance effect. </member> <member name="subsurf_scatter_transmittance_enabled" type="bool" setter="set_feature" getter="get_feature" default="false"> + If [code]true[/code], enables subsurface scattering transmittance. Only effective if [member subsurf_scatter_enabled] is [code]true[/code]. See also [member backlight_enabled]. </member> <member name="subsurf_scatter_transmittance_texture" type="Texture2D" setter="set_texture" getter="get_texture"> + The texture to use for multiplying the intensity of the subsurface scattering transmitteance intensity. See also [member subsurf_scatter_texture]. Ignored if [member subsurf_scatter_skin_mode] is [code]true[/code]. </member> <member name="texture_filter" type="int" setter="set_texture_filter" getter="get_texture_filter" enum="BaseMaterial3D.TextureFilter" default="3"> Filter flags for the texture. See [enum TextureFilter] for options. @@ -385,6 +391,7 @@ If [code]true[/code], transparency is enabled on the body. See also [member blend_mode]. </member> <member name="use_particle_trails" type="bool" setter="set_flag" getter="get_flag" default="false"> + If [code]true[/code], enables parts of the shader required for [GPUParticles3D] trails to function. This also requires using a mesh with appropriate skinning, such as [RibbonTrailMesh] or [TubeTrailMesh]. Enabling this feature outside of materials used in [GPUParticles3D] meshes will break material rendering. </member> <member name="use_point_size" type="bool" setter="set_flag" getter="get_flag" default="false"> If [code]true[/code], render point size can be changed. @@ -682,6 +689,7 @@ Enables the skin mode for subsurface scattering which is used to improve the look of subsurface scattering when used for human skin. </constant> <constant name="FLAG_PARTICLE_TRAILS_MODE" value="19" enum="Flags"> + Enables parts of the shader required for [GPUParticles3D] trails to function. This also requires using a mesh with appropriate skinning, such as [RibbonTrailMesh] or [TubeTrailMesh]. Enabling this feature outside of materials used in [GPUParticles3D] meshes will break material rendering. </constant> <constant name="FLAG_ALBEDO_TEXTURE_MSDF" value="20" enum="Flags"> Enables multichannel signed distance field rendering shader. diff --git a/doc/classes/Basis.xml b/doc/classes/Basis.xml index 0f1f4b57a9..652d6d2407 100644 --- a/doc/classes/Basis.xml +++ b/doc/classes/Basis.xml @@ -70,7 +70,7 @@ <param index="0" name="euler" type="Vector3" /> <param index="1" name="order" type="int" default="2" /> <description> - Creates a [Basis] from the given [Vector3] representing Euler angles. [param order] determines in what order rotation components are applied. Defaults to [constant EULER_ORDER_YXZ]. + Constructs a pure rotation Basis matrix from Euler angles in the specified Euler rotation order. By default, use YXZ order (most common). </description> </method> <method name="from_scale" qualifiers="static"> diff --git a/doc/classes/CanvasItem.xml b/doc/classes/CanvasItem.xml index 947e6a3d4c..b2d3e5cfdb 100644 --- a/doc/classes/CanvasItem.xml +++ b/doc/classes/CanvasItem.xml @@ -535,7 +535,7 @@ </method> </methods> <members> - <member name="clip_children" type="bool" setter="set_clip_children" getter="is_clipping_children" default="false"> + <member name="clip_children" type="int" setter="set_clip_children_mode" getter="get_clip_children_mode" enum="CanvasItem.ClipChildrenMode" default="0"> Allows the current node to clip children nodes, essentially acting as a mask. </member> <member name="light_mask" type="int" setter="set_light_mask" getter="get_light_mask" default="1"> @@ -653,5 +653,13 @@ <constant name="TEXTURE_REPEAT_MAX" value="4" enum="TextureRepeat"> Represents the size of the [enum TextureRepeat] enum. </constant> + <constant name="CLIP_CHILDREN_DISABLED" value="0" enum="ClipChildrenMode"> + </constant> + <constant name="CLIP_CHILDREN_ONLY" value="1" enum="ClipChildrenMode"> + </constant> + <constant name="CLIP_CHILDREN_AND_DRAW" value="2" enum="ClipChildrenMode"> + </constant> + <constant name="CLIP_CHILDREN_MAX" value="3" enum="ClipChildrenMode"> + </constant> </constants> </class> diff --git a/doc/classes/CanvasTexture.xml b/doc/classes/CanvasTexture.xml index ac18c2d474..2dc83790c7 100644 --- a/doc/classes/CanvasTexture.xml +++ b/doc/classes/CanvasTexture.xml @@ -1,25 +1,36 @@ <?xml version="1.0" encoding="UTF-8" ?> <class name="CanvasTexture" inherits="Texture2D" version="4.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../class.xsd"> <brief_description> + Texture with optional normal and specular maps for use in 2D rendering. </brief_description> <description> + [CanvasTexture] is an alternative to [ImageTexture] for 2D rendering. It allows using normal maps and specular maps in any node that inherits from [CanvasItem]. [CanvasTexture] also allows overriding the texture's filter and repeat mode independently of the node's properties (or the project settings). + [b]Note:[/b] [CanvasTexture] cannot be used in 3D rendering. For physically-based materials in 3D, use [BaseMaterial3D] instead. </description> <tutorials> </tutorials> <members> <member name="diffuse_texture" type="Texture2D" setter="set_diffuse_texture" getter="get_diffuse_texture"> + The diffuse (color) texture to use. This is the main texture you want to set in most cases. </member> <member name="normal_texture" type="Texture2D" setter="set_normal_texture" getter="get_normal_texture"> + The normal map texture to use. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. + [b]Note:[/b] Godot expects the normal map to use X+, Y+, and Z+ coordinates. See [url=http://wiki.polycount.com/wiki/Normal_Map_Technical_Details#Common_Swizzle_Coordinates]this page[/url] for a comparison of normal map coordinates expected by popular engines. </member> <member name="specular_color" type="Color" setter="set_specular_color" getter="get_specular_color" default="Color(1, 1, 1, 1)"> + The multiplier for specular reflection colors. The [Light2D]'s color is also taken into account when determining the reflection color. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. </member> <member name="specular_shininess" type="float" setter="set_specular_shininess" getter="get_specular_shininess" default="1.0"> + The specular exponent for [Light2D] specular reflections. Higher values result in a more glossy/"wet" look, with reflections becoming more localized and less visible overall. The default value of [code]1.0[/code] disables specular reflections entirely. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. </member> <member name="specular_texture" type="Texture2D" setter="set_specular_texture" getter="get_specular_texture"> + The specular map to use for [Light2D] specular reflections. This should be a grayscale or colored texture, with brighter areas resulting in a higher [member specular_shininess] value. Using a colored [member specular_texture] allows controlling specular shininess on a per-channel basis. Only has a visible effect if [Light2D]s are affecting this [CanvasTexture]. </member> <member name="texture_filter" type="int" setter="set_texture_filter" getter="get_texture_filter" enum="CanvasItem.TextureFilter" default="0"> + The texture filtering mode to use when drawing this [CanvasTexture]. </member> <member name="texture_repeat" type="int" setter="set_texture_repeat" getter="get_texture_repeat" enum="CanvasItem.TextureRepeat" default="0"> + The texture repeat mode to use when drawing this [CanvasTexture]. </member> </members> </class> diff --git a/doc/classes/Light3D.xml b/doc/classes/Light3D.xml index e9ebbc0a41..60e20cd97d 100644 --- a/doc/classes/Light3D.xml +++ b/doc/classes/Light3D.xml @@ -55,6 +55,7 @@ </member> <member name="light_angular_distance" type="float" setter="set_param" getter="get_param" default="0.0"> The light's angular size in degrees. Increasing this will make shadows softer at greater distances. Only available for [DirectionalLight3D]s. For reference, the Sun from the Earth is approximately [code]0.5[/code]. + [b]Note:[/b] [member light_angular_distance] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). </member> <member name="light_bake_mode" type="int" setter="set_bake_mode" getter="get_bake_mode" enum="Light3D.BakeMode" default="2"> The light's bake mode. This will affect the global illumination techniques that have an effect on the light's rendering. See [enum BakeMode]. @@ -91,6 +92,7 @@ </member> <member name="light_size" type="float" setter="set_param" getter="get_param" default="0.0"> The size of the light in Godot units. Only available for [OmniLight3D]s and [SpotLight3D]s. Increasing this value will make the light fade out slower and shadows appear blurrier. This can be used to simulate area lights to an extent. + [b]Note:[/b] [member light_size] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). </member> <member name="light_specular" type="float" setter="set_param" getter="get_param" default="0.5"> The intensity of the specular blob in objects affected by the light. At [code]0[/code], the light becomes a pure diffuse light. When not baking emission, this can be used to avoid unrealistic reflections when placing lights above an emissive surface. diff --git a/doc/classes/MultiplayerPeer.xml b/doc/classes/MultiplayerPeer.xml index 0f57ff9e55..ba6c60a088 100644 --- a/doc/classes/MultiplayerPeer.xml +++ b/doc/classes/MultiplayerPeer.xml @@ -25,10 +25,22 @@ Returns the current state of the connection. See [enum ConnectionStatus]. </description> </method> + <method name="get_packet_channel" qualifiers="const"> + <return type="int" /> + <description> + Returns the channel over which the next available packet was received. See [method PacketPeer.get_available_packet_count]. + </description> + </method> + <method name="get_packet_mode" qualifiers="const"> + <return type="int" enum="MultiplayerPeer.TransferMode" /> + <description> + Returns the [enum MultiplayerPeer.TransferMode] the remote peer used to send the next available packet. See [method PacketPeer.get_available_packet_count]. + </description> + </method> <method name="get_packet_peer" qualifiers="const"> <return type="int" /> <description> - Returns the ID of the [MultiplayerPeer] who sent the most recent packet. + Returns the ID of the [MultiplayerPeer] who sent the next available packet. See [method PacketPeer.get_available_packet_count]. </description> </method> <method name="get_unique_id" qualifiers="const"> @@ -37,6 +49,12 @@ Returns the ID of this [MultiplayerPeer]. </description> </method> + <method name="is_server_relay_supported" qualifiers="const"> + <return type="bool" /> + <description> + Returns true if the server can act as a relay in the current configuration (i.e. if the higher level [MultiplayerAPI] should notify connected clients of other peers, and implement a relay protocol to allow communication between them). + </description> + </method> <method name="poll"> <return type="void" /> <description> diff --git a/doc/classes/NavigationAgent2D.xml b/doc/classes/NavigationAgent2D.xml index 3437e0eca4..a69491ec66 100644 --- a/doc/classes/NavigationAgent2D.xml +++ b/doc/classes/NavigationAgent2D.xml @@ -163,7 +163,7 @@ </description> </signal> <signal name="velocity_computed"> - <param index="0" name="safe_velocity" type="Vector3" /> + <param index="0" name="safe_velocity" type="Vector2" /> <description> Notifies when the collision avoidance velocity is calculated. Emitted by [method set_velocity]. Only emitted when [member avoidance_enabled] is true. </description> diff --git a/doc/classes/Node3D.xml b/doc/classes/Node3D.xml index 3df7ec931f..bc2570b183 100644 --- a/doc/classes/Node3D.xml +++ b/doc/classes/Node3D.xml @@ -296,6 +296,7 @@ <member name="scale" type="Vector3" setter="set_scale" getter="get_scale" default="Vector3(1, 1, 1)"> Scale part of the local transformation. [b]Note:[/b] Mixed negative scales in 3D are not decomposable from the transformation matrix. Due to the way scale is represented with transformation matrices in Godot, the scale values will either be all positive or all negative. + [b]Note:[/b] Not all nodes are visually scaled by the [member scale] property. For example, [Light3D]s are not visually affected by [member scale]. </member> <member name="top_level" type="bool" setter="set_as_top_level" getter="is_set_as_top_level" default="false"> If [code]true[/code], the node will not inherit its transformations from its parent. Node transformations are only in global space. diff --git a/doc/classes/OS.xml b/doc/classes/OS.xml index 3aa26cbb21..c8491b3a03 100644 --- a/doc/classes/OS.xml +++ b/doc/classes/OS.xml @@ -451,7 +451,7 @@ Returns the video adapter driver name and version for the user's currently active graphics card. The first element holds the driver name, such as [code]nvidia[/code], [code]amdgpu[/code], etc. The second element holds the driver version. For e.g. the [code]nvidia[/code] driver on a Linux/BSD platform, the version is in the format [code]510.85.02[/code]. For Windows, the driver's format is [code]31.0.15.1659[/code]. - [b]Note:[/b] This method is only supported on the platforms Linux/BSD and Windows. It returns an empty array on other platforms. + [b]Note:[/b] This method is only supported on the platforms Linux/BSD and Windows when not running in headless mode. It returns an empty array on other platforms. </description> </method> <method name="has_environment" qualifiers="const"> diff --git a/doc/classes/OmniLight3D.xml b/doc/classes/OmniLight3D.xml index ce63dbdbc1..193ae8deeb 100644 --- a/doc/classes/OmniLight3D.xml +++ b/doc/classes/OmniLight3D.xml @@ -15,6 +15,7 @@ </member> <member name="omni_range" type="float" setter="set_param" getter="get_param" default="5.0"> The light's radius. Note that the effectively lit area may appear to be smaller depending on the [member omni_attenuation] in use. No matter the [member omni_attenuation] in use, the light will never reach anything outside this radius. + [b]Note:[/b] [member omni_range] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). </member> <member name="omni_shadow_mode" type="int" setter="set_shadow_mode" getter="get_shadow_mode" enum="OmniLight3D.ShadowMode" default="1"> See [enum ShadowMode]. diff --git a/doc/classes/ProjectSettings.xml b/doc/classes/ProjectSettings.xml index a8080c70c6..7843104a59 100644 --- a/doc/classes/ProjectSettings.xml +++ b/doc/classes/ProjectSettings.xml @@ -830,6 +830,13 @@ </member> <member name="input/ui_swap_input_direction" type="Dictionary" setter="" getter=""> </member> + <member name="input/ui_text_add_selection_for_next_occurrence" type="Dictionary" setter="" getter=""> + If a selection is currently active with the last caret in text fields, searches for the next occurrence of the selection, adds a caret and selects the next occurrence. + If no selection is currently active with the last caret in text fields, selects the word currently under the caret. + The action can be performed sequentially for all occurrences of the selection of the last caret and for all existing carets. + The viewport is adjusted to the latest newly added caret. + [b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are necessary for the internal logic of several [Control]s. The events assigned to the action can however be modified. + </member> <member name="input/ui_text_backspace" type="Dictionary" setter="" getter=""> Default [InputEventAction] to delete the character before the text cursor. [b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are necessary for the internal logic of several [Control]s. The events assigned to the action can however be modified. @@ -984,7 +991,7 @@ </member> <member name="input/ui_text_select_word_under_caret" type="Dictionary" setter="" getter=""> If no selection is currently active, selects the word currently under the caret in text fields. If a selection is currently active, deselects the current selection. - [b]Note:[/b] Currently, this is only implemented in [TextEdit], not [LineEdit]. + [b]Note:[/b] Default [code]ui_*[/code] actions cannot be removed as they are necessary for the internal logic of several [Control]s. The events assigned to the action can however be modified. </member> <member name="input/ui_text_submit" type="Dictionary" setter="" getter=""> Default [InputEventAction] to submit a text field. @@ -1811,7 +1818,9 @@ Another way to combat specular aliasing is to enable [member rendering/anti_aliasing/screen_space_roughness_limiter/enabled]. </member> <member name="rendering/anti_aliasing/quality/use_debanding" type="bool" setter="" getter="" default="false"> - If [code]true[/code], uses a fast post-processing dithering filter on the default screen [Viewport] to make banding significantly less visible. In some cases, the dithering pattern may be slightly noticable. Note that this will make losslessly compressed (PNG etc.) screenshots larger. + If [code]true[/code], uses a fast post-processing filter to make banding significantly less visible in 3D. 2D rendering is [i]not[/i] affected by debanding unless the [member Environment.background_mode] is [constant Environment.BG_CANVAS]. + In some cases, debanding may introduce a slightly noticeable dithering pattern. It's recommended to enable debanding only when actually needed since the dithering pattern will make lossless-compressed screenshots larger. + [b]Note:[/b] This property is only read when the project starts. To set debanding at run-time, set [member Viewport.use_debanding] on the root [Viewport] instead. </member> <member name="rendering/anti_aliasing/quality/use_taa" type="bool" setter="" getter="" default="false"> Enables Temporal Anti-Aliasing for the default screen [Viewport]. TAA works by jittering the camera and accumulating the images of the last rendered frames, motion vector rendering is used to account for camera and object motion. Enabling TAA can make the image blurrier, which is partially counteracted by automatically using a negative mipmap LOD bias (see [member rendering/textures/default_filters/texture_mipmap_bias]). diff --git a/doc/classes/RenderingDevice.xml b/doc/classes/RenderingDevice.xml index eb85a4adb4..51c2498ea7 100644 --- a/doc/classes/RenderingDevice.xml +++ b/doc/classes/RenderingDevice.xml @@ -1581,6 +1581,10 @@ </constant> <constant name="LIMIT_MAX_COMPUTE_WORKGROUP_SIZE_Z" value="34" enum="Limit"> </constant> + <constant name="LIMIT_MAX_VIEWPORT_DIMENSIONS_X" value="35" enum="Limit"> + </constant> + <constant name="LIMIT_MAX_VIEWPORT_DIMENSIONS_Y" value="36" enum="Limit"> + </constant> <constant name="MEMORY_TEXTURES" value="0" enum="MemoryType"> </constant> <constant name="MEMORY_BUFFERS" value="1" enum="MemoryType"> diff --git a/doc/classes/RenderingServer.xml b/doc/classes/RenderingServer.xml index 6aa9237385..376ba34056 100644 --- a/doc/classes/RenderingServer.xml +++ b/doc/classes/RenderingServer.xml @@ -4576,9 +4576,11 @@ </constant> <constant name="CANVAS_GROUP_MODE_DISABLED" value="0" enum="CanvasGroupMode"> </constant> - <constant name="CANVAS_GROUP_MODE_OPAQUE" value="1" enum="CanvasGroupMode"> + <constant name="CANVAS_GROUP_MODE_CLIP_ONLY" value="1" enum="CanvasGroupMode"> </constant> - <constant name="CANVAS_GROUP_MODE_TRANSPARENT" value="2" enum="CanvasGroupMode"> + <constant name="CANVAS_GROUP_MODE_CLIP_AND_DRAW" value="2" enum="CanvasGroupMode"> + </constant> + <constant name="CANVAS_GROUP_MODE_TRANSPARENT" value="3" enum="CanvasGroupMode"> </constant> <constant name="CANVAS_LIGHT_MODE_POINT" value="0" enum="CanvasLightMode"> </constant> diff --git a/doc/classes/ResourceFormatSaver.xml b/doc/classes/ResourceFormatSaver.xml index 05bfcf3446..1f2af6d157 100644 --- a/doc/classes/ResourceFormatSaver.xml +++ b/doc/classes/ResourceFormatSaver.xml @@ -24,6 +24,15 @@ Returns whether the given resource object can be saved by this saver. </description> </method> + <method name="_recognize_path" qualifiers="virtual const"> + <return type="bool" /> + <param index="0" name="resource" type="Resource" /> + <param index="1" name="path" type="String" /> + <description> + Returns [code]true[/code] if this saver handles a given save path and [code]false[/code] otherwise. + If this method is not implemented, the default behavior returns whether the path's extension is within the ones provided by [method _get_recognized_extensions]. + </description> + </method> <method name="_save" qualifiers="virtual"> <return type="int" /> <param index="0" name="resource" type="Resource" /> diff --git a/doc/classes/SpotLight3D.xml b/doc/classes/SpotLight3D.xml index 62cb55daec..28e2ef0d95 100644 --- a/doc/classes/SpotLight3D.xml +++ b/doc/classes/SpotLight3D.xml @@ -14,6 +14,7 @@ <member name="shadow_bias" type="float" setter="set_param" getter="get_param" overrides="Light3D" default="0.03" /> <member name="spot_angle" type="float" setter="set_param" getter="get_param" default="45.0"> The spotlight's angle in degrees. + [b]Note:[/b] [member spot_angle] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). </member> <member name="spot_angle_attenuation" type="float" setter="set_param" getter="get_param" default="1.0"> The spotlight's angular attenuation curve. @@ -23,6 +24,7 @@ </member> <member name="spot_range" type="float" setter="set_param" getter="get_param" default="5.0"> The maximal range that can be reached by the spotlight. Note that the effectively lit area may appear to be smaller depending on the [member spot_attenuation] in use. No matter the [member spot_attenuation] in use, the light will never reach anything outside this range. + [b]Note:[/b] [member spot_range] is not affected by [member Node3D.scale] (the light's scale or its parent's scale). </member> </members> </class> diff --git a/doc/classes/StandardMaterial3D.xml b/doc/classes/StandardMaterial3D.xml index bd6e5cdfa2..0f6a3168eb 100644 --- a/doc/classes/StandardMaterial3D.xml +++ b/doc/classes/StandardMaterial3D.xml @@ -4,7 +4,7 @@ Physically based rendering (PBR) material that can be applied to 3D objects. </brief_description> <description> - StandardMaterial3D's properties are inherited from [BaseMaterial3D]. + [StandardMaterial3D]'s properties are inherited from [BaseMaterial3D]. [StandardMaterial3D] uses separate textures for ambient occlusion, roughness and metallic maps. To use a single ORM map for all 3 textures, use an [ORMMaterial3D] instead. </description> <tutorials> <link title="Standard Material 3D and ORM Material 3D">$DOCS_URL/tutorials/3d/standard_material_3d.html</link> diff --git a/doc/classes/TextEdit.xml b/doc/classes/TextEdit.xml index b1fda25ecd..879a355f25 100644 --- a/doc/classes/TextEdit.xml +++ b/doc/classes/TextEdit.xml @@ -70,6 +70,12 @@ Register a new gutter to this [TextEdit]. Use [param at] to have a specific gutter order. A value of [code]-1[/code] appends the gutter to the right. </description> </method> + <method name="add_selection_for_next_occurrence"> + <return type="void" /> + <description> + Adds a selection and a caret for the next occurrence of the current selection. If there is no active selection, selects word under caret. + </description> + </method> <method name="adjust_carets_after_edit"> <return type="void" /> <param index="0" name="caret" type="int" /> diff --git a/doc/classes/TextLine.xml b/doc/classes/TextLine.xml index 471c1a9040..d1dfdecbd2 100644 --- a/doc/classes/TextLine.xml +++ b/doc/classes/TextLine.xml @@ -144,6 +144,7 @@ </methods> <members> <member name="alignment" type="int" setter="set_horizontal_alignment" getter="get_horizontal_alignment" enum="HorizontalAlignment" default="0"> + Sets text alignment within the line as if the line was horizontal. </member> <member name="direction" type="int" setter="set_direction" getter="get_direction" enum="TextServer.Direction" default="0"> Text writing direction. diff --git a/doc/classes/Vector3.xml b/doc/classes/Vector3.xml index 81e8dd2260..1a2cdfe10e 100644 --- a/doc/classes/Vector3.xml +++ b/doc/classes/Vector3.xml @@ -183,7 +183,7 @@ <method name="is_normalized" qualifiers="const"> <return type="bool" /> <description> - Returns [code]true[/code] if the vector is normalized, [code]false[/code] otherwise. + Returns [code]true[/code] if the vector is [method normalized], [code]false[/code] otherwise. </description> </method> <method name="is_zero_approx" qualifiers="const"> @@ -244,18 +244,22 @@ <method name="normalized" qualifiers="const"> <return type="Vector3" /> <description> - Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. + Returns the vector scaled to unit length. Equivalent to [code]v / v.length()[/code]. See also [method is_normalized]. </description> </method> <method name="octahedron_decode" qualifiers="static"> <return type="Vector3" /> <param index="0" name="uv" type="Vector2" /> <description> + Returns the [Vector3] from an octahedral-compressed form created using [method octahedron_encode] (stored as a [Vector2]). </description> </method> <method name="octahedron_encode" qualifiers="const"> <return type="Vector2" /> <description> + Returns the octahedral-encoded (oct32) form of this [Vector3] as a [Vector2]. Since a [Vector2] occupies 1/3 less memory compared to [Vector3], this form of compression can be used to pass greater amounts of [method normalized] [Vector3]s without increasing storage or memory requirements. See also [method octahedron_decode]. + [b]Note:[/b] [method octahedron_encode] can only be used for [method normalized] vectors. [method octahedron_encode] does [i]not[/i] check whether this [Vector3] is normalized, and will return a value that does not decompress to the original value if the [Vector3] is not normalized. + [b]Note:[/b] Octahedral compression is [i]lossy[/i], although visual differences are rarely perceptible in real world scenarios. </description> </method> <method name="outer" qualifiers="const"> diff --git a/doc/classes/Vector4i.xml b/doc/classes/Vector4i.xml index 3eea93ce1f..e9ac5b9475 100644 --- a/doc/classes/Vector4i.xml +++ b/doc/classes/Vector4i.xml @@ -133,12 +133,20 @@ <return type="Vector4i" /> <param index="0" name="right" type="Vector4i" /> <description> + Gets the remainder of each component of the [Vector4i] with the components of the given [Vector4i]. This operation uses truncated division, which is often not desired as it does not work well with negative numbers. Consider using [method @GlobalScope.posmod] instead if you want to handle negative numbers. + [codeblock] + print(Vector4i(10, -20, 30, -40) % Vector4i(7, 8, 9, 10)) # Prints "(3, -4, 3, 0)" + [/codeblock] </description> </operator> <operator name="operator %"> <return type="Vector4i" /> <param index="0" name="right" type="int" /> <description> + Gets the remainder of each component of the [Vector4i] with the the given [int]. This operation uses truncated division, which is often not desired as it does not work well with negative numbers. Consider using [method @GlobalScope.posmod] instead if you want to handle negative numbers. + [codeblock] + print(Vector4i(10, -20, 30, -40) % 7) # Prints "(3, -6, 2, -5)" + [/codeblock] </description> </operator> <operator name="operator *"> diff --git a/doc/classes/Viewport.xml b/doc/classes/Viewport.xml index fce94fe567..5706d098e8 100644 --- a/doc/classes/Viewport.xml +++ b/doc/classes/Viewport.xml @@ -306,6 +306,8 @@ If [code]true[/code], the viewport should render its background as transparent. </member> <member name="use_debanding" type="bool" setter="set_use_debanding" getter="is_using_debanding" default="false"> + If [code]true[/code], uses a fast post-processing filter to make banding significantly less visible in 3D. 2D rendering is [i]not[/i] affected by debanding unless the [member Environment.background_mode] is [constant Environment.BG_CANVAS]. See also [member ProjectSettings.rendering/anti_aliasing/quality/use_debanding]. + In some cases, debanding may introduce a slightly noticeable dithering pattern. It's recommended to enable debanding only when actually needed since the dithering pattern will make lossless-compressed screenshots larger. </member> <member name="use_occlusion_culling" type="bool" setter="set_use_occlusion_culling" getter="is_using_occlusion_culling" default="false"> If [code]true[/code], [OccluderInstance3D] nodes will be usable for occlusion culling in 3D for this viewport. For the root viewport, [member ProjectSettings.rendering/occlusion_culling/use_occlusion_culling] must be set to [code]true[/code] instead. |