diff --git a/classes/class_@globalscope.rst b/classes/class_@globalscope.rst index 6376f0082..babc262f9 100644 --- a/classes/class_@globalscope.rst +++ b/classes/class_@globalscope.rst @@ -99,185 +99,187 @@ Properties Methods ------- -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`abs` **(** :ref:`Variant` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`absf` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`absi` **(** :ref:`int` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`acos` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`asin` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`atan` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`atan2` **(** :ref:`float` y, :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`bytes2var` **(** :ref:`PackedByteArray` bytes **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`bytes2var_with_objects` **(** :ref:`PackedByteArray` bytes **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`ceil` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`clamp` **(** :ref:`Variant` value, :ref:`Variant` min, :ref:`Variant` max **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`clampf` **(** :ref:`float` value, :ref:`float` min, :ref:`float` max **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`clampi` **(** :ref:`int` value, :ref:`int` min, :ref:`int` max **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`cos` **(** :ref:`float` angle_rad **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`cosh` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`db2linear` **(** :ref:`float` db **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`deg2rad` **(** :ref:`float` deg **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`ease` **(** :ref:`float` x, :ref:`float` curve **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`error_string` **(** :ref:`int` error **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`exp` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`floor` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`fmod` **(** :ref:`float` x, :ref:`float` y **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`fposmod` **(** :ref:`float` x, :ref:`float` y **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`hash` **(** :ref:`Variant` variable **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Object` | :ref:`instance_from_id` **(** :ref:`int` instance_id **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`inverse_lerp` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_equal_approx` **(** :ref:`float` a, :ref:`float` b **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_inf` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_instance_id_valid` **(** :ref:`int` id **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_instance_valid` **(** :ref:`Variant` instance **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_nan` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_zero_approx` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`lerp` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`lerp_angle` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`linear2db` **(** :ref:`float` lin **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`log` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`max` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`maxf` **(** :ref:`float` a, :ref:`float` b **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`maxi` **(** :ref:`int` a, :ref:`int` b **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`min` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`minf` **(** :ref:`float` a, :ref:`float` b **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`mini` **(** :ref:`int` a, :ref:`int` b **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`move_toward` **(** :ref:`float` from, :ref:`float` to, :ref:`float` delta **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`nearest_po2` **(** :ref:`int` value **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`pingpong` **(** :ref:`float` value, :ref:`float` length **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`posmod` **(** :ref:`int` x, :ref:`int` y **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`pow` **(** :ref:`float` base, :ref:`float` exp **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`print` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`print_verbose` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`printerr` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`printraw` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`prints` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`printt` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`push_error` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`push_warning` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`rad2deg` **(** :ref:`float` rad **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt64Array` | :ref:`rand_from_seed` **(** :ref:`int` seed **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`randf` **(** **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`randf_range` **(** :ref:`float` from, :ref:`float` to **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`randfn` **(** :ref:`float` mean, :ref:`float` deviation **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`randi` **(** **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`randi_range` **(** :ref:`int` from, :ref:`int` to **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`randomize` **(** **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`range_lerp` **(** :ref:`float` value, :ref:`float` istart, :ref:`float` istop, :ref:`float` ostart, :ref:`float` ostop **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`range_step_decimals` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rid_allocate_id` **(** **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`rid_from_int64` **(** :ref:`int` base **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`round` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`seed` **(** :ref:`int` base **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`sign` **(** :ref:`Variant` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`signf` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`signi` **(** :ref:`int` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`sin` **(** :ref:`float` angle_rad **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`sinh` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`smoothstep` **(** :ref:`float` from, :ref:`float` to, :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`snapped` **(** :ref:`float` x, :ref:`float` step **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`sqrt` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`step_decimals` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`str` **(** ... **)** |vararg| | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`str2var` **(** :ref:`String` string **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`tan` **(** :ref:`float` angle_rad **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`tanh` **(** :ref:`float` x **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`typeof` **(** :ref:`Variant` variable **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedByteArray` | :ref:`var2bytes` **(** :ref:`Variant` variable **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedByteArray` | :ref:`var2bytes_with_objects` **(** :ref:`Variant` variable **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`var2str` **(** :ref:`Variant` variable **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`weakref` **(** :ref:`Variant` obj **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`wrapf` **(** :ref:`float` value, :ref:`float` min, :ref:`float` max **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`wrapi` **(** :ref:`int` value, :ref:`int` min, :ref:`int` max **)** | -+-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`abs` **(** :ref:`Variant` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`absf` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`absi` **(** :ref:`int` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`acos` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`asin` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`atan` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`atan2` **(** :ref:`float` y, :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`bytes2var` **(** :ref:`PackedByteArray` bytes **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`bytes2var_with_objects` **(** :ref:`PackedByteArray` bytes **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`ceil` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`clamp` **(** :ref:`Variant` value, :ref:`Variant` min, :ref:`Variant` max **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`clampf` **(** :ref:`float` value, :ref:`float` min, :ref:`float` max **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`clampi` **(** :ref:`int` value, :ref:`int` min, :ref:`int` max **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`cos` **(** :ref:`float` angle_rad **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`cosh` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`cubic_interpolate` **(** :ref:`float` from, :ref:`float` to, :ref:`float` pre, :ref:`float` post, :ref:`float` weight **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`db2linear` **(** :ref:`float` db **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`deg2rad` **(** :ref:`float` deg **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`ease` **(** :ref:`float` x, :ref:`float` curve **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`error_string` **(** :ref:`int` error **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`exp` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`floor` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`fmod` **(** :ref:`float` x, :ref:`float` y **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`fposmod` **(** :ref:`float` x, :ref:`float` y **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`hash` **(** :ref:`Variant` variable **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Object` | :ref:`instance_from_id` **(** :ref:`int` instance_id **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`inverse_lerp` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_equal_approx` **(** :ref:`float` a, :ref:`float` b **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_inf` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_instance_id_valid` **(** :ref:`int` id **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_instance_valid` **(** :ref:`Variant` instance **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_nan` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_zero_approx` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`lerp` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`lerp_angle` **(** :ref:`float` from, :ref:`float` to, :ref:`float` weight **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`linear2db` **(** :ref:`float` lin **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`log` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`max` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`maxf` **(** :ref:`float` a, :ref:`float` b **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`maxi` **(** :ref:`int` a, :ref:`int` b **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`min` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`minf` **(** :ref:`float` a, :ref:`float` b **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`mini` **(** :ref:`int` a, :ref:`int` b **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`move_toward` **(** :ref:`float` from, :ref:`float` to, :ref:`float` delta **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`nearest_po2` **(** :ref:`int` value **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`pingpong` **(** :ref:`float` value, :ref:`float` length **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`posmod` **(** :ref:`int` x, :ref:`int` y **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`pow` **(** :ref:`float` base, :ref:`float` exp **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`print` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`print_verbose` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`printerr` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`printraw` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`prints` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`printt` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`push_error` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`push_warning` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`rad2deg` **(** :ref:`float` rad **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt64Array` | :ref:`rand_from_seed` **(** :ref:`int` seed **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`randf` **(** **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`randf_range` **(** :ref:`float` from, :ref:`float` to **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`randfn` **(** :ref:`float` mean, :ref:`float` deviation **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`randi` **(** **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`randi_range` **(** :ref:`int` from, :ref:`int` to **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`randomize` **(** **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`range_lerp` **(** :ref:`float` value, :ref:`float` istart, :ref:`float` istop, :ref:`float` ostart, :ref:`float` ostop **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`range_step_decimals` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`rid_allocate_id` **(** **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`rid_from_int64` **(** :ref:`int` base **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`round` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`seed` **(** :ref:`int` base **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`sign` **(** :ref:`Variant` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`signf` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`signi` **(** :ref:`int` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`sin` **(** :ref:`float` angle_rad **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`sinh` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`smoothstep` **(** :ref:`float` from, :ref:`float` to, :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`snapped` **(** :ref:`float` x, :ref:`float` step **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`sqrt` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`step_decimals` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`str` **(** ... **)** |vararg| | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`str2var` **(** :ref:`String` string **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`tan` **(** :ref:`float` angle_rad **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`tanh` **(** :ref:`float` x **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`typeof` **(** :ref:`Variant` variable **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedByteArray` | :ref:`var2bytes` **(** :ref:`Variant` variable **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedByteArray` | :ref:`var2bytes_with_objects` **(** :ref:`Variant` variable **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`var2str` **(** :ref:`Variant` variable **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`weakref` **(** :ref:`Variant` obj **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`wrapf` **(** :ref:`float` value, :ref:`float` min, :ref:`float` max **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`wrapi` **(** :ref:`int` value, :ref:`int` min, :ref:`int` max **)** | ++-------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ @@ -420,6 +422,10 @@ enum **VerticalAlignment**: .. _class_@GlobalScope_constant_INLINE_ALIGNMENT_BOTTOM: +.. _class_@GlobalScope_constant_INLINE_ALIGNMENT_IMAGE_MASK: + +.. _class_@GlobalScope_constant_INLINE_ALIGNMENT_TEXT_MASK: + enum **InlineAlignment**: - **INLINE_ALIGNMENT_TOP_TO** = **0** --- Aligns the top of the inline object (e.g. image, table) to the position of the text specified by ``INLINE_ALIGNMENT_TO_*`` constant. @@ -442,6 +448,10 @@ enum **InlineAlignment**: - **INLINE_ALIGNMENT_BOTTOM** = **14** --- Aligns bottom of the inline object (e.g. image, table) to the bottom of the text. Equivalent to ``INLINE_ALIGNMENT_BOTTOM_TO | INLINE_ALIGNMENT_TO_BOTTOM``. +- **INLINE_ALIGNMENT_IMAGE_MASK** = **3** --- A bit mask for ``INLINE_ALIGNMENT_*_TO`` alignment constants. + +- **INLINE_ALIGNMENT_TEXT_MASK** = **12** --- A bit mask for ``INLINE_ALIGNMENT_TO_*`` alignment constants. + ---- .. _enum_@GlobalScope_Key: @@ -2065,7 +2075,7 @@ Additionally, other keywords can be included: "exp" for exponential range editin - **PROPERTY_HINT_ENUM** = **2** --- Hints that an integer, float or string property is an enumerated value to pick in a list specified via a hint string such as ``"Hello,Something,Else"``. -- **PROPERTY_HINT_ENUM_SUGGESTION** = **3** --- Hints that a string property is can be an enumerated value to pick in a list specified via a hint string such as ``"Hello,Something,Else"``. +- **PROPERTY_HINT_ENUM_SUGGESTION** = **3** --- Hints that a string property can be an enumerated value to pick in a list specified via a hint string such as ``"Hello,Something,Else"``. Unlike :ref:`PROPERTY_HINT_ENUM` a property with this hint still accepts arbitrary values and can be empty. The list of values serves to suggest possible values. @@ -3136,6 +3146,14 @@ Returns the hyperbolic cosine of ``x`` in radians. ---- +.. _class_@GlobalScope_method_cubic_interpolate: + +- :ref:`float` **cubic_interpolate** **(** :ref:`float` from, :ref:`float` to, :ref:`float` pre, :ref:`float` post, :ref:`float` weight **)** + +Cubic interpolates between two values by the factor defined in ``weight`` with pre and post values. + +---- + .. _class_@GlobalScope_method_db2linear: - :ref:`float` **db2linear** **(** :ref:`float` db **)** diff --git a/classes/class_animationnode.rst b/classes/class_animationnode.rst index 359eae5a2..7c8e40d8f 100644 --- a/classes/class_animationnode.rst +++ b/classes/class_animationnode.rst @@ -82,7 +82,7 @@ Signals - **removed_from_graph** **(** **)** -Called when the node was removed from the graph. +Emitted when the node was removed from the graph. ---- @@ -177,7 +177,7 @@ Gets the property information for parameter. Parameters are custom local memory - :ref:`bool` **_has_filter** **(** **)** |virtual| |const| -Returns ``true`` whether you want the blend tree editor to display filter editing on this node. +Returns whether you want the blend tree editor to display filter editing on this node. ---- @@ -253,7 +253,7 @@ Gets the value of a parameter. Parameters are custom local memory used for your - :ref:`bool` **is_path_filtered** **(** :ref:`NodePath` path **)** |const| -Returns ``true`` whether a given path is filtered. +Returns whether the given path is filtered. ---- @@ -277,7 +277,7 @@ Adds or removes a path for the filter. - void **set_parameter** **(** :ref:`StringName` name, :ref:`Variant` value **)** -Sets a custom parameter. These are used as local storage, because resources can be reused across the tree or scenes. +Sets a custom parameter. These are used as local memory, because resources can be reused across the tree or scenes. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_area2d.rst b/classes/class_area2d.rst index ab715c85a..49d4ef847 100644 --- a/classes/class_area2d.rst +++ b/classes/class_area2d.rst @@ -481,7 +481,7 @@ For performance reasons (collisions are all processed at the same time) this lis - :ref:`bool` **overlaps_area** **(** :ref:`Node` area **)** |const| -If ``true``, the given area overlaps the Area2D. +Returns ``true`` if the given ``Area2D`` intersects or overlaps this ``Area2D``, ``false`` otherwise. \ **Note:** The result of this test is not immediate after moving objects. For performance, the list of overlaps is updated once per frame and before the physics step. Consider using signals instead. @@ -491,11 +491,11 @@ If ``true``, the given area overlaps the Area2D. - :ref:`bool` **overlaps_body** **(** :ref:`Node` body **)** |const| -If ``true``, the given physics body overlaps the Area2D. +Returns ``true`` if the given physics body intersects or overlaps this ``Area2D``, ``false`` otherwise. \ **Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead. -The ``body`` argument can either be a :ref:`PhysicsBody2D` or a :ref:`TileMap` instance (while TileMaps are not physics bodies themselves, they register their tiles with collision shapes as a virtual physics body). +The ``body`` argument can either be a :ref:`PhysicsBody2D` or a :ref:`TileMap` instance. While TileMaps are not physics bodies themselves, they register their tiles with collision shapes as a virtual physics body. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_area3d.rst b/classes/class_area3d.rst index 08136ad15..b3c6e622b 100644 --- a/classes/class_area3d.rst +++ b/classes/class_area3d.rst @@ -603,7 +603,7 @@ For performance reasons (collisions are all processed at the same time) this lis - :ref:`bool` **overlaps_area** **(** :ref:`Node` area **)** |const| -If ``true``, the given area overlaps the Area3D. +Returns ``true`` if the given ``Area3D`` intersects or overlaps this ``Area3D``, ``false`` otherwise. \ **Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead. @@ -613,11 +613,11 @@ If ``true``, the given area overlaps the Area3D. - :ref:`bool` **overlaps_body** **(** :ref:`Node` body **)** |const| -If ``true``, the given physics body overlaps the Area3D. +Returns ``true`` if the given physics body intersects or overlaps this ``Area3D``, ``false`` otherwise. \ **Note:** The result of this test is not immediate after moving objects. For performance, list of overlaps is updated once per frame and before the physics step. Consider using signals instead. -The ``body`` argument can either be a :ref:`PhysicsBody3D` or a :ref:`GridMap` instance (while GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body). +The ``body`` argument can either be a :ref:`PhysicsBody3D` or a :ref:`GridMap` instance. While GridMaps are not physics body themselves, they register their tiles with collision shapes as a virtual physics body. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_array.rst b/classes/class_array.rst index 2032d1086..d1d3ae7f9 100644 --- a/classes/class_array.rst +++ b/classes/class_array.rst @@ -486,9 +486,9 @@ Returns ``true`` if the array contains the given value. - :ref:`int` **hash** **(** **)** |const| -Returns a hashed integer value representing the array and its contents. +Returns a hashed 32-bit integer value representing the array and its contents. -\ **Note:** Arrays with equal contents can still produce different hashes. Only the exact same arrays will produce the same hashed integer value. +\ **Note:** ``Array``\ s with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does *not* imply the arrays are equal, because different arrays can have identical hash values due to hash collisions. ---- diff --git a/classes/class_arrayoccluder3d.rst b/classes/class_arrayoccluder3d.rst new file mode 100644 index 000000000..df87da9f7 --- /dev/null +++ b/classes/class_arrayoccluder3d.rst @@ -0,0 +1,80 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the ArrayOccluder3D.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_ArrayOccluder3D: + +ArrayOccluder3D +=============== + +**Inherits:** :ref:`Occluder3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +3D polygon shape for use with occlusion culling in :ref:`OccluderInstance3D`. + +Description +----------- + +``ArrayOccluder3D`` stores an arbitrary 3D polygon shape that can be used by the engine's occlusion culling system. This is analogous to :ref:`ArrayMesh`, but for occluders. + +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. + +Properties +---------- + ++-----------------------------------------------------+----------------------------------------------------------+--------------------------+ +| :ref:`PackedInt32Array` | :ref:`indices` | ``PackedInt32Array()`` | ++-----------------------------------------------------+----------------------------------------------------------+--------------------------+ +| :ref:`PackedVector3Array` | :ref:`vertices` | ``PackedVector3Array()`` | ++-----------------------------------------------------+----------------------------------------------------------+--------------------------+ + +Methods +------- + ++------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_arrays` **(** :ref:`PackedVector3Array` vertices, :ref:`PackedInt32Array` indices **)** | ++------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +Property Descriptions +--------------------- + +.. _class_ArrayOccluder3D_property_indices: + +- :ref:`PackedInt32Array` **indices** + ++-----------+------------------------+ +| *Default* | ``PackedInt32Array()`` | ++-----------+------------------------+ +| *Setter* | set_indices(value) | ++-----------+------------------------+ +| *Getter* | get_indices() | ++-----------+------------------------+ + +---- + +.. _class_ArrayOccluder3D_property_vertices: + +- :ref:`PackedVector3Array` **vertices** + ++-----------+--------------------------+ +| *Default* | ``PackedVector3Array()`` | ++-----------+--------------------------+ +| *Setter* | set_vertices(value) | ++-----------+--------------------------+ +| *Getter* | get_vertices() | ++-----------+--------------------------+ + +Method Descriptions +------------------- + +.. _class_ArrayOccluder3D_method_set_arrays: + +- void **set_arrays** **(** :ref:`PackedVector3Array` vertices, :ref:`PackedInt32Array` indices **)** + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_audioserver.rst b/classes/class_audioserver.rst index 0c7db447a..a9123b122 100644 --- a/classes/class_audioserver.rst +++ b/classes/class_audioserver.rst @@ -35,6 +35,8 @@ Properties +-----------------------------+------------------------------------------------------------------------------+---------------+ | :ref:`int` | :ref:`bus_count` | ``1`` | +-----------------------------+------------------------------------------------------------------------------+---------------+ +| :ref:`String` | :ref:`capture_device` | ``"Default"`` | ++-----------------------------+------------------------------------------------------------------------------+---------------+ | :ref:`String` | :ref:`device` | ``"Default"`` | +-----------------------------+------------------------------------------------------------------------------+---------------+ | :ref:`float` | :ref:`playback_speed_scale` | ``1.0`` | @@ -48,12 +50,8 @@ Methods +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_bus_effect` **(** :ref:`int` bus_idx, :ref:`AudioEffect` effect, :ref:`int` at_position=-1 **)** | +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`capture_get_device` **(** **)** | -+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`capture_get_device_list` **(** **)** | +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`capture_set_device` **(** :ref:`String` name **)** | -+-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`AudioBusLayout` | :ref:`generate_bus_layout` **(** **)** |const| | +-------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_bus_channels` **(** :ref:`int` bus_idx **)** |const| | @@ -176,6 +174,22 @@ Number of available audio buses. ---- +.. _class_AudioServer_property_capture_device: + +- :ref:`String` **capture_device** + ++-----------+---------------------------+ +| *Default* | ``"Default"`` | ++-----------+---------------------------+ +| *Setter* | capture_set_device(value) | ++-----------+---------------------------+ +| *Getter* | capture_get_device() | ++-----------+---------------------------+ + +Name of the current device for audio input (see :ref:`get_device_list`). On systems with multiple audio inputs (such as analog, USB and HDMI audio), this can be used to select the audio input device. The value ``"Default"`` will record audio on the system-wide default audio input. If an invalid device name is set, the value will be reverted back to ``"Default"``. + +---- + .. _class_AudioServer_property_device: - :ref:`String` **device** @@ -188,7 +202,7 @@ Number of available audio buses. | *Getter* | get_device() | +-----------+-------------------+ -Name of the current device for audio output (see :ref:`get_device_list`). +Name of the current device for audio output (see :ref:`get_device_list`). On systems with multiple audio outputs (such as analog, USB and HDMI audio), this can be used to select the audio output device. The value ``"Default"`` will play audio on the system-wide default audio output. If an invalid device name is set, the value will be reverted back to ``"Default"``. ---- @@ -225,14 +239,6 @@ Adds an :ref:`AudioEffect` effect to the bus ``bus_idx`` at ` ---- -.. _class_AudioServer_method_capture_get_device: - -- :ref:`String` **capture_get_device** **(** **)** - -Name of the current device for audio input (see :ref:`capture_get_device_list`). - ----- - .. _class_AudioServer_method_capture_get_device_list: - :ref:`Array` **capture_get_device_list** **(** **)** @@ -241,14 +247,6 @@ Returns the names of all audio input devices detected on the system. ---- -.. _class_AudioServer_method_capture_set_device: - -- void **capture_set_device** **(** :ref:`String` name **)** - -Sets which audio input device is used for audio capture. - ----- - .. _class_AudioServer_method_generate_bus_layout: - :ref:`AudioBusLayout` **generate_bus_layout** **(** **)** |const| diff --git a/classes/class_audiostream.rst b/classes/class_audiostream.rst index 8fd2265a4..3d6f3eef4 100644 --- a/classes/class_audiostream.rst +++ b/classes/class_audiostream.rst @@ -11,7 +11,7 @@ AudioStream **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`AudioStreamGenerator`, :ref:`AudioStreamMP3`, :ref:`AudioStreamMicrophone`, :ref:`AudioStreamOGGVorbis`, :ref:`AudioStreamRandomPitch`, :ref:`AudioStreamSample` +**Inherited By:** :ref:`AudioStreamGenerator`, :ref:`AudioStreamMP3`, :ref:`AudioStreamMicrophone`, :ref:`AudioStreamOGGVorbis`, :ref:`AudioStreamRandomizer`, :ref:`AudioStreamSample` Base class for audio streams. diff --git a/classes/class_audiostreamplayer2d.rst b/classes/class_audiostreamplayer2d.rst index ed0715704..a27c5b79b 100644 --- a/classes/class_audiostreamplayer2d.rst +++ b/classes/class_audiostreamplayer2d.rst @@ -93,7 +93,7 @@ Property Descriptions | *Getter* | get_area_mask() | +-----------+----------------------+ -Areas in which this sound plays. +Determines which :ref:`Area2D` layers affect the sound for reverb and audio bus effects. Areas can be used to redirect :ref:`AudioStream`\ s so that they play in a certain audio bus. An example of how you might use this is making a "water" area so that sounds played in the water are redirected through an audio bus to make them sound like they are being played underwater. ---- diff --git a/classes/class_audiostreamplayer3d.rst b/classes/class_audiostreamplayer3d.rst index a32d42bdd..f3f62d445 100644 --- a/classes/class_audiostreamplayer3d.rst +++ b/classes/class_audiostreamplayer3d.rst @@ -152,7 +152,7 @@ Property Descriptions | *Getter* | get_area_mask() | +-----------+----------------------+ -Areas in which this sound plays. +Determines which :ref:`Area3D` layers affect the sound for reverb and audio bus effects. Areas can be used to redirect :ref:`AudioStream`\ s so that they play in a certain audio bus. An example of how you might use this is making a "water" area so that sounds played in the water are redirected through an audio bus to make them sound like they are being played underwater. ---- diff --git a/classes/class_audiostreamrandomizer.rst b/classes/class_audiostreamrandomizer.rst new file mode 100644 index 000000000..8253f1c7e --- /dev/null +++ b/classes/class_audiostreamrandomizer.rst @@ -0,0 +1,199 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the AudioStreamRandomizer.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_AudioStreamRandomizer: + +AudioStreamRandomizer +===================== + +**Inherits:** :ref:`AudioStream` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +Wraps a pool of audio streams with pitch and volume shifting. + +Description +----------- + +Picks a random AudioStream from the pool, depending on the playback mode, and applies random pitch shifting and volume shifting during playback. + +Properties +---------- + ++--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+ +| :ref:`PlaybackMode` | :ref:`playback_mode` | ``0`` | ++--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+ +| :ref:`float` | :ref:`random_pitch` | ``1.1`` | ++--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+ +| :ref:`float` | :ref:`random_volume_offset_db` | ``5.0`` | ++--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+ +| :ref:`int` | :ref:`streams_count` | ``0`` | ++--------------------------------------------------------------+----------------------------------------------------------------------------------------------+---------+ + +Methods +------- + ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_stream` **(** :ref:`int` index **)** | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`AudioStream` | :ref:`get_stream` **(** :ref:`int` index **)** |const| | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_stream_probability_weight` **(** :ref:`int` index **)** |const| | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`move_stream` **(** :ref:`int` index_from, :ref:`int` index_to **)** | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_stream` **(** :ref:`int` index **)** | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_stream` **(** :ref:`int` index, :ref:`AudioStream` stream **)** | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_stream_probability_weight` **(** :ref:`int` index, :ref:`float` weight **)** | ++---------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +Enumerations +------------ + +.. _enum_AudioStreamRandomizer_PlaybackMode: + +.. _class_AudioStreamRandomizer_constant_PLAYBACK_RANDOM_NO_REPEATS: + +.. _class_AudioStreamRandomizer_constant_PLAYBACK_RANDOM: + +.. _class_AudioStreamRandomizer_constant_PLAYBACK_SEQUENTIAL: + +enum **PlaybackMode**: + +- **PLAYBACK_RANDOM_NO_REPEATS** = **0** --- Pick a stream at random according to the probability weights chosen for each stream, but avoid playing the same stream twice in a row whenever possible. + +- **PLAYBACK_RANDOM** = **1** --- Pick a stream at random according to the probability weights chosen for each stream. + +- **PLAYBACK_SEQUENTIAL** = **2** --- Play streams in the order they appear in the stream pool. + +Property Descriptions +--------------------- + +.. _class_AudioStreamRandomizer_property_playback_mode: + +- :ref:`PlaybackMode` **playback_mode** + ++-----------+--------------------------+ +| *Default* | ``0`` | ++-----------+--------------------------+ +| *Setter* | set_playback_mode(value) | ++-----------+--------------------------+ +| *Getter* | get_playback_mode() | ++-----------+--------------------------+ + +Controls how this AudioStreamRandomizer picks which AudioStream to play next. + +---- + +.. _class_AudioStreamRandomizer_property_random_pitch: + +- :ref:`float` **random_pitch** + ++-----------+-------------------------+ +| *Default* | ``1.1`` | ++-----------+-------------------------+ +| *Setter* | set_random_pitch(value) | ++-----------+-------------------------+ +| *Getter* | get_random_pitch() | ++-----------+-------------------------+ + +The intensity of random pitch variation. A value of 1 means no variation. + +---- + +.. _class_AudioStreamRandomizer_property_random_volume_offset_db: + +- :ref:`float` **random_volume_offset_db** + ++-----------+------------------------------------+ +| *Default* | ``5.0`` | ++-----------+------------------------------------+ +| *Setter* | set_random_volume_offset_db(value) | ++-----------+------------------------------------+ +| *Getter* | get_random_volume_offset_db() | ++-----------+------------------------------------+ + +The intensity of random volume variation. A value of 0 means no variation. + +---- + +.. _class_AudioStreamRandomizer_property_streams_count: + +- :ref:`int` **streams_count** + ++-----------+--------------------------+ +| *Default* | ``0`` | ++-----------+--------------------------+ +| *Setter* | set_streams_count(value) | ++-----------+--------------------------+ +| *Getter* | get_streams_count() | ++-----------+--------------------------+ + +The number of streams in the stream pool. + +Method Descriptions +------------------- + +.. _class_AudioStreamRandomizer_method_add_stream: + +- void **add_stream** **(** :ref:`int` index **)** + +Insert a stream at the specified index. + +---- + +.. _class_AudioStreamRandomizer_method_get_stream: + +- :ref:`AudioStream` **get_stream** **(** :ref:`int` index **)** |const| + +Returns the stream at the specified index. + +---- + +.. _class_AudioStreamRandomizer_method_get_stream_probability_weight: + +- :ref:`float` **get_stream_probability_weight** **(** :ref:`int` index **)** |const| + +Returns the probability weight associated with the stream at the given index. + +---- + +.. _class_AudioStreamRandomizer_method_move_stream: + +- void **move_stream** **(** :ref:`int` index_from, :ref:`int` index_to **)** + +Move a stream from one index to another. + +---- + +.. _class_AudioStreamRandomizer_method_remove_stream: + +- void **remove_stream** **(** :ref:`int` index **)** + +Remove the stream at the specified index. + +---- + +.. _class_AudioStreamRandomizer_method_set_stream: + +- void **set_stream** **(** :ref:`int` index, :ref:`AudioStream` stream **)** + +Set the AudioStream at the specified index. + +---- + +.. _class_AudioStreamRandomizer_method_set_stream_probability_weight: + +- void **set_stream_probability_weight** **(** :ref:`int` index, :ref:`float` weight **)** + +Set the probability weight of the stream at the specified index. The higher this value, the more likely that the randomizer will choose this stream during random playback modes. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_audiostreamrandompitch.rst b/classes/class_audiostreamrandompitch.rst deleted file mode 100644 index 5359a0b13..000000000 --- a/classes/class_audiostreamrandompitch.rst +++ /dev/null @@ -1,66 +0,0 @@ -:github_url: hide - -.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. -.. DO NOT EDIT THIS FILE, but the AudioStreamRandomPitch.xml source instead. -.. The source is found in doc/classes or modules//doc_classes. - -.. _class_AudioStreamRandomPitch: - -AudioStreamRandomPitch -====================== - -**Inherits:** :ref:`AudioStream` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` - -Plays audio with random pitch shifting. - -Description ------------ - -Randomly varies pitch on each start. - -Properties ----------- - -+---------------------------------------+-------------------------------------------------------------------------+---------+ -| :ref:`AudioStream` | :ref:`audio_stream` | | -+---------------------------------------+-------------------------------------------------------------------------+---------+ -| :ref:`float` | :ref:`random_pitch` | ``1.1`` | -+---------------------------------------+-------------------------------------------------------------------------+---------+ - -Property Descriptions ---------------------- - -.. _class_AudioStreamRandomPitch_property_audio_stream: - -- :ref:`AudioStream` **audio_stream** - -+----------+-------------------------+ -| *Setter* | set_audio_stream(value) | -+----------+-------------------------+ -| *Getter* | get_audio_stream() | -+----------+-------------------------+ - -The current :ref:`AudioStream`. - ----- - -.. _class_AudioStreamRandomPitch_property_random_pitch: - -- :ref:`float` **random_pitch** - -+-----------+-------------------------+ -| *Default* | ``1.1`` | -+-----------+-------------------------+ -| *Setter* | set_random_pitch(value) | -+-----------+-------------------------+ -| *Getter* | get_random_pitch() | -+-----------+-------------------------+ - -The intensity of random pitch variation. - -.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` -.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` -.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` -.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` -.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` -.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_bool.rst b/classes/class_bool.rst index ebdaf2b5f..59af847bc 100644 --- a/classes/class_bool.rst +++ b/classes/class_bool.rst @@ -80,7 +80,7 @@ The following code will set ``can_shoot`` to ``false`` and start a timer. This w .. code-tab:: gdscript var _can_shoot = true - onready var _cool_down = $CoolDownTimer + @onready var _cool_down = $CoolDownTimer func shoot(): if _can_shoot and Input.is_action_pressed("shoot"): diff --git a/classes/class_boxmesh.rst b/classes/class_boxmesh.rst index 084a937ba..1b5207d8d 100644 --- a/classes/class_boxmesh.rst +++ b/classes/class_boxmesh.rst @@ -26,7 +26,7 @@ Properties ---------- +-------------------------------+------------------------------------------------------------------+----------------------+ -| :ref:`Vector3` | :ref:`size` | ``Vector3(2, 2, 2)`` | +| :ref:`Vector3` | :ref:`size` | ``Vector3(1, 1, 1)`` | +-------------------------------+------------------------------------------------------------------+----------------------+ | :ref:`int` | :ref:`subdivide_depth` | ``0`` | +-------------------------------+------------------------------------------------------------------+----------------------+ @@ -43,7 +43,7 @@ Property Descriptions - :ref:`Vector3` **size** +-----------+----------------------+ -| *Default* | ``Vector3(2, 2, 2)`` | +| *Default* | ``Vector3(1, 1, 1)`` | +-----------+----------------------+ | *Setter* | set_size(value) | +-----------+----------------------+ diff --git a/classes/class_boxoccluder3d.rst b/classes/class_boxoccluder3d.rst new file mode 100644 index 000000000..42938dfdb --- /dev/null +++ b/classes/class_boxoccluder3d.rst @@ -0,0 +1,52 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the BoxOccluder3D.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_BoxOccluder3D: + +BoxOccluder3D +============= + +**Inherits:** :ref:`Occluder3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +Cuboid shape for use with occlusion culling in :ref:`OccluderInstance3D`. + +Description +----------- + +``BoxOccluder3D`` stores a cuboid shape that can be used by the engine's occlusion culling system. + +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. + +Properties +---------- + ++-------------------------------+------------------------------------------------+----------------------+ +| :ref:`Vector3` | :ref:`size` | ``Vector3(1, 1, 1)`` | ++-------------------------------+------------------------------------------------+----------------------+ + +Property Descriptions +--------------------- + +.. _class_BoxOccluder3D_property_size: + +- :ref:`Vector3` **size** + ++-----------+----------------------+ +| *Default* | ``Vector3(1, 1, 1)`` | ++-----------+----------------------+ +| *Setter* | set_size(value) | ++-----------+----------------------+ +| *Getter* | get_size() | ++-----------+----------------------+ + +The box's size in 3D units. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_boxshape3d.rst b/classes/class_boxshape3d.rst index 7fd0a17d7..8531e245a 100644 --- a/classes/class_boxshape3d.rst +++ b/classes/class_boxshape3d.rst @@ -31,7 +31,7 @@ Properties ---------- +-------------------------------+---------------------------------------------+----------------------+ -| :ref:`Vector3` | :ref:`size` | ``Vector3(2, 2, 2)`` | +| :ref:`Vector3` | :ref:`size` | ``Vector3(1, 1, 1)`` | +-------------------------------+---------------------------------------------+----------------------+ Property Descriptions @@ -42,7 +42,7 @@ Property Descriptions - :ref:`Vector3` **size** +-----------+----------------------+ -| *Default* | ``Vector3(2, 2, 2)`` | +| *Default* | ``Vector3(1, 1, 1)`` | +-----------+----------------------+ | *Setter* | set_size(value) | +-----------+----------------------+ diff --git a/classes/class_button.rst b/classes/class_button.rst index 755a18a1c..60f788836 100644 --- a/classes/class_button.rst +++ b/classes/class_button.rst @@ -118,7 +118,7 @@ Theme Properties +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`font_pressed_color` | ``Color(1, 1, 1, 1)`` | +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ -| :ref:`Color` | :ref:`icon_disabled_color` | ``Color(1, 1, 1, 1)`` | +| :ref:`Color` | :ref:`icon_disabled_color` | ``Color(1, 1, 1, 0.4)`` | +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`icon_focus_color` | ``Color(1, 1, 1, 1)`` | +---------------------------------+------------------------------------------------------------------------------------+-------------------------------------+ @@ -410,9 +410,9 @@ Text :ref:`Color` used when the ``Button`` is being pressed. - :ref:`Color` **icon_disabled_color** -+-----------+-----------------------+ -| *Default* | ``Color(1, 1, 1, 1)`` | -+-----------+-----------------------+ ++-----------+-------------------------+ +| *Default* | ``Color(1, 1, 1, 0.4)`` | ++-----------+-------------------------+ Icon modulate :ref:`Color` used when the ``Button`` is disabled. diff --git a/classes/class_callable.rst b/classes/class_callable.rst index c0ef897a1..70c7adf7d 100644 --- a/classes/class_callable.rst +++ b/classes/class_callable.rst @@ -182,7 +182,9 @@ Returns the ID of this ``Callable``'s object (see :ref:`Object.get_instance_id` **hash** **(** **)** |const| -Returns the hash value of this ``Callable``'s object. +Returns the 32-bit hash value of this ``Callable``'s object. + +\ **Note:** ``Callable``\ s with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does *not* imply the callables are equal, because different callables can have identical hash values due to hash collisions. The engine uses a 32-bit hash algorithm for :ref:`hash`. ---- diff --git a/classes/class_canvasitem.rst b/classes/class_canvasitem.rst index 1c140e87c..566a879c2 100644 --- a/classes/class_canvasitem.rst +++ b/classes/class_canvasitem.rst @@ -757,7 +757,7 @@ Returns the transform matrix of this item's canvas. - :ref:`Vector2` **get_global_mouse_position** **(** **)** |const| -Returns the global position of the mouse. +Returns the mouse's position in the :ref:`CanvasLayer` that this ``CanvasItem`` is in using the coordinate system of the :ref:`CanvasLayer`. ---- @@ -781,7 +781,7 @@ Returns the global transform matrix of this item in relation to the canvas. - :ref:`Vector2` **get_local_mouse_position** **(** **)** |const| -Returns the mouse position relative to this item's position. +Returns the mouse's position in this ``CanvasItem`` using the local coordinate system of this ``CanvasItem``. ---- diff --git a/classes/class_canvaslayer.rst b/classes/class_canvaslayer.rst index 437c62808..d9e5caf52 100644 --- a/classes/class_canvaslayer.rst +++ b/classes/class_canvaslayer.rst @@ -49,6 +49,8 @@ Properties +---------------------------------------+----------------------------------------------------------------------------------+-----------------------------------+ | :ref:`Transform2D` | :ref:`transform` | ``Transform2D(1, 0, 0, 1, 0, 0)`` | +---------------------------------------+----------------------------------------------------------------------------------+-----------------------------------+ +| :ref:`bool` | :ref:`visible` | ``true`` | ++---------------------------------------+----------------------------------------------------------------------------------+-----------------------------------+ Methods ------- @@ -56,6 +58,19 @@ Methods +-----------------------+----------------------------------------------------------------------------+ | :ref:`RID` | :ref:`get_canvas` **(** **)** |const| | +-----------------------+----------------------------------------------------------------------------+ +| void | :ref:`hide` **(** **)** | ++-----------------------+----------------------------------------------------------------------------+ +| void | :ref:`show` **(** **)** | ++-----------------------+----------------------------------------------------------------------------+ + +Signals +------- + +.. _class_CanvasLayer_signal_visibility_changed: + +- **visibility_changed** **(** **)** + +Emitted when visibility of the layer is changed. See :ref:`visible`. Property Descriptions --------------------- @@ -184,6 +199,24 @@ The layer's scale. The layer's transform. +---- + +.. _class_CanvasLayer_property_visible: + +- :ref:`bool` **visible** + ++-----------+--------------------+ +| *Default* | ``true`` | ++-----------+--------------------+ +| *Setter* | set_visible(value) | ++-----------+--------------------+ +| *Getter* | is_visible() | ++-----------+--------------------+ + +If ``false``, any :ref:`CanvasItem` under this ``CanvasLayer`` will be hidden. + +Unlike :ref:`CanvasItem.visible`, visibility of a ``CanvasLayer`` isn't propagated to underlying layers. + Method Descriptions ------------------- @@ -193,6 +226,22 @@ Method Descriptions Returns the RID of the canvas used by this layer. +---- + +.. _class_CanvasLayer_method_hide: + +- void **hide** **(** **)** + +Hides any :ref:`CanvasItem` under this ``CanvasLayer``. This is equivalent to setting :ref:`visible` to ``false``. + +---- + +.. _class_CanvasLayer_method_show: + +- void **show** **(** **)** + +Shows any :ref:`CanvasItem` under this ``CanvasLayer``. This is equivalent to setting :ref:`visible` to ``true``. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_capsulemesh.rst b/classes/class_capsulemesh.rst index 9aa2616a7..e4c1afbef 100644 --- a/classes/class_capsulemesh.rst +++ b/classes/class_capsulemesh.rst @@ -22,11 +22,11 @@ Properties ---------- +---------------------------+--------------------------------------------------------------------+---------+ -| :ref:`float` | :ref:`height` | ``3.0`` | +| :ref:`float` | :ref:`height` | ``2.0`` | +---------------------------+--------------------------------------------------------------------+---------+ | :ref:`int` | :ref:`radial_segments` | ``64`` | +---------------------------+--------------------------------------------------------------------+---------+ -| :ref:`float` | :ref:`radius` | ``1.0`` | +| :ref:`float` | :ref:`radius` | ``0.5`` | +---------------------------+--------------------------------------------------------------------+---------+ | :ref:`int` | :ref:`rings` | ``8`` | +---------------------------+--------------------------------------------------------------------+---------+ @@ -39,7 +39,7 @@ Property Descriptions - :ref:`float` **height** +-----------+-------------------+ -| *Default* | ``3.0`` | +| *Default* | ``2.0`` | +-----------+-------------------+ | *Setter* | set_height(value) | +-----------+-------------------+ @@ -71,7 +71,7 @@ Number of radial segments on the capsule mesh. - :ref:`float` **radius** +-----------+-------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+-------------------+ | *Setter* | set_radius(value) | +-----------+-------------------+ diff --git a/classes/class_capsuleshape3d.rst b/classes/class_capsuleshape3d.rst index 926e5661b..43e27320f 100644 --- a/classes/class_capsuleshape3d.rst +++ b/classes/class_capsuleshape3d.rst @@ -27,9 +27,9 @@ Properties ---------- +---------------------------+-----------------------------------------------------+---------+ -| :ref:`float` | :ref:`height` | ``3.0`` | +| :ref:`float` | :ref:`height` | ``2.0`` | +---------------------------+-----------------------------------------------------+---------+ -| :ref:`float` | :ref:`radius` | ``1.0`` | +| :ref:`float` | :ref:`radius` | ``0.5`` | +---------------------------+-----------------------------------------------------+---------+ Property Descriptions @@ -40,7 +40,7 @@ Property Descriptions - :ref:`float` **height** +-----------+-------------------+ -| *Default* | ``3.0`` | +| *Default* | ``2.0`` | +-----------+-------------------+ | *Setter* | set_height(value) | +-----------+-------------------+ @@ -56,7 +56,7 @@ The capsule's height. - :ref:`float` **radius** +-----------+-------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+-------------------+ | *Setter* | set_radius(value) | +-----------+-------------------+ diff --git a/classes/class_characterbody2d.rst b/classes/class_characterbody2d.rst index ddcfea2de..3e2982657 100644 --- a/classes/class_characterbody2d.rst +++ b/classes/class_characterbody2d.rst @@ -551,8 +551,6 @@ Returns ``true`` if the body collided only with a wall on the last call of :ref: Moves the body based on :ref:`motion_velocity`. If the body collides with another, it will slide along the other body (by default only on floor) rather than stop immediately. If the other body is a ``CharacterBody2D`` or :ref:`RigidDynamicBody2D`, it will also be affected by the motion of the other body. You can use this to make moving and rotating platforms, or to make nodes push other nodes. -This method should be used in :ref:`Node._physics_process` (or in a method called by :ref:`Node._physics_process`), as it uses the physics step's ``delta`` value automatically in calculations. Otherwise, the simulation will run at an incorrect speed. - Modifies :ref:`motion_velocity` if a slide collision occurred. To get the latest collision call :ref:`get_last_slide_collision`, for detailed information about collisions that occurred, use :ref:`get_slide_collision`. When the body touches a moving platform, the platform's velocity is automatically added to the body motion. If a collision occurs due to the platform's motion, it will always be first in the slide collisions. diff --git a/classes/class_characterbody3d.rst b/classes/class_characterbody3d.rst index 0b0f07ab9..49cef588a 100644 --- a/classes/class_characterbody3d.rst +++ b/classes/class_characterbody3d.rst @@ -532,8 +532,6 @@ Returns ``true`` if the body collided only with a wall on the last call of :ref: Moves the body based on :ref:`motion_velocity`. If the body collides with another, it will slide along the other body rather than stop immediately. If the other body is a ``CharacterBody3D`` or :ref:`RigidDynamicBody3D`, it will also be affected by the motion of the other body. You can use this to make moving and rotating platforms, or to make nodes push other nodes. -This method should be used in :ref:`Node._physics_process` (or in a method called by :ref:`Node._physics_process`), as it uses the physics step's ``delta`` value automatically in calculations. Otherwise, the simulation will run at an incorrect speed. - Modifies :ref:`motion_velocity` if a slide collision occurred. To get the latest collision call :ref:`get_last_slide_collision`, for more detailed information about collisions that occurred, use :ref:`get_slide_collision`. When the body touches a moving platform, the platform's velocity is automatically added to the body motion. If a collision occurs due to the platform's motion, it will always be first in the slide collisions. diff --git a/classes/class_codeedit.rst b/classes/class_codeedit.rst index 58d7046d0..500b92004 100644 --- a/classes/class_codeedit.rst +++ b/classes/class_codeedit.rst @@ -216,7 +216,7 @@ Theme Properties +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`completion_font_color` | ``Color(0.67, 0.67, 0.67, 1)`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ -| :ref:`Color` | :ref:`completion_scroll_color` | ``Color(1, 1, 1, 1)`` | +| :ref:`Color` | :ref:`completion_scroll_color` | ``Color(1, 1, 1, 0.29)`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`Color` | :ref:`completion_selected_color` | ``Color(0.26, 0.26, 0.27, 1)`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ @@ -250,7 +250,7 @@ Theme Properties +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`completion_max_width` | ``50`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ -| :ref:`int` | :ref:`completion_scroll_width` | ``3`` | +| :ref:`int` | :ref:`completion_scroll_width` | ``6`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ | :ref:`int` | :ref:`line_spacing` | ``4`` | +-----------------------------------+--------------------------------------------------------------------------------------------+-------------------------------------+ @@ -1314,9 +1314,9 @@ Font :ref:`Color` for the code completion popup. - :ref:`Color` **completion_scroll_color** -+-----------+-----------------------+ -| *Default* | ``Color(1, 1, 1, 1)`` | -+-----------+-----------------------+ ++-----------+--------------------------+ +| *Default* | ``Color(1, 1, 1, 0.29)`` | ++-----------+--------------------------+ :ref:`Color` of the scrollbar in the code completion popup. @@ -1519,7 +1519,7 @@ Max width of options in the code completion popup. Options longer then this will - :ref:`int` **completion_scroll_width** +-----------+-------+ -| *Default* | ``3`` | +| *Default* | ``6`` | +-----------+-------+ Width of the scrollbar in the code completion popup. diff --git a/classes/class_color.rst b/classes/class_color.rst index 468549202..93b59ff2a 100644 --- a/classes/class_color.rst +++ b/classes/class_color.rst @@ -1117,12 +1117,62 @@ This is useful when determining light or dark color. Colors with a luminance sma - :ref:`Color` **html** **(** :ref:`String` rgba **)** |static| +Returns a new color from ``rgba``, an HTML hexadecimal color string. ``rgba`` is not case sensitive, and may be prefixed with a '#' character. + +\ ``rgba`` must be a valid three-digit or six-digit hexadecimal color string, and may contain an alpha channel value. If ``rgba`` does not contain an alpha channel value, an alpha channel value of 1.0 is applied. + +If ``rgba`` is invalid a Color(0.0, 0.0, 0.0, 1.0) is returned. + +\ **Note:** This method is not implemented in C#, but the same functionality is provided in the class constructor. + + +.. tabs:: + + .. code-tab:: gdscript + + var green = Color.html("#00FF00FF") # set green to Color(0.0, 1.0, 0.0, 1.0) + var blue = Color.html("#0000FF") # set blue to Color(0.0, 0.0, 1.0, 1.0) + + .. code-tab:: csharp + + var green = new Color("#00FF00FF"); // set green to Color(0.0, 1.0, 0.0, 1.0) + var blue = new Color("#0000FF"); // set blue to Color(0.0, 0.0, 1.0, 1.0) + + + ---- .. _class_Color_method_html_is_valid: - :ref:`bool` **html_is_valid** **(** :ref:`String` color **)** |static| +Returns ``true`` if ``color`` is a valid HTML hexadecimal color string. ``color`` is not case sensitive, and may be prefixed with a '#' character. + +For a string to be valid it must be three-digit or six-digit hexadecimal, and may contain an alpha channel value. + + +.. tabs:: + + .. code-tab:: gdscript + + var result = Color.html_is_valid("#55aaFF") # result is true + result = Color.html_is_valid("#55AAFF20") # result is true + result = Color.html_is_valid("55AAFF") # result is true + result = Color.html_is_valid("#F2C") # result is true + result = Color.html_is_valid("#AABBC) # result is false + result = Color.html_is_valid("#55aaFF5") # result is false + + .. code-tab:: csharp + + var result = Color.HtmlIsValid("#55AAFF"); // result is true + result = Color.HtmlIsValid("#55AAFF20"); // result is true + result = Color.HtmlIsValid("55AAFF); // result is true + result = Color.HtmlIsValid("#F2C"); // result is true + result = Color.HtmlIsValid("#AABBC"); // result is false + result = Color.HtmlIsValid("#55aaFF5"); // result is false + + + ---- .. _class_Color_method_inverted: diff --git a/classes/class_colorpicker.rst b/classes/class_colorpicker.rst index 60b603cac..2b97ce419 100644 --- a/classes/class_colorpicker.rst +++ b/classes/class_colorpicker.rst @@ -77,8 +77,6 @@ Theme Properties +-----------------------------------+--------------------------------------------------------------------------------+---------+ | :ref:`Texture2D` | :ref:`color_hue` | | +-----------------------------------+--------------------------------------------------------------------------------+---------+ -| :ref:`Texture2D` | :ref:`color_sample` | | -+-----------------------------------+--------------------------------------------------------------------------------+---------+ | :ref:`Texture2D` | :ref:`overbright_indicator` | | +-----------------------------------+--------------------------------------------------------------------------------+---------+ | :ref:`Texture2D` | :ref:`picker_cursor` | | @@ -377,12 +375,6 @@ Custom texture for the hue selection slider on the right. ---- -.. _class_ColorPicker_theme_icon_color_sample: - -- :ref:`Texture2D` **color_sample** - ----- - .. _class_ColorPicker_theme_icon_overbright_indicator: - :ref:`Texture2D` **overbright_indicator** diff --git a/classes/class_container.rst b/classes/class_container.rst index 770af8262..d0b3b920a 100644 --- a/classes/class_container.rst +++ b/classes/class_container.rst @@ -32,11 +32,15 @@ Properties Methods ------- -+------+----------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`fit_child_in_rect` **(** :ref:`Control` child, :ref:`Rect2` rect **)** | -+------+----------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`queue_sort` **(** **)** | -+------+----------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_get_allowed_size_flags_horizontal` **(** **)** |virtual| |const| | ++-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_get_allowed_size_flags_vertical` **(** **)** |virtual| |const| | ++-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`fit_child_in_rect` **(** :ref:`Control` child, :ref:`Rect2` rect **)** | ++-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`queue_sort` **(** **)** | ++-------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------+ Signals ------- @@ -69,6 +73,26 @@ Constants Method Descriptions ------------------- +.. _class_Container_method__get_allowed_size_flags_horizontal: + +- :ref:`PackedInt32Array` **_get_allowed_size_flags_horizontal** **(** **)** |virtual| |const| + +Implement to return a list of allowed horizontal :ref:`SizeFlags` for child nodes. This doesn't technically prevent the usages of any other size flags, if your implementation requires that. This only limits the options available to the user in the inspector dock. + +\ **Note:** Having no size flags is equal to having :ref:`Control.SIZE_SHRINK_BEGIN`. As such, this value is always implicitly allowed. + +---- + +.. _class_Container_method__get_allowed_size_flags_vertical: + +- :ref:`PackedInt32Array` **_get_allowed_size_flags_vertical** **(** **)** |virtual| |const| + +Implement to return a list of allowed vertical :ref:`SizeFlags` for child nodes. This doesn't technically prevent the usages of any other size flags, if your implementation requires that. This only limits the options available to the user in the inspector dock. + +\ **Note:** Having no size flags is equal to having :ref:`Control.SIZE_SHRINK_BEGIN`. As such, this value is always implicitly allowed. + +---- + .. _class_Container_method_fit_child_in_rect: - void **fit_child_in_rect** **(** :ref:`Control` child, :ref:`Rect2` rect **)** diff --git a/classes/class_control.rst b/classes/class_control.rst index ef5eeca77..4a2cc4136 100644 --- a/classes/class_control.rst +++ b/classes/class_control.rst @@ -180,8 +180,6 @@ Methods +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`NodePath` | :ref:`get_focus_neighbor` **(** :ref:`Side` side **)** |const| | +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Control` | :ref:`get_focus_owner` **(** **)** |const| | -+----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Rect2` | :ref:`get_global_rect` **(** **)** |const| | +----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_minimum_size` **(** **)** |const| | @@ -569,6 +567,8 @@ enum **LayoutPresetMode**: .. _enum_Control_SizeFlags: +.. _class_Control_constant_SIZE_SHRINK_BEGIN: + .. _class_Control_constant_SIZE_FILL: .. _class_Control_constant_SIZE_EXPAND: @@ -581,15 +581,19 @@ enum **LayoutPresetMode**: enum **SizeFlags**: -- **SIZE_FILL** = **1** --- Tells the parent :ref:`Container` to expand the bounds of this node to fill all the available space without pushing any other node. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. +- **SIZE_SHRINK_BEGIN** = **0** --- Tells the parent :ref:`Container` to align the node with its start, either the top or the left edge. It is mutually exclusive with :ref:`SIZE_FILL` and other shrink size flags, but can be used with :ref:`SIZE_EXPAND` in some containers. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. + +\ **Note:** Setting this flag is equal to not having any size flags. + +- **SIZE_FILL** = **1** --- Tells the parent :ref:`Container` to expand the bounds of this node to fill all the available space without pushing any other node. It is mutually exclusive with shrink size flags. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. - **SIZE_EXPAND** = **2** --- Tells the parent :ref:`Container` to let this node take all the available space on the axis you flag. If multiple neighboring nodes are set to expand, they'll share the space based on their stretch ratio. See :ref:`size_flags_stretch_ratio`. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. -- **SIZE_EXPAND_FILL** = **3** --- Sets the node's size flags to both fill and expand. See the 2 constants above for more information. +- **SIZE_EXPAND_FILL** = **3** --- Sets the node's size flags to both fill and expand. See :ref:`SIZE_FILL` and :ref:`SIZE_EXPAND` for more information. -- **SIZE_SHRINK_CENTER** = **4** --- Tells the parent :ref:`Container` to center the node in itself. It centers the control based on its bounding box, so it doesn't work with the fill or expand size flags. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. +- **SIZE_SHRINK_CENTER** = **4** --- Tells the parent :ref:`Container` to center the node in the available space. It is mutually exclusive with :ref:`SIZE_FILL` and other shrink size flags, but can be used with :ref:`SIZE_EXPAND` in some containers. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. -- **SIZE_SHRINK_END** = **8** --- Tells the parent :ref:`Container` to align the node with its end, either the bottom or the right edge. It doesn't work with the fill or expand size flags. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. +- **SIZE_SHRINK_END** = **8** --- Tells the parent :ref:`Container` to align the node with its end, either the bottom or the right edge. It is mutually exclusive with :ref:`SIZE_FILL` and other shrink size flags, but can be used with :ref:`SIZE_EXPAND` in some containers. Use with :ref:`size_flags_horizontal` and :ref:`size_flags_vertical`. ---- @@ -1808,14 +1812,6 @@ Returns the focus neighbor for the specified :ref:`Side` ---- -.. _class_Control_method_get_focus_owner: - -- :ref:`Control` **get_focus_owner** **(** **)** |const| - -Returns the control that has the keyboard focus or ``null`` if none. - ----- - .. _class_Control_method_get_global_rect: - :ref:`Rect2` **get_global_rect** **(** **)** |const| diff --git a/classes/class_csgbox3d.rst b/classes/class_csgbox3d.rst index fa3beae4f..2bdff4e9f 100644 --- a/classes/class_csgbox3d.rst +++ b/classes/class_csgbox3d.rst @@ -18,13 +18,20 @@ Description This node allows you to create a box for use with the CSG system. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- +---------------------------------+---------------------------------------------------+----------------------+ | :ref:`Material` | :ref:`material` | | +---------------------------------+---------------------------------------------------+----------------------+ -| :ref:`Vector3` | :ref:`size` | ``Vector3(2, 2, 2)`` | +| :ref:`Vector3` | :ref:`size` | ``Vector3(1, 1, 1)`` | +---------------------------------+---------------------------------------------------+----------------------+ Property Descriptions @@ -49,7 +56,7 @@ The material used to render the box. - :ref:`Vector3` **size** +-----------+----------------------+ -| *Default* | ``Vector3(2, 2, 2)`` | +| *Default* | ``Vector3(1, 1, 1)`` | +-----------+----------------------+ | *Setter* | set_size(value) | +-----------+----------------------+ diff --git a/classes/class_csgcombiner3d.rst b/classes/class_csgcombiner3d.rst index 255c5dcb8..7c757d71c 100644 --- a/classes/class_csgcombiner3d.rst +++ b/classes/class_csgcombiner3d.rst @@ -18,6 +18,13 @@ Description For complex arrangements of shapes, it is sometimes needed to add structure to your CSG nodes. The CSGCombiner3D node allows you to create this structure. The node encapsulates the result of the CSG operations of its children. In this way, it is possible to do operations on one set of shapes that are children of one CSGCombiner3D node, and a set of separate operations on a second set of shapes that are children of a second CSGCombiner3D node, and then do an operation that takes the two end results as its input to create the final shape. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_csgcylinder3d.rst b/classes/class_csgcylinder3d.rst index ae3c881dd..352a6a83c 100644 --- a/classes/class_csgcylinder3d.rst +++ b/classes/class_csgcylinder3d.rst @@ -18,17 +18,24 @@ Description This node allows you to create a cylinder (or cone) for use with the CSG system. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- +---------------------------------+----------------------------------------------------------------+-----------+ | :ref:`bool` | :ref:`cone` | ``false`` | +---------------------------------+----------------------------------------------------------------+-----------+ -| :ref:`float` | :ref:`height` | ``1.0`` | +| :ref:`float` | :ref:`height` | ``2.0`` | +---------------------------------+----------------------------------------------------------------+-----------+ | :ref:`Material` | :ref:`material` | | +---------------------------------+----------------------------------------------------------------+-----------+ -| :ref:`float` | :ref:`radius` | ``1.0`` | +| :ref:`float` | :ref:`radius` | ``0.5`` | +---------------------------------+----------------------------------------------------------------+-----------+ | :ref:`int` | :ref:`sides` | ``8`` | +---------------------------------+----------------------------------------------------------------+-----------+ @@ -59,7 +66,7 @@ If ``true`` a cone is created, the :ref:`radius` **height** +-----------+-------------------+ -| *Default* | ``1.0`` | +| *Default* | ``2.0`` | +-----------+-------------------+ | *Setter* | set_height(value) | +-----------+-------------------+ @@ -89,7 +96,7 @@ The material used to render the cylinder. - :ref:`float` **radius** +-----------+-------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+-------------------+ | *Setter* | set_radius(value) | +-----------+-------------------+ diff --git a/classes/class_csgmesh3d.rst b/classes/class_csgmesh3d.rst index 32ea1a33b..4922dbc61 100644 --- a/classes/class_csgmesh3d.rst +++ b/classes/class_csgmesh3d.rst @@ -18,6 +18,13 @@ Description This CSG node allows you to use any mesh resource as a CSG shape, provided it is closed, does not self-intersect, does not contain internal faces and has no edges that connect to more than two faces. See also :ref:`CSGPolygon3D` for drawing 2D extruded polygons to be used as CSG nodes. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- diff --git a/classes/class_csgpolygon3d.rst b/classes/class_csgpolygon3d.rst index 0141dda57..55946d621 100644 --- a/classes/class_csgpolygon3d.rst +++ b/classes/class_csgpolygon3d.rst @@ -18,6 +18,13 @@ Description An array of 2D points is extruded to quickly and easily create a variety of 3D meshes. See also :ref:`CSGMesh3D` for using 3D meshes as CSG nodes. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- diff --git a/classes/class_csgprimitive3d.rst b/classes/class_csgprimitive3d.rst index 3bae451ac..801f927e5 100644 --- a/classes/class_csgprimitive3d.rst +++ b/classes/class_csgprimitive3d.rst @@ -20,6 +20,13 @@ Description Parent class for various CSG primitives. It contains code and functionality that is common between them. It cannot be used directly. Instead use one of the various classes that inherit from it. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- diff --git a/classes/class_csgshape3d.rst b/classes/class_csgshape3d.rst index 641697e0a..ac1d9260f 100644 --- a/classes/class_csgshape3d.rst +++ b/classes/class_csgshape3d.rst @@ -20,6 +20,13 @@ Description This is the CSG base class that provides CSG operation support to the various CSG nodes in Godot. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- diff --git a/classes/class_csgsphere3d.rst b/classes/class_csgsphere3d.rst index 44bf27426..edd675acb 100644 --- a/classes/class_csgsphere3d.rst +++ b/classes/class_csgsphere3d.rst @@ -18,6 +18,13 @@ Description This node allows you to create a sphere for use with the CSG system. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- diff --git a/classes/class_csgtorus3d.rst b/classes/class_csgtorus3d.rst index abc209e80..0bf681179 100644 --- a/classes/class_csgtorus3d.rst +++ b/classes/class_csgtorus3d.rst @@ -18,15 +18,22 @@ Description This node allows you to create a torus for use with the CSG system. +\ **Note:** CSG nodes are intended to be used for level prototyping. Creating CSG nodes has a significant CPU cost compared to creating a :ref:`MeshInstance3D` with a :ref:`PrimitiveMesh`. Moving a CSG node within another CSG node also has a significant CPU cost, so it should be avoided during gameplay. + +Tutorials +--------- + +- :doc:`Prototyping levels with CSG <../tutorials/3d/csg_tools>` + Properties ---------- +---------------------------------+-------------------------------------------------------------+----------+ -| :ref:`float` | :ref:`inner_radius` | ``2.0`` | +| :ref:`float` | :ref:`inner_radius` | ``0.5`` | +---------------------------------+-------------------------------------------------------------+----------+ | :ref:`Material` | :ref:`material` | | +---------------------------------+-------------------------------------------------------------+----------+ -| :ref:`float` | :ref:`outer_radius` | ``3.0`` | +| :ref:`float` | :ref:`outer_radius` | ``1.0`` | +---------------------------------+-------------------------------------------------------------+----------+ | :ref:`int` | :ref:`ring_sides` | ``6`` | +---------------------------------+-------------------------------------------------------------+----------+ @@ -43,7 +50,7 @@ Property Descriptions - :ref:`float` **inner_radius** +-----------+-------------------------+ -| *Default* | ``2.0`` | +| *Default* | ``0.5`` | +-----------+-------------------------+ | *Setter* | set_inner_radius(value) | +-----------+-------------------------+ @@ -73,7 +80,7 @@ The material used to render the torus. - :ref:`float` **outer_radius** +-----------+-------------------------+ -| *Default* | ``3.0`` | +| *Default* | ``1.0`` | +-----------+-------------------------+ | *Setter* | set_outer_radius(value) | +-----------+-------------------------+ diff --git a/classes/class_cylindermesh.rst b/classes/class_cylindermesh.rst index 043122378..57b776225 100644 --- a/classes/class_cylindermesh.rst +++ b/classes/class_cylindermesh.rst @@ -22,7 +22,7 @@ Properties ---------- +---------------------------+---------------------------------------------------------------------+---------+ -| :ref:`float` | :ref:`bottom_radius` | ``1.0`` | +| :ref:`float` | :ref:`bottom_radius` | ``0.5`` | +---------------------------+---------------------------------------------------------------------+---------+ | :ref:`float` | :ref:`height` | ``2.0`` | +---------------------------+---------------------------------------------------------------------+---------+ @@ -30,7 +30,7 @@ Properties +---------------------------+---------------------------------------------------------------------+---------+ | :ref:`int` | :ref:`rings` | ``4`` | +---------------------------+---------------------------------------------------------------------+---------+ -| :ref:`float` | :ref:`top_radius` | ``1.0`` | +| :ref:`float` | :ref:`top_radius` | ``0.5`` | +---------------------------+---------------------------------------------------------------------+---------+ Property Descriptions @@ -41,7 +41,7 @@ Property Descriptions - :ref:`float` **bottom_radius** +-----------+--------------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+--------------------------+ | *Setter* | set_bottom_radius(value) | +-----------+--------------------------+ @@ -105,7 +105,7 @@ Number of edge rings along the height of the cylinder. Changing :ref:`rings` **top_radius** +-----------+-----------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+-----------------------+ | *Setter* | set_top_radius(value) | +-----------+-----------------------+ diff --git a/classes/class_cylindershape3d.rst b/classes/class_cylindershape3d.rst index 6ce500bb6..bb49179c5 100644 --- a/classes/class_cylindershape3d.rst +++ b/classes/class_cylindershape3d.rst @@ -33,7 +33,7 @@ Properties +---------------------------+------------------------------------------------------+---------+ | :ref:`float` | :ref:`height` | ``2.0`` | +---------------------------+------------------------------------------------------+---------+ -| :ref:`float` | :ref:`radius` | ``1.0`` | +| :ref:`float` | :ref:`radius` | ``0.5`` | +---------------------------+------------------------------------------------------+---------+ Property Descriptions @@ -60,7 +60,7 @@ The cylinder's height. - :ref:`float` **radius** +-----------+-------------------+ -| *Default* | ``1.0`` | +| *Default* | ``0.5`` | +-----------+-------------------+ | *Setter* | set_radius(value) | +-----------+-------------------+ diff --git a/classes/class_dictionary.rst b/classes/class_dictionary.rst index a57a039ab..7bbb292ba 100644 --- a/classes/class_dictionary.rst +++ b/classes/class_dictionary.rst @@ -388,7 +388,7 @@ Returns ``true`` if the dictionary has all the keys in the given array. - :ref:`int` **hash** **(** **)** |const| -Returns a hashed integer value representing the dictionary contents. This can be used to compare dictionaries by value: +Returns a hashed 32-bit integer value representing the dictionary contents. This can be used to compare dictionaries by value: .. tabs:: @@ -412,6 +412,8 @@ Returns a hashed integer value representing the dictionary contents. This can be \ **Note:** Dictionaries with the same keys/values but in a different order will have a different hash. +\ **Note:** Dictionaries with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does *not* imply the dictionaries are equal, because different dictionaries can have identical hash values due to hash collisions. + ---- .. _class_Dictionary_method_is_empty: diff --git a/classes/class_displayserver.rst b/classes/class_displayserver.rst index 411c148fd..92f1f3ba7 100644 --- a/classes/class_displayserver.rst +++ b/classes/class_displayserver.rst @@ -16,217 +16,221 @@ DisplayServer Methods ------- -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`clipboard_get` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`clipboard_get_primary` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`clipboard_has` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clipboard_set` **(** :ref:`String` clipboard **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clipboard_set_primary` **(** :ref:`String` clipboard_primary **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`create_sub_window` **(** :ref:`WindowMode` mode, :ref:`VSyncMode` vsync_mode, :ref:`int` flags, :ref:`Rect2i` rect=Rect2i(0, 0, 0, 0) **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`CursorShape` | :ref:`cursor_get_shape` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`cursor_set_custom_image` **(** :ref:`Resource` cursor, :ref:`CursorShape` shape=0, :ref:`Vector2` hotspot=Vector2(0, 0) **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`cursor_set_shape` **(** :ref:`CursorShape` shape **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`delete_sub_window` **(** :ref:`int` window_id **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`dialog_input_text` **(** :ref:`String` title, :ref:`String` description, :ref:`String` existing_text, :ref:`Callable` callback **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`dialog_show` **(** :ref:`String` title, :ref:`String` description, :ref:`PackedStringArray` buttons, :ref:`Callable` callback **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`enable_for_stealing_focus` **(** :ref:`int` process_id **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`force_process_and_drop_events` **(** **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_name` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_screen_count` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`get_swap_cancel_ok` **(** **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_window_at_screen_position` **(** :ref:`Vector2i` position **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`get_window_list` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_add_check_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`Callable` callback, :ref:`Variant` tag=null **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_add_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`Callable` callback, :ref:`Variant` tag=null **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_add_separator` **(** :ref:`String` menu_root **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_add_submenu_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`String` submenu **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_clear` **(** :ref:`String` menu_root **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Callable` | :ref:`global_menu_get_item_callback` **(** :ref:`String` menu_root, :ref:`int` idx **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`global_menu_get_item_submenu` **(** :ref:`String` menu_root, :ref:`int` idx **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`global_menu_get_item_tag` **(** :ref:`String` menu_root, :ref:`int` idx **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`global_menu_get_item_text` **(** :ref:`String` menu_root, :ref:`int` idx **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`global_menu_is_item_checkable` **(** :ref:`String` menu_root, :ref:`int` idx **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`global_menu_is_item_checked` **(** :ref:`String` menu_root, :ref:`int` idx **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_remove_item` **(** :ref:`String` menu_root, :ref:`int` idx **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_callback` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`Callable` callback **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_checkable` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`bool` checkable **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_checked` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`bool` checked **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_submenu` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`String` submenu **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_tag` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`Variant` tag **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`global_menu_set_item_text` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`String` text **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`has_feature` **(** :ref:`Feature` feature **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`ime_get_selection` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`ime_get_text` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`keyboard_get_current_layout` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Key` | :ref:`keyboard_get_keycode_from_physical` **(** :ref:`Key` keycode **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`keyboard_get_layout_count` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`keyboard_get_layout_language` **(** :ref:`int` index **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`keyboard_get_layout_name` **(** :ref:`int` index **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`keyboard_set_current_layout` **(** :ref:`int` index **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`MouseButton` | :ref:`mouse_get_button_state` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`MouseMode` | :ref:`mouse_get_mode` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`mouse_get_position` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`mouse_set_mode` **(** :ref:`MouseMode` mouse_mode **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`mouse_warp_to_position` **(** :ref:`Vector2i` position **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`process_events` **(** **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`screen_get_dpi` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`screen_get_max_scale` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`ScreenOrientation` | :ref:`screen_get_orientation` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`screen_get_position` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`screen_get_scale` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`screen_get_size` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2i` | :ref:`screen_get_usable_rect` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`screen_is_kept_on` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`screen_is_touchscreen` **(** :ref:`int` screen=-1 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`screen_set_keep_on` **(** :ref:`bool` enable **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`screen_set_orientation` **(** :ref:`ScreenOrientation` orientation, :ref:`int` screen=-1 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_icon` **(** :ref:`Image` image **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_native_icon` **(** :ref:`String` filename **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`tablet_get_current_driver` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`tablet_get_driver_count` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`tablet_get_driver_name` **(** :ref:`int` idx **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`tablet_set_current_driver` **(** :ref:`String` name **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`virtual_keyboard_get_height` **(** **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`virtual_keyboard_hide` **(** **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`virtual_keyboard_show` **(** :ref:`String` existing_text, :ref:`Rect2` position=Rect2i(0, 0, 0, 0), :ref:`bool` multiline=false, :ref:`int` max_length=-1, :ref:`int` cursor_start=-1, :ref:`int` cursor_end=-1 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_attach_instance_id` **(** :ref:`int` instance_id, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`window_can_draw` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`window_get_attached_instance_id` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`window_get_current_screen` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`window_get_flag` **(** :ref:`WindowFlags` flag, :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`window_get_max_size` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`window_get_min_size` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`WindowMode` | :ref:`window_get_mode` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`window_get_native_handle` **(** :ref:`HandleType` handle_type, :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`window_get_position` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`window_get_real_size` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`window_get_size` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`VSyncMode` | :ref:`window_get_vsync_mode` **(** :ref:`int` window_id=0 **)** |const| | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_move_to_foreground` **(** :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_request_attention` **(** :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_current_screen` **(** :ref:`int` screen, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_drop_files_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_flag` **(** :ref:`WindowFlags` flag, :ref:`bool` enabled, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_ime_active` **(** :ref:`bool` active, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_ime_position` **(** :ref:`Vector2i` position, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_input_event_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_input_text_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_max_size` **(** :ref:`Vector2i` max_size, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_min_size` **(** :ref:`Vector2i` min_size, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_mode` **(** :ref:`WindowMode` mode, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_mouse_passthrough` **(** :ref:`PackedVector2Array` region, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_position` **(** :ref:`Vector2i` position, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_rect_changed_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_size` **(** :ref:`Vector2i` size, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_title` **(** :ref:`String` title, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_transient` **(** :ref:`int` window_id, :ref:`int` parent_window_id **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_vsync_mode` **(** :ref:`VSyncMode` vsync_mode, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`window_set_window_event_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | -+----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`clipboard_get` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`clipboard_get_primary` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`clipboard_has` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clipboard_set` **(** :ref:`String` clipboard **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clipboard_set_primary` **(** :ref:`String` clipboard_primary **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`create_sub_window` **(** :ref:`WindowMode` mode, :ref:`VSyncMode` vsync_mode, :ref:`int` flags, :ref:`Rect2i` rect=Rect2i(0, 0, 0, 0) **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`CursorShape` | :ref:`cursor_get_shape` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`cursor_set_custom_image` **(** :ref:`Resource` cursor, :ref:`CursorShape` shape=0, :ref:`Vector2` hotspot=Vector2(0, 0) **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`cursor_set_shape` **(** :ref:`CursorShape` shape **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`delete_sub_window` **(** :ref:`int` window_id **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Error` | :ref:`dialog_input_text` **(** :ref:`String` title, :ref:`String` description, :ref:`String` existing_text, :ref:`Callable` callback **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Error` | :ref:`dialog_show` **(** :ref:`String` title, :ref:`String` description, :ref:`PackedStringArray` buttons, :ref:`Callable` callback **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`enable_for_stealing_focus` **(** :ref:`int` process_id **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`force_process_and_drop_events` **(** **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_name` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_screen_count` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`get_swap_cancel_ok` **(** **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_window_at_screen_position` **(** :ref:`Vector2i` position **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`get_window_list` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_add_check_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`Callable` callback, :ref:`Variant` tag=null **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_add_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`Callable` callback, :ref:`Variant` tag=null **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_add_separator` **(** :ref:`String` menu_root **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_add_submenu_item` **(** :ref:`String` menu_root, :ref:`String` label, :ref:`String` submenu **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_clear` **(** :ref:`String` menu_root **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Callable` | :ref:`global_menu_get_item_callback` **(** :ref:`String` menu_root, :ref:`int` idx **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`global_menu_get_item_submenu` **(** :ref:`String` menu_root, :ref:`int` idx **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`global_menu_get_item_tag` **(** :ref:`String` menu_root, :ref:`int` idx **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`global_menu_get_item_text` **(** :ref:`String` menu_root, :ref:`int` idx **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`global_menu_is_item_checkable` **(** :ref:`String` menu_root, :ref:`int` idx **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`global_menu_is_item_checked` **(** :ref:`String` menu_root, :ref:`int` idx **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_remove_item` **(** :ref:`String` menu_root, :ref:`int` idx **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_callback` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`Callable` callback **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_checkable` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`bool` checkable **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_checked` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`bool` checked **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_submenu` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`String` submenu **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_tag` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`Variant` tag **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`global_menu_set_item_text` **(** :ref:`String` menu_root, :ref:`int` idx, :ref:`String` text **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`has_feature` **(** :ref:`Feature` feature **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`ime_get_selection` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`ime_get_text` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`keyboard_get_current_layout` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Key` | :ref:`keyboard_get_keycode_from_physical` **(** :ref:`Key` keycode **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`keyboard_get_layout_count` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`keyboard_get_layout_language` **(** :ref:`int` index **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`keyboard_get_layout_name` **(** :ref:`int` index **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`keyboard_set_current_layout` **(** :ref:`int` index **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`MouseButton` | :ref:`mouse_get_button_state` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`MouseMode` | :ref:`mouse_get_mode` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`mouse_get_position` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`mouse_set_mode` **(** :ref:`MouseMode` mouse_mode **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`mouse_warp_to_position` **(** :ref:`Vector2i` position **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`process_events` **(** **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`screen_get_dpi` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`screen_get_max_scale` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`ScreenOrientation` | :ref:`screen_get_orientation` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`screen_get_position` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`screen_get_refresh_rate` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`screen_get_scale` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`screen_get_size` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2i` | :ref:`screen_get_usable_rect` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`screen_is_kept_on` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`screen_is_touchscreen` **(** :ref:`int` screen=-1 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`screen_set_keep_on` **(** :ref:`bool` enable **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`screen_set_orientation` **(** :ref:`ScreenOrientation` orientation, :ref:`int` screen=-1 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_icon` **(** :ref:`Image` image **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_native_icon` **(** :ref:`String` filename **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`tablet_get_current_driver` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`tablet_get_driver_count` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`tablet_get_driver_name` **(** :ref:`int` idx **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`tablet_set_current_driver` **(** :ref:`String` name **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`virtual_keyboard_get_height` **(** **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`virtual_keyboard_hide` **(** **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`virtual_keyboard_show` **(** :ref:`String` existing_text, :ref:`Rect2` position=Rect2(0, 0, 0, 0), :ref:`bool` multiline=false, :ref:`int` max_length=-1, :ref:`int` cursor_start=-1, :ref:`int` cursor_end=-1 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_attach_instance_id` **(** :ref:`int` instance_id, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`window_can_draw` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`window_get_attached_instance_id` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`window_get_current_screen` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`window_get_flag` **(** :ref:`WindowFlags` flag, :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`window_get_max_size` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`window_get_min_size` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`WindowMode` | :ref:`window_get_mode` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`window_get_native_handle` **(** :ref:`HandleType` handle_type, :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`window_get_position` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`window_get_real_size` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`window_get_size` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`VSyncMode` | :ref:`window_get_vsync_mode` **(** :ref:`int` window_id=0 **)** |const| | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_move_to_foreground` **(** :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_request_attention` **(** :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_current_screen` **(** :ref:`int` screen, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_drop_files_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_exclusive` **(** :ref:`int` window_id, :ref:`bool` exclusive **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_flag` **(** :ref:`WindowFlags` flag, :ref:`bool` enabled, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_ime_active` **(** :ref:`bool` active, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_ime_position` **(** :ref:`Vector2i` position, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_input_event_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_input_text_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_max_size` **(** :ref:`Vector2i` max_size, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_min_size` **(** :ref:`Vector2i` min_size, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_mode` **(** :ref:`WindowMode` mode, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_mouse_passthrough` **(** :ref:`PackedVector2Array` region, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_position` **(** :ref:`Vector2i` position, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_rect_changed_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_size` **(** :ref:`Vector2i` size, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_title` **(** :ref:`String` title, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_transient` **(** :ref:`int` window_id, :ref:`int` parent_window_id **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_vsync_mode` **(** :ref:`VSyncMode` vsync_mode, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`window_set_window_event_callback` **(** :ref:`Callable` callback, :ref:`int` window_id=0 **)** | ++----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ @@ -459,6 +463,8 @@ enum **CursorShape**: .. _class_DisplayServer_constant_WINDOW_MODE_FULLSCREEN: +.. _class_DisplayServer_constant_WINDOW_MODE_EXCLUSIVE_FULLSCREEN: + enum **WindowMode**: - **WINDOW_MODE_WINDOWED** = **0** @@ -471,6 +477,12 @@ enum **WindowMode**: Regardless of the platform, enabling fullscreen will change the window size to match the monitor's size. Therefore, make sure your project supports :doc:`multiple resolutions <../tutorials/rendering/multiple_resolutions>` when enabling fullscreen mode. +- **WINDOW_MODE_EXCLUSIVE_FULLSCREEN** = **4** --- Exclusive fullscreen window mode. This mode is implemented on Windows only. On other platforms, it is equivalent to :ref:`WINDOW_MODE_FULLSCREEN`. + +Only one window in exclusive fullscreen mode can be visible on a given screen at a time. If multiple windows are in exclusive fullscreen mode for the same screen, the last one being set to this mode takes precedence. + +Regardless of the platform, enabling fullscreen will change the window size to match the monitor's size. Therefore, make sure your project supports :doc:`multiple resolutions <../tutorials/rendering/multiple_resolutions>` when enabling fullscreen mode. + ---- .. _enum_DisplayServer_WindowFlags: @@ -1012,6 +1024,24 @@ Returns the greatest scale factor of all screens. ---- +.. _class_DisplayServer_method_screen_get_refresh_rate: + +- :ref:`float` **screen_get_refresh_rate** **(** :ref:`int` screen=-1 **)** |const| + +Returns the current refresh rate of the specified screen. If ``screen`` is :ref:`SCREEN_OF_MAIN_WINDOW` (the default value), a screen with the main window will be used. + +\ **Note:** Returns ``-1.0`` if the DisplayServer fails to find the refresh rate for the specified screen. On HTML5, :ref:`screen_get_refresh_rate` will always return ``-1.0`` as there is no way to retrieve the refresh rate on that platform. + +To fallback to a default refresh rate if the method fails, try: + +:: + + var refresh_rate = DisplayServer.screen_get_refresh_rate() + if refresh_rate < 0: + refresh_rate = 60.0 + +---- + .. _class_DisplayServer_method_screen_get_scale: - :ref:`float` **screen_get_scale** **(** :ref:`int` screen=-1 **)** |const| @@ -1130,7 +1160,7 @@ Hides the virtual keyboard if it is shown, does nothing otherwise. .. _class_DisplayServer_method_virtual_keyboard_show: -- void **virtual_keyboard_show** **(** :ref:`String` existing_text, :ref:`Rect2` position=Rect2i(0, 0, 0, 0), :ref:`bool` multiline=false, :ref:`int` max_length=-1, :ref:`int` cursor_start=-1, :ref:`int` cursor_end=-1 **)** +- void **virtual_keyboard_show** **(** :ref:`String` existing_text, :ref:`Rect2` position=Rect2(0, 0, 0, 0), :ref:`bool` multiline=false, :ref:`int` max_length=-1, :ref:`int` cursor_start=-1, :ref:`int` cursor_end=-1 **)** Shows the virtual keyboard if the platform has one. @@ -1264,6 +1294,18 @@ Returns the VSync mode of the given window. ---- +.. _class_DisplayServer_method_window_set_exclusive: + +- void **window_set_exclusive** **(** :ref:`int` window_id, :ref:`bool` exclusive **)** + +If set to ``true``, this window will always stay on top of its parent window, parent window will ignore input while this window is opened. + +\ **Note:** On macOS, exclusive windows are confined to the same space (virtual desktop or screen) as the parent window. + +\ **Note:** This method is implemented on macOS and Windows. + +---- + .. _class_DisplayServer_method_window_set_flag: - void **window_set_flag** **(** :ref:`WindowFlags` flag, :ref:`bool` enabled, :ref:`int` window_id=0 **)** diff --git a/classes/class_editorplugin.rst b/classes/class_editorplugin.rst index d2635ac37..9d077ab7e 100644 --- a/classes/class_editorplugin.rst +++ b/classes/class_editorplugin.rst @@ -26,133 +26,133 @@ Tutorials Methods ------- -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_apply_changes` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_build` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_clear` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_disable_plugin` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_edit` **(** :ref:`Variant` object **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_enable_plugin` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_forward_3d_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_forward_3d_force_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_forward_3d_gui_input` **(** :ref:`Camera3D` viewport_camera, :ref:`InputEvent` event **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_forward_canvas_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_forward_canvas_force_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_forward_canvas_gui_input` **(** :ref:`InputEvent` event **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedStringArray` | :ref:`_get_breakpoints` **(** **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Texture2D` | :ref:`_get_plugin_icon` **(** **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_get_plugin_name` **(** **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_get_state` **(** **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_get_window_layout` **(** :ref:`ConfigFile` configuration **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_handles` **(** :ref:`Variant` object **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_has_main_screen` **(** **)** |virtual| |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_make_visible` **(** :ref:`bool` visible **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_save_external_data` **(** **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_set_state` **(** :ref:`Dictionary` state **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_set_window_layout` **(** :ref:`ConfigFile` configuration **)** |virtual| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_autoload_singleton` **(** :ref:`String` name, :ref:`String` path **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Button` | :ref:`add_control_to_bottom_panel` **(** :ref:`Control` control, :ref:`String` title **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_control_to_container` **(** :ref:`CustomControlContainer` container, :ref:`Control` control **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_control_to_dock` **(** :ref:`DockSlot` slot, :ref:`Control` control **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_custom_type` **(** :ref:`String` type, :ref:`String` base, :ref:`Script` script, :ref:`Texture2D` icon **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_debugger_plugin` **(** :ref:`Script` script **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_export_plugin` **(** :ref:`EditorExportPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_import_plugin` **(** :ref:`EditorImportPlugin` importer **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_inspector_plugin` **(** :ref:`EditorInspectorPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_scene_format_importer_plugin` **(** :ref:`EditorSceneFormatImporter` scene_format_importer **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_scene_post_import_plugin` **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_spatial_gizmo_plugin` **(** :ref:`EditorNode3DGizmoPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_tool_menu_item` **(** :ref:`String` name, :ref:`Callable` callable **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_tool_submenu_item` **(** :ref:`String` name, :ref:`PopupMenu` submenu **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_translation_parser_plugin` **(** :ref:`EditorTranslationParserPlugin` parser **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_undo_redo_inspector_hook_callback` **(** :ref:`Callable` callable **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`EditorInterface` | :ref:`get_editor_interface` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`ScriptCreateDialog` | :ref:`get_script_create_dialog` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`UndoRedo` | :ref:`get_undo_redo` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`hide_bottom_panel` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`make_bottom_panel_item_visible` **(** :ref:`Control` item **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`queue_save_layout` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_autoload_singleton` **(** :ref:`String` name **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_control_from_bottom_panel` **(** :ref:`Control` control **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_control_from_container` **(** :ref:`CustomControlContainer` container, :ref:`Control` control **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_control_from_docks` **(** :ref:`Control` control **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_custom_type` **(** :ref:`String` type **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_debugger_plugin` **(** :ref:`Script` script **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_export_plugin` **(** :ref:`EditorExportPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_import_plugin` **(** :ref:`EditorImportPlugin` importer **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_inspector_plugin` **(** :ref:`EditorInspectorPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_scene_format_importer_plugin` **(** :ref:`EditorSceneFormatImporter` scene_format_importer **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_scene_post_import_plugin` **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_spatial_gizmo_plugin` **(** :ref:`EditorNode3DGizmoPlugin` plugin **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_tool_menu_item` **(** :ref:`String` name **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_translation_parser_plugin` **(** :ref:`EditorTranslationParserPlugin` parser **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_undo_redo_inspector_hook_callback` **(** :ref:`Callable` callable **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_force_draw_over_forwarding_enabled` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_input_event_forwarding_always_enabled` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`update_overlays` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_apply_changes` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_build` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_clear` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_disable_plugin` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_edit` **(** :ref:`Variant` object **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_enable_plugin` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_forward_3d_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_forward_3d_force_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_forward_3d_gui_input` **(** :ref:`Camera3D` viewport_camera, :ref:`InputEvent` event **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_forward_canvas_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_forward_canvas_force_draw_over_viewport` **(** :ref:`Control` viewport_control **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_forward_canvas_gui_input` **(** :ref:`InputEvent` event **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedStringArray` | :ref:`_get_breakpoints` **(** **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Texture2D` | :ref:`_get_plugin_icon` **(** **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_get_plugin_name` **(** **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_get_state` **(** **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_get_window_layout` **(** :ref:`ConfigFile` configuration **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_handles` **(** :ref:`Variant` object **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_has_main_screen` **(** **)** |virtual| |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_make_visible` **(** :ref:`bool` visible **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_save_external_data` **(** **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_set_state` **(** :ref:`Dictionary` state **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_set_window_layout` **(** :ref:`ConfigFile` configuration **)** |virtual| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_autoload_singleton` **(** :ref:`String` name, :ref:`String` path **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Button` | :ref:`add_control_to_bottom_panel` **(** :ref:`Control` control, :ref:`String` title **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_control_to_container` **(** :ref:`CustomControlContainer` container, :ref:`Control` control **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_control_to_dock` **(** :ref:`DockSlot` slot, :ref:`Control` control **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_custom_type` **(** :ref:`String` type, :ref:`String` base, :ref:`Script` script, :ref:`Texture2D` icon **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_debugger_plugin` **(** :ref:`Script` script **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_export_plugin` **(** :ref:`EditorExportPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_import_plugin` **(** :ref:`EditorImportPlugin` importer, :ref:`bool` first_priority=false **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_inspector_plugin` **(** :ref:`EditorInspectorPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_scene_format_importer_plugin` **(** :ref:`EditorSceneFormatImporter` scene_format_importer, :ref:`bool` first_priority=false **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_scene_post_import_plugin` **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin, :ref:`bool` first_priority=false **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_spatial_gizmo_plugin` **(** :ref:`EditorNode3DGizmoPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_tool_menu_item` **(** :ref:`String` name, :ref:`Callable` callable **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_tool_submenu_item` **(** :ref:`String` name, :ref:`PopupMenu` submenu **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_translation_parser_plugin` **(** :ref:`EditorTranslationParserPlugin` parser **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_undo_redo_inspector_hook_callback` **(** :ref:`Callable` callable **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`EditorInterface` | :ref:`get_editor_interface` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`ScriptCreateDialog` | :ref:`get_script_create_dialog` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`UndoRedo` | :ref:`get_undo_redo` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`hide_bottom_panel` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`make_bottom_panel_item_visible` **(** :ref:`Control` item **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`queue_save_layout` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_autoload_singleton` **(** :ref:`String` name **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_control_from_bottom_panel` **(** :ref:`Control` control **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_control_from_container` **(** :ref:`CustomControlContainer` container, :ref:`Control` control **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_control_from_docks` **(** :ref:`Control` control **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_custom_type` **(** :ref:`String` type **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_debugger_plugin` **(** :ref:`Script` script **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_export_plugin` **(** :ref:`EditorExportPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_import_plugin` **(** :ref:`EditorImportPlugin` importer **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_inspector_plugin` **(** :ref:`EditorInspectorPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_scene_format_importer_plugin` **(** :ref:`EditorSceneFormatImporter` scene_format_importer **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_scene_post_import_plugin` **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_spatial_gizmo_plugin` **(** :ref:`EditorNode3DGizmoPlugin` plugin **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_tool_menu_item` **(** :ref:`String` name **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_translation_parser_plugin` **(** :ref:`EditorTranslationParserPlugin` parser **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_undo_redo_inspector_hook_callback` **(** :ref:`Callable` callable **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_force_draw_over_forwarding_enabled` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_input_event_forwarding_always_enabled` **(** **)** | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`update_overlays` **(** **)** |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Signals ------- @@ -745,10 +745,12 @@ See :ref:`add_inspector_plugin` .. _class_EditorPlugin_method_add_import_plugin: -- void **add_import_plugin** **(** :ref:`EditorImportPlugin` importer **)** +- void **add_import_plugin** **(** :ref:`EditorImportPlugin` importer, :ref:`bool` first_priority=false **)** Registers a new :ref:`EditorImportPlugin`. Import plugins are used to import custom and unsupported assets as a custom :ref:`Resource` type. +If ``first_priority`` is ``true``, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins. + \ **Note:** If you want to import custom 3D asset formats use :ref:`add_scene_format_importer_plugin` instead. See :ref:`add_inspector_plugin` for an example of how to register a plugin. @@ -783,18 +785,22 @@ Registers a new :ref:`EditorInspectorPlugin`. Inspe .. _class_EditorPlugin_method_add_scene_format_importer_plugin: -- void **add_scene_format_importer_plugin** **(** :ref:`EditorSceneFormatImporter` scene_format_importer **)** +- void **add_scene_format_importer_plugin** **(** :ref:`EditorSceneFormatImporter` scene_format_importer, :ref:`bool` first_priority=false **)** Registers a new :ref:`EditorSceneFormatImporter`. Scene importers are used to import custom 3D asset formats as scenes. +If ``first_priority`` is ``true``, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins. + ---- .. _class_EditorPlugin_method_add_scene_post_import_plugin: -- void **add_scene_post_import_plugin** **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin **)** +- void **add_scene_post_import_plugin** **(** :ref:`EditorScenePostImportPlugin` scene_import_plugin, :ref:`bool` first_priority=false **)** Add a :ref:`EditorScenePostImportPlugin`. These plugins allow customizing the import process of 3D assets by adding new options to the import dialogs. +If ``first_priority`` is ``true``, the new import plugin is inserted first in the list and takes precedence over pre-existing plugins. + ---- .. _class_EditorPlugin_method_add_spatial_gizmo_plugin: diff --git a/classes/class_enginedebugger.rst b/classes/class_enginedebugger.rst index 6d51797f1..09c4c9ead 100644 --- a/classes/class_enginedebugger.rst +++ b/classes/class_enginedebugger.rst @@ -21,29 +21,29 @@ Description Methods ------- -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`has_capture` **(** :ref:`StringName` name **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`has_profiler` **(** :ref:`StringName` name **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_active` **(** **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_profiling` **(** :ref:`StringName` name **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`profiler_add_frame_data` **(** :ref:`StringName` name, :ref:`Array` data **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`profiler_enable` **(** :ref:`StringName` name, :ref:`bool` enable, :ref:`Array` arguments=[] **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`register_message_capture` **(** :ref:`StringName` name, :ref:`Callable` callable **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`register_profiler` **(** :ref:`StringName` name, :ref:`Callable` toggle, :ref:`Callable` add, :ref:`Callable` tick **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`send_message` **(** :ref:`String` message, :ref:`Array` data **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`unregister_message_capture` **(** :ref:`StringName` name **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`unregister_profiler` **(** :ref:`StringName` name **)** | -+-------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`has_capture` **(** :ref:`StringName` name **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`has_profiler` **(** :ref:`StringName` name **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_active` **(** **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_profiling` **(** :ref:`StringName` name **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`profiler_add_frame_data` **(** :ref:`StringName` name, :ref:`Array` data **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`profiler_enable` **(** :ref:`StringName` name, :ref:`bool` enable, :ref:`Array` arguments=[] **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`register_message_capture` **(** :ref:`StringName` name, :ref:`Callable` callable **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`register_profiler` **(** :ref:`StringName` name, :ref:`EngineProfiler` profiler **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`send_message` **(** :ref:`String` message, :ref:`Array` data **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`unregister_message_capture` **(** :ref:`StringName` name **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`unregister_profiler` **(** :ref:`StringName` name **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Method Descriptions ------------------- @@ -108,15 +108,9 @@ Callable must accept a message string and a data array as argument. If the messa .. _class_EngineDebugger_method_register_profiler: -- void **register_profiler** **(** :ref:`StringName` name, :ref:`Callable` toggle, :ref:`Callable` add, :ref:`Callable` tick **)** +- void **register_profiler** **(** :ref:`StringName` name, :ref:`EngineProfiler` profiler **)** -Registers a profiler with the given ``name``. - -\ ``toggle`` callable is called when the profiler is enabled/disabled. It must take an argument array as an argument. - -\ ``add`` callable is called when data is added to profiler using :ref:`profiler_add_frame_data`. It must take a data array as argument. - -\ ``tick`` callable is called at every active profiler iteration. It must take frame time, idle time, physics time, and physics idle time as arguments. +Registers a profiler with the given ``name``. See :ref:`EngineProfiler` for more information. ---- diff --git a/classes/class_engineprofiler.rst b/classes/class_engineprofiler.rst new file mode 100644 index 000000000..9a77de842 --- /dev/null +++ b/classes/class_engineprofiler.rst @@ -0,0 +1,64 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the EngineProfiler.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_EngineProfiler: + +EngineProfiler +============== + +**Inherits:** :ref:`RefCounted` **<** :ref:`Object` + +Base class for creating custom profilers. + +Description +----------- + +This class can be used to implement custom profilers that are able to interact with the engine and editor debugger. + +See :ref:`EngineDebugger` and :ref:`EditorDebuggerPlugin` for more information. + +Methods +------- + ++------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_add_frame` **(** :ref:`Array` data **)** |virtual| | ++------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_tick` **(** :ref:`float` frame_time, :ref:`float` idle_time, :ref:`float` physics_time, :ref:`float` physics_frame_time **)** |virtual| | ++------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_toggle` **(** :ref:`bool` enable, :ref:`Array` options **)** |virtual| | ++------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +Method Descriptions +------------------- + +.. _class_EngineProfiler_method__add_frame: + +- void **_add_frame** **(** :ref:`Array` data **)** |virtual| + +Called when data is added to profiler using :ref:`EngineDebugger.profiler_add_frame_data`. + +---- + +.. _class_EngineProfiler_method__tick: + +- void **_tick** **(** :ref:`float` frame_time, :ref:`float` idle_time, :ref:`float` physics_time, :ref:`float` physics_frame_time **)** |virtual| + +Called once every engine iteration when the profiler is active with information about the current frame. + +---- + +.. _class_EngineProfiler_method__toggle: + +- void **_toggle** **(** :ref:`bool` enable, :ref:`Array` options **)** |virtual| + +Called when the profiler is enabled/disabled, along with a set of ``options``. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_environment.rst b/classes/class_environment.rst index 1ec42b4c4..015b9874e 100644 --- a/classes/class_environment.rst +++ b/classes/class_environment.rst @@ -137,17 +137,17 @@ Properties +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`ReflectionSource` | :ref:`reflected_light_source` | ``0`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ -| :ref:`float` | :ref:`sdfgi_bounce_feedback` | ``0.0`` | +| :ref:`float` | :ref:`sdfgi_bounce_feedback` | ``0.5`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`float` | :ref:`sdfgi_cascade0_distance` | ``12.8`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ -| :ref:`int` | :ref:`sdfgi_cascades` | ``6`` | +| :ref:`int` | :ref:`sdfgi_cascades` | ``4`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`bool` | :ref:`sdfgi_enabled` | ``false`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`float` | :ref:`sdfgi_energy` | ``1.0`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ -| :ref:`float` | :ref:`sdfgi_max_distance` | ``819.2`` | +| :ref:`float` | :ref:`sdfgi_max_distance` | ``204.8`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`float` | :ref:`sdfgi_min_cell_size` | ``0.2`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ @@ -155,11 +155,11 @@ Properties +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`float` | :ref:`sdfgi_probe_bias` | ``1.1`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ -| :ref:`bool` | :ref:`sdfgi_read_sky_light` | ``false`` | +| :ref:`bool` | :ref:`sdfgi_read_sky_light` | ``true`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`bool` | :ref:`sdfgi_use_occlusion` | ``false`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ -| :ref:`SDFGIYScale` | :ref:`sdfgi_y_scale` | ``0`` | +| :ref:`SDFGIYScale` | :ref:`sdfgi_y_scale` | ``1`` | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ | :ref:`Sky` | :ref:`sky` | | +------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------+-----------------------------+ @@ -372,19 +372,19 @@ enum **GlowBlendMode**: .. _enum_Environment_SDFGIYScale: -.. _class_Environment_constant_SDFGI_Y_SCALE_DISABLED: +.. _class_Environment_constant_SDFGI_Y_SCALE_50_PERCENT: .. _class_Environment_constant_SDFGI_Y_SCALE_75_PERCENT: -.. _class_Environment_constant_SDFGI_Y_SCALE_50_PERCENT: +.. _class_Environment_constant_SDFGI_Y_SCALE_100_PERCENT: enum **SDFGIYScale**: -- **SDFGI_Y_SCALE_DISABLED** = **0** +- **SDFGI_Y_SCALE_50_PERCENT** = **0** - **SDFGI_Y_SCALE_75_PERCENT** = **1** -- **SDFGI_Y_SCALE_50_PERCENT** = **2** +- **SDFGI_Y_SCALE_100_PERCENT** = **2** Property Descriptions --------------------- @@ -511,7 +511,9 @@ The ambient light's energy. The higher the value, the stronger the light. | *Getter* | get_ambient_light_sky_contribution() | +-----------+-------------------------------------------+ -Defines the amount of light that the sky brings on the scene. A value of 0 means that the sky's light emission has no effect on the scene illumination, thus all ambient illumination is provided by the ambient light. On the contrary, a value of 1 means that all the light that affects the scene is provided by the sky, thus the ambient light parameter has no effect on the scene. +Defines the amount of light that the sky brings on the scene. A value of ``0.0`` means that the sky's light emission has no effect on the scene illumination, thus all ambient illumination is provided by the ambient light. On the contrary, a value of ``1.0`` means that *all* the light that affects the scene is provided by the sky, thus the ambient light parameter has no effect on the scene. + +\ **Note:** :ref:`ambient_light_sky_contribution` is internally clamped between ``0.0`` and ``1.0`` (inclusive). ---- @@ -1132,7 +1134,7 @@ The strength of the glow effect. This applies as the glow is blurred across the - :ref:`float` **sdfgi_bounce_feedback** +-----------+----------------------------------+ -| *Default* | ``0.0`` | +| *Default* | ``0.5`` | +-----------+----------------------------------+ | *Setter* | set_sdfgi_bounce_feedback(value) | +-----------+----------------------------------+ @@ -1160,7 +1162,7 @@ The strength of the glow effect. This applies as the glow is blurred across the - :ref:`int` **sdfgi_cascades** +-----------+---------------------------+ -| *Default* | ``6`` | +| *Default* | ``4`` | +-----------+---------------------------+ | *Setter* | set_sdfgi_cascades(value) | +-----------+---------------------------+ @@ -1210,7 +1212,7 @@ If ``true``, enables signed distance field global illumination for meshes that h - :ref:`float` **sdfgi_max_distance** +-----------+-------------------------------+ -| *Default* | ``819.2`` | +| *Default* | ``204.8`` | +-----------+-------------------------------+ | *Setter* | set_sdfgi_max_distance(value) | +-----------+-------------------------------+ @@ -1266,7 +1268,7 @@ If ``true``, enables signed distance field global illumination for meshes that h - :ref:`bool` **sdfgi_read_sky_light** +-----------+---------------------------------+ -| *Default* | ``false`` | +| *Default* | ``true`` | +-----------+---------------------------------+ | *Setter* | set_sdfgi_read_sky_light(value) | +-----------+---------------------------------+ @@ -1294,7 +1296,7 @@ If ``true``, enables signed distance field global illumination for meshes that h - :ref:`SDFGIYScale` **sdfgi_y_scale** +-----------+--------------------------+ -| *Default* | ``0`` | +| *Default* | ``1`` | +-----------+--------------------------+ | *Setter* | set_sdfgi_y_scale(value) | +-----------+--------------------------+ diff --git a/classes/class_float.rst b/classes/class_float.rst index 3a228214f..789a15a96 100644 --- a/classes/class_float.rst +++ b/classes/class_float.rst @@ -56,11 +56,11 @@ Operators +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`operator *` **(** :ref:`Vector2` right **)** | +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`operator *` **(** :ref:`Vector2i` right **)** | +| :ref:`Vector2` | :ref:`operator *` **(** :ref:`Vector2i` right **)** | +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`operator *` **(** :ref:`Vector3` right **)** | +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector3i` | :ref:`operator *` **(** :ref:`Vector3i` right **)** | +| :ref:`Vector3` | :ref:`operator *` **(** :ref:`Vector3i` right **)** | +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`operator *` **(** :ref:`float` right **)** | +-------------------------------------+--------------------------------------------------------------------------------------------------------------+ @@ -181,13 +181,13 @@ Multiplies each component of the :ref:`Vector2` by the given ``fl ---- -- :ref:`Vector2i` **operator *** **(** :ref:`Vector2i` right **)** +- :ref:`Vector2` **operator *** **(** :ref:`Vector2i` right **)** -Multiplies each component of the :ref:`Vector2i` by the given ``float`` truncated to an integer. +Multiplies each component of the :ref:`Vector2i` by the given ``float``. Returns a :ref:`Vector2`. :: - print(0.9 * Vector2i(10, 20)) # Prints "(0, 0)" + print(0.9 * Vector2i(10, 15)) # Prints "(9, 13.5)" ---- @@ -197,13 +197,13 @@ Multiplies each component of the :ref:`Vector3` by the given ``fl ---- -- :ref:`Vector3i` **operator *** **(** :ref:`Vector3i` right **)** +- :ref:`Vector3` **operator *** **(** :ref:`Vector3i` right **)** -Multiplies each component of the :ref:`Vector3i` by the given ``float`` truncated to an integer. +Multiplies each component of the :ref:`Vector3i` by the given ``float``. Returns a :ref:`Vector3`. :: - print(0.9 * Vector3i(10, 20, 30)) # Prints "(0, 0, 0)" + print(0.9 * Vector3i(10, 15, 20)) # Prints "(9, 13.5, 18)" ---- diff --git a/classes/class_fontdata.rst b/classes/class_fontdata.rst index 9cc6db27e..9ecc48431 100644 --- a/classes/class_fontdata.rst +++ b/classes/class_fontdata.rst @@ -24,33 +24,35 @@ Supported font formats: Properties ---------- -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`bool` | :ref:`antialiased` | ``true`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`PackedByteArray` | :ref:`data` | ``PackedByteArray()`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`int` | :ref:`fixed_size` | ``0`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`String` | :ref:`font_name` | ``""`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`int` | :ref:`font_style` | ``0`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`bool` | :ref:`force_autohinter` | ``false`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`Hinting` | :ref:`hinting` | ``1`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`int` | :ref:`msdf_pixel_range` | ``16`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`int` | :ref:`msdf_size` | ``48`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`bool` | :ref:`multichannel_signed_distance_field` | ``false`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`Dictionary` | :ref:`opentype_feature_overrides` | ``{}`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`float` | :ref:`oversampling` | ``0.0`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ -| :ref:`String` | :ref:`style_name` | ``""`` | -+-----------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`bool` | :ref:`antialiased` | ``true`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`PackedByteArray` | :ref:`data` | ``PackedByteArray()`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`int` | :ref:`fixed_size` | ``0`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`String` | :ref:`font_name` | ``""`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`int` | :ref:`font_style` | ``0`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`bool` | :ref:`force_autohinter` | ``false`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`Hinting` | :ref:`hinting` | ``1`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`int` | :ref:`msdf_pixel_range` | ``16`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`int` | :ref:`msdf_size` | ``48`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`bool` | :ref:`multichannel_signed_distance_field` | ``false`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`Dictionary` | :ref:`opentype_feature_overrides` | ``{}`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`float` | :ref:`oversampling` | ``0.0`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`String` | :ref:`style_name` | ``""`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ +| :ref:`SubpixelPositioning` | :ref:`subpixel_positioning` | ``1`` | ++-----------------------------------------------------------------+-------------------------------------------------------------------------------------------------------+-----------------------+ Methods ------- @@ -284,7 +286,7 @@ Font style flags, see :ref:`FontStyle`. | *Getter* | is_force_autohinter() | +-----------+-----------------------------+ -If set to ``true``, auto-hinting is supported and preffered over font built-in hinting. Used by dynamic fonts only. +If set to ``true``, auto-hinting is supported and preferred over font built-in hinting. Used by dynamic fonts only. ---- @@ -398,6 +400,22 @@ Font oversampling factor, if set to ``0.0`` global oversampling factor is used i Font style name. +---- + +.. _class_FontData_property_subpixel_positioning: + +- :ref:`SubpixelPositioning` **subpixel_positioning** + ++-----------+---------------------------------+ +| *Default* | ``1`` | ++-----------+---------------------------------+ +| *Setter* | set_subpixel_positioning(value) | ++-----------+---------------------------------+ +| *Getter* | get_subpixel_positioning() | ++-----------+---------------------------------+ + +Font glyph sub-pixel positioning mode. Subpixel positioning provides shaper text and better kerning for smaller font sizes, at the cost of memory usage and font rasterization speed. Use :ref:`TextServer.SUBPIXEL_POSITIONING_AUTO` to automatically enable it based on the font size. + Method Descriptions ------------------- diff --git a/classes/class_geometryinstance3d.rst b/classes/class_geometryinstance3d.rst index a8a8c0ae5..aeec91b55 100644 --- a/classes/class_geometryinstance3d.rst +++ b/classes/class_geometryinstance3d.rst @@ -296,7 +296,11 @@ If a material is assigned to this property, it will be used instead of any mater | *Getter* | get_transparency() | +-----------+-------------------------+ -Transparency applied to the whole geometry. In spatial shaders, transparency is set as the default value of the ``ALPHA`` built-in. +The transparency applied to the whole geometry (as a multiplier of the materials' existing transparency). ``0.0`` is fully opaque, while ``1.0`` is fully transparent. Values greater than ``0.0`` (exclusive) will force the geometry's materials to go through the transparent pipeline, which is slower to render and can exhibit rendering issues due to incorrect transparency sorting. However, unlike using a transparent material, setting :ref:`transparency` to a value greater than ``0.0`` (exclusive) will *not* disable shadow rendering. + +In spatial shaders, ``1.0 - transparency`` is set as the default value of the ``ALPHA`` built-in. + +\ **Note:** :ref:`transparency` is clamped between ``0.0`` and ``1.0``, so this property cannot be used to make transparent materials more opaque than they originally are. ---- diff --git a/classes/class_gpuparticles2d.rst b/classes/class_gpuparticles2d.rst index bb24a3c0a..ca881174d 100644 --- a/classes/class_gpuparticles2d.rst +++ b/classes/class_gpuparticles2d.rst @@ -128,7 +128,7 @@ enum **EmitFlags**: - **EMIT_FLAG_COLOR** = **8** --- Particle starts with specified color. -- **EMIT_FLAG_CUSTOM** = **16** --- Particle starts with specificed ``CUSTOM`` data. +- **EMIT_FLAG_CUSTOM** = **16** --- Particle starts with specified ``CUSTOM`` data. Property Descriptions --------------------- diff --git a/classes/class_gpuparticles3d.rst b/classes/class_gpuparticles3d.rst index c0ff86adc..bba2dd26f 100644 --- a/classes/class_gpuparticles3d.rst +++ b/classes/class_gpuparticles3d.rst @@ -146,7 +146,7 @@ enum **EmitFlags**: - **EMIT_FLAG_COLOR** = **8** --- Particle starts with specified color. -- **EMIT_FLAG_CUSTOM** = **16** --- Particle starts with specificed ``CUSTOM`` data. +- **EMIT_FLAG_CUSTOM** = **16** --- Particle starts with specified ``CUSTOM`` data. ---- diff --git a/classes/class_gridmap.rst b/classes/class_gridmap.rst index abd0e4e23..9b03dd0b6 100644 --- a/classes/class_gridmap.rst +++ b/classes/class_gridmap.rst @@ -88,6 +88,8 @@ Methods +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Array` | :ref:`get_used_cells` **(** **)** |const| | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`get_used_cells_by_item` **(** :ref:`int` item **)** |const| | ++---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`make_baked_meshes` **(** :ref:`bool` gen_lightmap_uv=false, :ref:`float` lightmap_uv_texel_size=0.1 **)** | +---------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`map_to_world` **(** :ref:`Vector3i` map_position **)** |const| | @@ -395,6 +397,14 @@ Returns an array of :ref:`Vector3` with the non-empty cell coordi ---- +.. _class_GridMap_method_get_used_cells_by_item: + +- :ref:`Array` **get_used_cells_by_item** **(** :ref:`int` item **)** |const| + +Returns an array of all cells with the given item index specified in ``item``. + +---- + .. _class_GridMap_method_make_baked_meshes: - void **make_baked_meshes** **(** :ref:`bool` gen_lightmap_uv=false, :ref:`float` lightmap_uv_texel_size=0.1 **)** diff --git a/classes/class_image.rst b/classes/class_image.rst index ac05ec538..70be9d06b 100644 --- a/classes/class_image.rst +++ b/classes/class_image.rst @@ -56,6 +56,8 @@ Methods +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Error` | :ref:`compress_from_channels` **(** :ref:`CompressMode` mode, :ref:`UsedChannels` channels, :ref:`float` lossy_quality=0.7 **)** | +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`compute_image_metrics` **(** :ref:`Image` compared_image, :ref:`bool` use_luma **)** | ++-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`convert` **(** :ref:`Format` format **)** | +-----------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`copy_from` **(** :ref:`Image` src **)** | @@ -535,6 +537,16 @@ Compresses the image to use less memory. Can not directly access pixel data whil ---- +.. _class_Image_method_compute_image_metrics: + +- :ref:`Dictionary` **compute_image_metrics** **(** :ref:`Image` compared_image, :ref:`bool` use_luma **)** + +Compute image metrics on the current image and the compared image. + +The dictionary contains ``max``, ``mean``, ``mean_squared``, ``root_mean_squared`` and ``peak_snr``. + +---- + .. _class_Image_method_convert: - void **convert** **(** :ref:`Format` format **)** diff --git a/classes/class_input.rst b/classes/class_input.rst index f2583e24f..4ef805ca3 100644 --- a/classes/class_input.rst +++ b/classes/class_input.rst @@ -65,7 +65,7 @@ Methods +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector2` | :ref:`get_joy_vibration_strength` **(** :ref:`int` device **)** | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`get_last_mouse_velocity` **(** **)** |const| | +| :ref:`Vector2` | :ref:`get_last_mouse_velocity` **(** **)** | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Vector3` | :ref:`get_magnetometer` **(** **)** |const| | +---------------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -397,9 +397,9 @@ Returns the strength of the joypad vibration: x is the strength of the weak moto .. _class_Input_method_get_last_mouse_velocity: -- :ref:`Vector2` **get_last_mouse_velocity** **(** **)** |const| +- :ref:`Vector2` **get_last_mouse_velocity** **(** **)** -Returns the mouse velocity for the last time the cursor was moved, and this until the next frame where the mouse moves. This means that even if the mouse is not moving, this function will still return the value of the last motion. +Returns the last mouse velocity. To provide a precise and jitter-free velocity, mouse velocity is only calculated every 0.1s. Therefore, mouse velocity will lag mouse movements. ---- @@ -688,7 +688,9 @@ Vibrate Android and iOS devices. - void **warp_mouse_position** **(** :ref:`Vector2` to **)** -Sets the mouse position to the specified vector. +Sets the mouse position to the specified vector, provided in pixels and relative to an origin at the upper left corner of the game window. + +Mouse position is clipped to the limits of the screen resolution, or to the limits of the game window if :ref:`MouseMode` is set to ``MOUSE_MODE_CONFINED`` or ``MOUSE_MODE_CONFINED_HIDDEN``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_inputeventmouse.rst b/classes/class_inputeventmouse.rst index ac867c93e..cbfd52253 100644 --- a/classes/class_inputeventmouse.rst +++ b/classes/class_inputeventmouse.rst @@ -67,7 +67,9 @@ The mouse button mask identifier, one of or a bitwise combination of the :ref:`M | *Getter* | get_global_position() | +-----------+----------------------------+ -The global mouse position relative to the current :ref:`Viewport`. If used in :ref:`Control._gui_input` and if the current :ref:`Control` is not under the mouse, moving it will not update this value. +When received in :ref:`Node._input` or :ref:`Node._unhandled_input`, returns the mouse's position in the root :ref:`Viewport` using the coordinate system of the root :ref:`Viewport`. + +When received in :ref:`Control._gui_input`, returns the mouse's position in the :ref:`CanvasLayer` that the :ref:`Control` is in using the coordinate system of the :ref:`CanvasLayer`. ---- @@ -83,7 +85,9 @@ The global mouse position relative to the current :ref:`Viewport | *Getter* | get_position() | +-----------+---------------------+ -The local mouse position relative to the :ref:`Viewport`. If used in :ref:`Control._gui_input`, the position is relative to the current :ref:`Control` which is under the mouse. If the current :ref:`Control` is not under the mouse, moving it will not update this value. +When received in :ref:`Node._input` or :ref:`Node._unhandled_input`, returns the mouse's position in the :ref:`Viewport` this :ref:`Node` is in using the coordinate system of this :ref:`Viewport`. + +When received in :ref:`Control._gui_input`, returns the mouse's position in the :ref:`Control` using the local coordinate system of the :ref:`Control`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_int.rst b/classes/class_int.rst index d65145299..f7d4db2b2 100644 --- a/classes/class_int.rst +++ b/classes/class_int.rst @@ -96,6 +96,8 @@ Operators +-------------------------------------+------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`operator *` **(** :ref:`int` right **)** | +-------------------------------------+------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`operator +` **(** :ref:`String` right **)** | ++-------------------------------------+------------------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`operator +` **(** :ref:`float` right **)** | +-------------------------------------+------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`operator +` **(** :ref:`int` right **)** | @@ -283,7 +285,13 @@ Multiplies two ``int``\ s. ---- -.. _class_int_operator_sum_float: +.. _class_int_operator_sum_String: + +- :ref:`String` **operator +** **(** :ref:`String` right **)** + +Adds Unicode character with code ``int`` to the :ref:`String`. + +---- - :ref:`float` **operator +** **(** :ref:`float` right **)** diff --git a/classes/class_javascript.rst b/classes/class_javascript.rst index 1b480aeaf..c722597d2 100644 --- a/classes/class_javascript.rst +++ b/classes/class_javascript.rst @@ -39,6 +39,19 @@ Methods +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`JavaScriptObject` | :ref:`get_interface` **(** :ref:`String` interface **)** | +-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`pwa_needs_update` **(** **)** |const| | ++-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Error` | :ref:`pwa_update` **(** **)** | ++-------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +Signals +------- + +.. _class_JavaScript_signal_pwa_update_available: + +- **pwa_update_available** **(** **)** + +Emitted when an update for this progressive web app has been detected but is waiting to be activated because a previous version is active. See :ref:`pwa_update` to force the update to take place immediately. Method Descriptions ------------------- @@ -89,6 +102,28 @@ If ``use_global_execution_context`` is ``true``, the code will be evaluated in t Returns an interface to a JavaScript object that can be used by scripts. The ``interface`` must be a valid property of the JavaScript ``window``. The callback must accept a single :ref:`Array` argument, which will contain the JavaScript ``arguments``. See :ref:`JavaScriptObject` for usage. +---- + +.. _class_JavaScript_method_pwa_needs_update: + +- :ref:`bool` **pwa_needs_update** **(** **)** |const| + +Returns ``true`` if a new version of the progressive web app is waiting to be activated. + +\ **Note:** Only relevant when exported as a Progressive Web App. + +---- + +.. _class_JavaScript_method_pwa_update: + +- :ref:`Error` **pwa_update** **(** **)** + +Performs the live update of the progressive web app. Forcing the new version to be installed and the page to be reloaded. + +\ **Note:** Your application will be **reloaded in all browser tabs**. + +\ **Note:** Only relevant when exported as a Progressive Web App and :ref:`pwa_needs_update` returns ``true``. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_line2d.rst b/classes/class_line2d.rst index ff60e0648..4dfaa1e5c 100644 --- a/classes/class_line2d.rst +++ b/classes/class_line2d.rst @@ -255,7 +255,9 @@ The points that form the lines. The line is drawn between every point set in thi | *Getter* | get_round_precision() | +-----------+----------------------------+ -The smoothness of the rounded joints and caps. This is only used if a cap or joint is set as round. +The smoothness of the rounded joints and caps. Higher values result in smoother corners, but are more demanding to render and update. This is only used if a cap or joint is set as round. + +\ **Note:** The default value is tuned for lines with the default :ref:`width`. For thin lines, this value should be reduced to a number between ``2`` and ``4`` to improve performance. ---- diff --git a/classes/class_mesh.rst b/classes/class_mesh.rst index 61e47c47c..35dc28c74 100644 --- a/classes/class_mesh.rst +++ b/classes/class_mesh.rst @@ -280,7 +280,7 @@ enum **ArrayFormat**: - **ARRAY_FORMAT_INDEX** = **4096** --- Mesh array uses indices. -- **ARRAY_FORMAT_BLEND_SHAPE_MASK** = **2147475463** +- **ARRAY_FORMAT_BLEND_SHAPE_MASK** = **7** - **ARRAY_FORMAT_CUSTOM_BASE** = **13** diff --git a/classes/class_multiplayerapi.rst b/classes/class_multiplayerapi.rst index 5ac28accc..919352c7d 100644 --- a/classes/class_multiplayerapi.rst +++ b/classes/class_multiplayerapi.rst @@ -29,17 +29,15 @@ It is possible to override the MultiplayerAPI instance used by specific Nodes by Properties ---------- -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ -| :ref:`bool` | :ref:`allow_object_decoding` | ``false`` | -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ -| :ref:`MultiplayerPeer` | :ref:`multiplayer_peer` | | -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ -| :ref:`bool` | :ref:`refuse_new_connections` | ``false`` | -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ -| :ref:`MultiplayerReplicator` | :ref:`replicator` | | -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ -| :ref:`Node` | :ref:`root_node` | | -+-----------------------------------------------------------+-------------------------------------------------------------------------------------+-----------+ ++-----------------------------------------------+-------------------------------------------------------------------------------------+------------------+ +| :ref:`bool` | :ref:`allow_object_decoding` | ``false`` | ++-----------------------------------------------+-------------------------------------------------------------------------------------+------------------+ +| :ref:`MultiplayerPeer` | :ref:`multiplayer_peer` | | ++-----------------------------------------------+-------------------------------------------------------------------------------------+------------------+ +| :ref:`bool` | :ref:`refuse_new_connections` | ``false`` | ++-----------------------------------------------+-------------------------------------------------------------------------------------+------------------+ +| :ref:`NodePath` | :ref:`root_path` | ``NodePath("")`` | ++-----------------------------------------------+-------------------------------------------------------------------------------------+------------------+ Methods ------- @@ -162,27 +160,19 @@ If ``true``, the MultiplayerAPI's :ref:`multiplayer_peer` **replicator** +- :ref:`NodePath` **root_path** -+----------+------------------+ -| *Getter* | get_replicator() | -+----------+------------------+ ++-----------+----------------------+ +| *Default* | ``NodePath("")`` | ++-----------+----------------------+ +| *Setter* | set_root_path(value) | ++-----------+----------------------+ +| *Getter* | get_root_path() | ++-----------+----------------------+ ----- - -.. _class_MultiplayerAPI_property_root_node: - -- :ref:`Node` **root_node** - -+----------+----------------------+ -| *Setter* | set_root_node(value) | -+----------+----------------------+ -| *Getter* | get_root_node() | -+----------+----------------------+ - -The root node to use for RPCs. Instead of an absolute path, a relative path will be used to find the node upon which the RPC should be executed. +The root path to use for RPCs and replication. Instead of an absolute path, a relative path will be used to find the node upon which the RPC should be executed. This effectively allows to have different branches of the scene tree to be managed by different MultiplayerAPI, allowing for example to run both client and server in the same scene. diff --git a/classes/class_multiplayerreplicator.rst b/classes/class_multiplayerreplicator.rst deleted file mode 100644 index ccfc27227..000000000 --- a/classes/class_multiplayerreplicator.rst +++ /dev/null @@ -1,225 +0,0 @@ -:github_url: hide - -.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. -.. DO NOT EDIT THIS FILE, but the MultiplayerReplicator.xml source instead. -.. The source is found in doc/classes or modules//doc_classes. - -.. _class_MultiplayerReplicator: - -MultiplayerReplicator -===================== - -**Inherits:** :ref:`Object` - - - -Methods -------- - -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`decode_state` **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`PackedByteArray` data, :ref:`bool` initial=true **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`despawn` **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`int` peer_id=0 **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedByteArray` | :ref:`encode_state` **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`bool` initial=true **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`send_despawn` **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`Variant` data=null, :ref:`NodePath` path=NodePath("") **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`send_spawn` **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`Variant` data=null, :ref:`NodePath` path=NodePath("") **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`send_sync` **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`PackedByteArray` data, :ref:`TransferMode` transfer_mode=2, :ref:`int` channel=0 **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`spawn` **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`int` peer_id=0 **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`spawn_config` **(** :ref:`int` scene_id, :ref:`ReplicationMode` spawn_mode, :ref:`StringName[]` properties=[], :ref:`Callable` custom_send, :ref:`Callable` custom_receive **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`sync_all` **(** :ref:`int` scene_id, :ref:`int` peer_id=0 **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Error` | :ref:`sync_config` **(** :ref:`int` scene_id, :ref:`int` interval, :ref:`StringName[]` properties=[], :ref:`Callable` custom_send, :ref:`Callable` custom_receive **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`track` **(** :ref:`int` scene_id, :ref:`Object` object **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`untrack` **(** :ref:`int` scene_id, :ref:`Object` object **)** | -+-----------------------------------------------+--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ - -Signals -------- - -.. _class_MultiplayerReplicator_signal_despawn_requested: - -- **despawn_requested** **(** :ref:`int` id, :ref:`int` scene_id, :ref:`Node` parent, :ref:`String` name, :ref:`PackedByteArray` data **)** - -Emitted when a network despawn request has been received from a client, or for a :ref:`PackedScene` that has been configured as :ref:`REPLICATION_MODE_CUSTOM`. - ----- - -.. _class_MultiplayerReplicator_signal_despawned: - -- **despawned** **(** :ref:`int` scene_id, :ref:`Node` node **)** - -Emitted on a client before deleting a local Node upon receiving a despawn request from the server. - ----- - -.. _class_MultiplayerReplicator_signal_replicated_instance_added: - -- **replicated_instance_added** **(** :ref:`int` scene_id, :ref:`Node` node **)** - -Emitted when an instance of a :ref:`PackedScene` that has been configured for networking enters the :ref:`SceneTree`. See :ref:`spawn_config`. - ----- - -.. _class_MultiplayerReplicator_signal_replicated_instance_removed: - -- **replicated_instance_removed** **(** :ref:`int` scene_id, :ref:`Node` node **)** - -Emitted when an instance of a :ref:`PackedScene` that has been configured for networking leaves the :ref:`SceneTree`. See :ref:`spawn_config`. - ----- - -.. _class_MultiplayerReplicator_signal_spawn_requested: - -- **spawn_requested** **(** :ref:`int` id, :ref:`int` scene_id, :ref:`Node` parent, :ref:`String` name, :ref:`PackedByteArray` data **)** - -Emitted when a network spawn request has been received from a client, or for a :ref:`PackedScene` that has been configured as :ref:`REPLICATION_MODE_CUSTOM`. - ----- - -.. _class_MultiplayerReplicator_signal_spawned: - -- **spawned** **(** :ref:`int` scene_id, :ref:`Node` node **)** - -Emitted on a client after a new Node is instantiated locally and added to the SceneTree upon receiving a spawn request from the server. - -Enumerations ------------- - -.. _enum_MultiplayerReplicator_ReplicationMode: - -.. _class_MultiplayerReplicator_constant_REPLICATION_MODE_NONE: - -.. _class_MultiplayerReplicator_constant_REPLICATION_MODE_SERVER: - -.. _class_MultiplayerReplicator_constant_REPLICATION_MODE_CUSTOM: - -enum **ReplicationMode**: - -- **REPLICATION_MODE_NONE** = **0** --- Used with :ref:`spawn_config` to identify a :ref:`PackedScene` that should not be replicated. - -- **REPLICATION_MODE_SERVER** = **1** --- Used with :ref:`spawn_config` to identify a :ref:`PackedScene` that should be automatically replicated from server to clients. - -- **REPLICATION_MODE_CUSTOM** = **2** --- Used with :ref:`spawn_config` to identify a :ref:`PackedScene` that can be manually replicated among peers. - -Method Descriptions -------------------- - -.. _class_MultiplayerReplicator_method_decode_state: - -- :ref:`Error` **decode_state** **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`PackedByteArray` data, :ref:`bool` initial=true **)** - -Decode the given ``data`` representing a spawnable state into ``object`` using the configuration associated with the provided ``scene_id``. This function is called automatically when a client receives a server spawn for a scene with :ref:`REPLICATION_MODE_SERVER`. See :ref:`spawn_config`. - -Tip: You may find this function useful in servers when parsing spawn requests from clients, or when implementing your own logic with :ref:`REPLICATION_MODE_CUSTOM`. - ----- - -.. _class_MultiplayerReplicator_method_despawn: - -- :ref:`Error` **despawn** **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`int` peer_id=0 **)** - -Request a despawn for the scene identified by ``scene_id`` to the given ``peer_id``. This will either trigger the default behavior, or invoke the custom spawn/despawn callables specified in :ref:`spawn_config`. See :ref:`send_despawn` for the default behavior. - ----- - -.. _class_MultiplayerReplicator_method_encode_state: - -- :ref:`PackedByteArray` **encode_state** **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`bool` initial=true **)** - -Encode the given ``object`` using the configuration associated with the provided ``scene_id``. This function is called automatically when the server spawns scenes with :ref:`REPLICATION_MODE_SERVER`. See :ref:`spawn_config`. - -Tip: You may find this function useful when requesting spawns from clients to server, or when implementing your own logic with :ref:`REPLICATION_MODE_CUSTOM`. - ----- - -.. _class_MultiplayerReplicator_method_send_despawn: - -- :ref:`Error` **send_despawn** **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`Variant` data=null, :ref:`NodePath` path=NodePath("") **)** - -Sends a despawn request for the scene identified by ``scene_id`` to the given ``peer_id`` (see :ref:`MultiplayerPeer.set_target_peer`). If the scene is configured as :ref:`REPLICATION_MODE_SERVER` (see :ref:`spawn_config`) and the request is sent by the server (see :ref:`MultiplayerAPI.is_server`), the receiving peer(s) will automatically queue for deletion the node at ``path`` and emit the signal :ref:`despawned`. In all other cases no deletion happens, and the signal :ref:`despawn_requested` is emitted instead. - ----- - -.. _class_MultiplayerReplicator_method_send_spawn: - -- :ref:`Error` **send_spawn** **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`Variant` data=null, :ref:`NodePath` path=NodePath("") **)** - -Sends a spawn request for the scene identified by ``scene_id`` to the given ``peer_id`` (see :ref:`MultiplayerPeer.set_target_peer`). If the scene is configured as :ref:`REPLICATION_MODE_SERVER` (see :ref:`spawn_config`) and the request is sent by the server (see :ref:`MultiplayerAPI.is_server`), the receiving peer(s) will automatically instantiate that scene, add it to the :ref:`SceneTree` at the given ``path`` and emit the signal :ref:`spawned`. In all other cases no instantiation happens, and the signal :ref:`spawn_requested` is emitted instead. - ----- - -.. _class_MultiplayerReplicator_method_send_sync: - -- :ref:`Error` **send_sync** **(** :ref:`int` peer_id, :ref:`int` scene_id, :ref:`PackedByteArray` data, :ref:`TransferMode` transfer_mode=2, :ref:`int` channel=0 **)** - -Sends a sync request for the instances of the scene identified by ``scene_id`` to the given ``peer_id`` (see :ref:`MultiplayerPeer.set_target_peer`). This function can only be called manually when overriding the send and receive sync functions (see :ref:`sync_config`). - ----- - -.. _class_MultiplayerReplicator_method_spawn: - -- :ref:`Error` **spawn** **(** :ref:`int` scene_id, :ref:`Object` object, :ref:`int` peer_id=0 **)** - -Request a spawn for the scene identified by ``scene_id`` to the given ``peer_id``. This will either trigger the default behavior, or invoke the custom spawn/despawn callables specified in :ref:`spawn_config`. See :ref:`send_spawn` for the default behavior. - ----- - -.. _class_MultiplayerReplicator_method_spawn_config: - -- :ref:`Error` **spawn_config** **(** :ref:`int` scene_id, :ref:`ReplicationMode` spawn_mode, :ref:`StringName[]` properties=[], :ref:`Callable` custom_send, :ref:`Callable` custom_receive **)** - -Configures the MultiplayerReplicator to track instances of the :ref:`PackedScene` identified by ``scene_id`` (see :ref:`ResourceLoader.get_resource_uid`) for the purpose of network replication. When ``mode`` is :ref:`REPLICATION_MODE_SERVER`, the specified ``properties`` will also be replicated to clients during the initial spawn. You can optionally specify a ``custom_send`` and a ``custom_receive`` to override the default behavior and customize the spawn/despawn proecess. - -Tip: You can use a custom property in the scene main script to return a customly optimized state representation. - ----- - -.. _class_MultiplayerReplicator_method_sync_all: - -- :ref:`Error` **sync_all** **(** :ref:`int` scene_id, :ref:`int` peer_id=0 **)** - -Manually request a sync for all the instances of the scene identified by ``scene_id``. This function will trigger the default sync behavior, or call your send custom send callable if specified in :ref:`sync_config`. - -\ **Note:** The default implementation only allow syncing from server to clients. - ----- - -.. _class_MultiplayerReplicator_method_sync_config: - -- :ref:`Error` **sync_config** **(** :ref:`int` scene_id, :ref:`int` interval, :ref:`StringName[]` properties=[], :ref:`Callable` custom_send, :ref:`Callable` custom_receive **)** - -Configures the MultiplayerReplicator to sync instances of the :ref:`PackedScene` identified by ``scene_id`` (see :ref:`ResourceLoader.get_resource_uid`) for the purpose of network replication at the desired ``interval`` (in milliseconds). The specified ``properties`` will be part of the state sync. You can optionally specify a ``custom_send`` and a ``custom_receive`` to override the default behavior and customize the synchronization proecess. - -Tip: You can use a custom property in the scene main script to return a customly optimized state representation (having a single property that returns a PackedByteArray is highly recommended when dealing with many instances). - ----- - -.. _class_MultiplayerReplicator_method_track: - -- void **track** **(** :ref:`int` scene_id, :ref:`Object` object **)** - -Track the given ``object`` as an instance of the scene identified by ``scene_id``. This object will be passed to your custom sync callables (see :ref:`sync_config`). Tracking and untracking is automatic in :ref:`REPLICATION_MODE_SERVER`. - ----- - -.. _class_MultiplayerReplicator_method_untrack: - -- void **untrack** **(** :ref:`int` scene_id, :ref:`Object` object **)** - -Untrack the given ``object``. This object will no longer be passed to your custom sync callables (see :ref:`sync_config`). Tracking and untracking is automatic in :ref:`REPLICATION_MODE_SERVER`. - -.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` -.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` -.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` -.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` -.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` -.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_multiplayerspawner.rst b/classes/class_multiplayerspawner.rst new file mode 100644 index 000000000..fc1bdcafc --- /dev/null +++ b/classes/class_multiplayerspawner.rst @@ -0,0 +1,126 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the MultiplayerSpawner.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_MultiplayerSpawner: + +MultiplayerSpawner +================== + +**Inherits:** :ref:`Node` **<** :ref:`Object` + + + +Properties +---------- + ++-----------------------------------------+-------------------------------------------------------------------+------------------+ +| :ref:`bool` | :ref:`auto_spawn` | ``false`` | ++-----------------------------------------+-------------------------------------------------------------------+------------------+ +| :ref:`PackedScene[]` | :ref:`replication` | ``[]`` | ++-----------------------------------------+-------------------------------------------------------------------+------------------+ +| :ref:`int` | :ref:`spawn_limit` | ``0`` | ++-----------------------------------------+-------------------------------------------------------------------+------------------+ +| :ref:`NodePath` | :ref:`spawn_path` | ``NodePath("")`` | ++-----------------------------------------+-------------------------------------------------------------------+------------------+ + +Methods +------- + ++-----------------------------+------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Object` | :ref:`_spawn_custom` **(** :ref:`Variant` data **)** |virtual| | ++-----------------------------+------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Node` | :ref:`spawn` **(** :ref:`Variant` data=null **)** | ++-----------------------------+------------------------------------------------------------------------------------------------------------------------------+ + +Signals +------- + +.. _class_MultiplayerSpawner_signal_despawned: + +- **despawned** **(** :ref:`int` scene_id, :ref:`Node` node **)** + +---- + +.. _class_MultiplayerSpawner_signal_spawned: + +- **spawned** **(** :ref:`int` scene_id, :ref:`Node` node **)** + +Property Descriptions +--------------------- + +.. _class_MultiplayerSpawner_property_auto_spawn: + +- :ref:`bool` **auto_spawn** + ++-----------+--------------------------+ +| *Default* | ``false`` | ++-----------+--------------------------+ +| *Setter* | set_auto_spawning(value) | ++-----------+--------------------------+ +| *Getter* | is_auto_spawning() | ++-----------+--------------------------+ + +---- + +.. _class_MultiplayerSpawner_property_replication: + +- :ref:`PackedScene[]` **replication** + ++-----------+-----------------------------+ +| *Default* | ``[]`` | ++-----------+-----------------------------+ +| *Setter* | set_spawnable_scenes(value) | ++-----------+-----------------------------+ +| *Getter* | get_spawnable_scenes() | ++-----------+-----------------------------+ + +---- + +.. _class_MultiplayerSpawner_property_spawn_limit: + +- :ref:`int` **spawn_limit** + ++-----------+------------------------+ +| *Default* | ``0`` | ++-----------+------------------------+ +| *Setter* | set_spawn_limit(value) | ++-----------+------------------------+ +| *Getter* | get_spawn_limit() | ++-----------+------------------------+ + +---- + +.. _class_MultiplayerSpawner_property_spawn_path: + +- :ref:`NodePath` **spawn_path** + ++-----------+-----------------------+ +| *Default* | ``NodePath("")`` | ++-----------+-----------------------+ +| *Setter* | set_spawn_path(value) | ++-----------+-----------------------+ +| *Getter* | get_spawn_path() | ++-----------+-----------------------+ + +Method Descriptions +------------------- + +.. _class_MultiplayerSpawner_method__spawn_custom: + +- :ref:`Object` **_spawn_custom** **(** :ref:`Variant` data **)** |virtual| + +---- + +.. _class_MultiplayerSpawner_method_spawn: + +- :ref:`Node` **spawn** **(** :ref:`Variant` data=null **)** + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_multiplayersynchronizer.rst b/classes/class_multiplayersynchronizer.rst new file mode 100644 index 000000000..f2932fb7e --- /dev/null +++ b/classes/class_multiplayersynchronizer.rst @@ -0,0 +1,73 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the MultiplayerSynchronizer.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_MultiplayerSynchronizer: + +MultiplayerSynchronizer +======================= + +**Inherits:** :ref:`Node` **<** :ref:`Object` + + + +Properties +---------- + ++-------------------------------------------------------------+------------------------------------------------------------------------------------------+------------------+ +| :ref:`float` | :ref:`replication_interval` | ``0.0`` | ++-------------------------------------------------------------+------------------------------------------------------------------------------------------+------------------+ +| :ref:`SceneReplicationConfig` | :ref:`resource` | | ++-------------------------------------------------------------+------------------------------------------------------------------------------------------+------------------+ +| :ref:`NodePath` | :ref:`root_path` | ``NodePath("")`` | ++-------------------------------------------------------------+------------------------------------------------------------------------------------------+------------------+ + +Property Descriptions +--------------------- + +.. _class_MultiplayerSynchronizer_property_replication_interval: + +- :ref:`float` **replication_interval** + ++-----------+---------------------------------+ +| *Default* | ``0.0`` | ++-----------+---------------------------------+ +| *Setter* | set_replication_interval(value) | ++-----------+---------------------------------+ +| *Getter* | get_replication_interval() | ++-----------+---------------------------------+ + +---- + +.. _class_MultiplayerSynchronizer_property_resource: + +- :ref:`SceneReplicationConfig` **resource** + ++----------+-------------------------------+ +| *Setter* | set_replication_config(value) | ++----------+-------------------------------+ +| *Getter* | get_replication_config() | ++----------+-------------------------------+ + +---- + +.. _class_MultiplayerSynchronizer_property_root_path: + +- :ref:`NodePath` **root_path** + ++-----------+----------------------+ +| *Default* | ``NodePath("")`` | ++-----------+----------------------+ +| *Setter* | set_root_path(value) | ++-----------+----------------------+ +| *Getter* | get_root_path() | ++-----------+----------------------+ + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_node.rst b/classes/class_node.rst index 78a0ac4bd..635aef44e 100644 --- a/classes/class_node.rst +++ b/classes/class_node.rst @@ -11,7 +11,7 @@ Node **Inherits:** :ref:`Object` -**Inherited By:** :ref:`AnimationPlayer`, :ref:`AnimationTree`, :ref:`AudioStreamPlayer`, :ref:`CanvasItem`, :ref:`CanvasLayer`, :ref:`EditorFileSystem`, :ref:`EditorInterface`, :ref:`EditorPlugin`, :ref:`EditorResourcePreview`, :ref:`HTTPRequest`, :ref:`InstancePlaceholder`, :ref:`NavigationAgent2D`, :ref:`NavigationAgent3D`, :ref:`NavigationObstacle2D`, :ref:`NavigationObstacle3D`, :ref:`Node3D`, :ref:`ResourcePreloader`, :ref:`ShaderGlobalsOverride`, :ref:`SkeletonIK3D`, :ref:`Timer`, :ref:`Viewport`, :ref:`WorldEnvironment` +**Inherited By:** :ref:`AnimationPlayer`, :ref:`AnimationTree`, :ref:`AudioStreamPlayer`, :ref:`CanvasItem`, :ref:`CanvasLayer`, :ref:`EditorFileSystem`, :ref:`EditorInterface`, :ref:`EditorPlugin`, :ref:`EditorResourcePreview`, :ref:`HTTPRequest`, :ref:`InstancePlaceholder`, :ref:`MultiplayerSpawner`, :ref:`MultiplayerSynchronizer`, :ref:`NavigationAgent2D`, :ref:`NavigationAgent3D`, :ref:`NavigationObstacle2D`, :ref:`NavigationObstacle3D`, :ref:`Node3D`, :ref:`ResourcePreloader`, :ref:`ShaderGlobalsOverride`, :ref:`SkeletonIK3D`, :ref:`Timer`, :ref:`Viewport`, :ref:`WorldEnvironment` Base class for all *scene* objects. @@ -104,7 +104,7 @@ Methods +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`duplicate` **(** :ref:`int` flags=15 **)** |const| | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Node` | :ref:`find_node` **(** :ref:`String` mask, :ref:`bool` recursive=true, :ref:`bool` owned=true **)** |const| | +| :ref:`Node[]` | :ref:`find_nodes` **(** :ref:`String` mask, :ref:`String` type="", :ref:`bool` recursive=true, :ref:`bool` owned=true **)** |const| | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Node` | :ref:`find_parent` **(** :ref:`String` mask **)** |const| | +---------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -234,6 +234,22 @@ Methods Signals ------- +.. _class_Node_signal_child_entered_tree: + +- **child_entered_tree** **(** :ref:`Node` node **)** + +Emitted when a child node enters the scene tree, either because it entered on its own or because this node entered with it. + +---- + +.. _class_Node_signal_child_exited_tree: + +- **child_exited_tree** **(** :ref:`Node` node **)** + +Emitted when a child node exits the scene tree, either because it exited on its own or because this node exited. + +---- + .. _class_Node_signal_ready: - **ready** **(** **)** @@ -400,6 +416,12 @@ Constants .. _class_Node_constant_NOTIFICATION_WM_SIZE_CHANGED: +.. _class_Node_constant_NOTIFICATION_WM_DPI_CHANGE: + +.. _class_Node_constant_NOTIFICATION_VP_MOUSE_ENTER: + +.. _class_Node_constant_NOTIFICATION_VP_MOUSE_EXIT: + .. _class_Node_constant_NOTIFICATION_OS_MEMORY_WARNING: .. _class_Node_constant_NOTIFICATION_TRANSLATION_CHANGED: @@ -486,6 +508,12 @@ Specific to the Android platform. - **NOTIFICATION_WM_SIZE_CHANGED** = **1008** +- **NOTIFICATION_WM_DPI_CHANGE** = **1009** + +- **NOTIFICATION_VP_MOUSE_ENTER** = **1010** --- Notification received when the mouse enters the viewport. + +- **NOTIFICATION_VP_MOUSE_EXIT** = **1011** --- Notification received when the mouse leaves the viewport. + - **NOTIFICATION_OS_MEMORY_WARNING** = **2009** --- Notification received from the OS when the application is exceeding its allocated memory. Specific to the iOS platform. @@ -688,7 +716,7 @@ To consume the input event and stop it propagating further to other nodes, :ref: For gameplay input, :ref:`_unhandled_input` and :ref:`_unhandled_key_input` are usually a better fit as they allow the GUI to intercept the events first. -\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not orphan). +\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not an orphan). ---- @@ -702,7 +730,7 @@ It is only called if physics processing is enabled, which is done automatically Corresponds to the :ref:`NOTIFICATION_PHYSICS_PROCESS` notification in :ref:`Object._notification`. -\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not orphan). +\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not an orphan). ---- @@ -716,7 +744,7 @@ It is only called if processing is enabled, which is done automatically if this Corresponds to the :ref:`NOTIFICATION_PROCESS` notification in :ref:`Object._notification`. -\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not orphan). +\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not an orphan). ---- @@ -726,11 +754,11 @@ Corresponds to the :ref:`NOTIFICATION_PROCESS` callbacks get triggered first, and the parent node will receive the ready notification afterwards. -Corresponds to the :ref:`NOTIFICATION_READY` notification in :ref:`Object._notification`. See also the ``onready`` keyword for variables. +Corresponds to the :ref:`NOTIFICATION_READY` notification in :ref:`Object._notification`. See also the ``@onready`` annotation for variables. Usually used for initialization. For even earlier initialization, :ref:`Object._init` may be used. See also :ref:`_enter_tree`. -\ **Note:** :ref:`_ready` may be called only once for each node. After removing a node from the scene tree and adding again, ``_ready`` will not be called for the second time. This can be bypassed with requesting another call with :ref:`request_ready`, which may be called anywhere before adding the node again. +\ **Note:** :ref:`_ready` may be called only once for each node. After removing a node from the scene tree and adding it again, ``_ready`` will not be called a second time. This can be bypassed by requesting another call with :ref:`request_ready`, which may be called anywhere before adding the node again. ---- @@ -738,7 +766,7 @@ Usually used for initialization. For even earlier initialization, :ref:`Object._ - void **_unhandled_input** **(** :ref:`InputEvent` event **)** |virtual| -Called when an :ref:`InputEvent` hasn't been consumed by :ref:`_input` or any GUI. The input event propagates up through the node tree until a node consumes it. +Called when an :ref:`InputEvent` hasn't been consumed by :ref:`_input` or any GUI :ref:`Control` item. The input event propagates up through the node tree until a node consumes it. It is only called if unhandled input processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process_unhandled_input`. @@ -746,7 +774,7 @@ To consume the input event and stop it propagating further to other nodes, :ref: For gameplay input, this and :ref:`_unhandled_key_input` are usually a better fit than :ref:`_input` as they allow the GUI to intercept the events first. -\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not orphan). +\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not an orphan). ---- @@ -754,7 +782,7 @@ For gameplay input, this and :ref:`_unhandled_key_input` event **)** |virtual| -Called when an :ref:`InputEventKey` or :ref:`InputEventShortcut` hasn't been consumed by :ref:`_input` or any GUI. The input event propagates up through the node tree until a node consumes it. +Called when an :ref:`InputEventKey` or :ref:`InputEventShortcut` hasn't been consumed by :ref:`_input` or any GUI :ref:`Control` item. The input event propagates up through the node tree until a node consumes it. It is only called if unhandled key input processing is enabled, which is done automatically if this method is overridden, and can be toggled with :ref:`set_process_unhandled_key_input`. @@ -762,7 +790,7 @@ To consume the input event and stop it propagating further to other nodes, :ref: For gameplay input, this and :ref:`_unhandled_input` are usually a better fit than :ref:`_input` as they allow the GUI to intercept the events first. -\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not orphan). +\ **Note:** This method is only called if the node is present in the scene tree (i.e. if it's not an orphan). ---- @@ -863,17 +891,21 @@ You can fine-tune the behavior using the ``flags`` (see :ref:`DuplicateFlags` **find_node** **(** :ref:`String` mask, :ref:`bool` recursive=true, :ref:`bool` owned=true **)** |const| +- :ref:`Node[]` **find_nodes** **(** :ref:`String` mask, :ref:`String` type="", :ref:`bool` recursive=true, :ref:`bool` owned=true **)** |const| -Finds a descendant of this node whose name matches ``mask`` as in :ref:`String.match` (i.e. case-sensitive, but ``"*"`` matches zero or more characters and ``"?"`` matches any single character except ``"."``). Returns ``null`` if no matching ``Node`` is found. +Finds descendants of this node whose, name matches ``mask`` as in :ref:`String.match`, and/or type matches ``type`` as in :ref:`Object.is_class`. -\ **Note:** It does not match against the full path, just against individual node names. +\ ``mask`` does not match against the full path, just against individual node names. It is case-sensitive, with ``"*"`` matching zero or more characters and ``"?"`` matching any single character except ``"."``). + +\ ``type`` will check equality or inheritance. It is case-sensitive, ``"Object"`` will match a node whose type is ``"Node"`` but not the other way around. If ``owned`` is ``true``, this method only finds nodes whose owner is this node. This is especially important for scenes instantiated through a script, because those scenes don't have an owner. -\ **Note:** As this method walks through all the descendants of the node, it is the slowest way to get a reference to another node. Whenever possible, consider using :ref:`get_node` instead. To avoid using :ref:`find_node` too often, consider caching the node reference into a variable. +Returns an empty array, if no matching nodes are found. + +\ **Note:** As this method walks through all the descendants of the node, it is the slowest way to get references to other nodes. To avoid using :ref:`find_nodes` too often, consider caching the node references into variables. ---- diff --git a/classes/class_object.rst b/classes/class_object.rst index 1fe5148bd..490888e36 100644 --- a/classes/class_object.rst +++ b/classes/class_object.rst @@ -9,7 +9,7 @@ Object ====== -**Inherited By:** :ref:`AudioServer`, :ref:`CameraServer`, :ref:`ClassDB`, :ref:`DisplayServer`, :ref:`EditorFileSystemDirectory`, :ref:`EditorPaths`, :ref:`EditorSelection`, :ref:`EditorVCSInterface`, :ref:`Engine`, :ref:`EngineDebugger`, :ref:`Geometry2D`, :ref:`Geometry3D`, :ref:`GodotSharp`, :ref:`IP`, :ref:`Input`, :ref:`InputMap`, :ref:`JNISingleton`, :ref:`JSONRPC`, :ref:`JavaClassWrapper`, :ref:`JavaScript`, :ref:`MainLoop`, :ref:`Marshalls`, :ref:`MultiplayerReplicator`, :ref:`NativeExtensionManager`, :ref:`NavigationMeshGenerator`, :ref:`NavigationServer2D`, :ref:`NavigationServer3D`, :ref:`Node`, :ref:`OS`, :ref:`Performance`, :ref:`PhysicsDirectBodyState2D`, :ref:`PhysicsDirectBodyState3D`, :ref:`PhysicsDirectSpaceState2D`, :ref:`PhysicsDirectSpaceState3D`, :ref:`PhysicsServer2D`, :ref:`PhysicsServer3D`, :ref:`ProjectSettings`, :ref:`RefCounted`, :ref:`RenderingDevice`, :ref:`RenderingServer`, :ref:`ResourceLoader`, :ref:`ResourceSaver`, :ref:`ResourceUID`, :ref:`TextServerManager`, :ref:`TileData`, :ref:`Time`, :ref:`TranslationServer`, :ref:`TreeItem`, :ref:`UndoRedo`, :ref:`VisualScriptCustomNodes`, :ref:`XRServer` +**Inherited By:** :ref:`AudioServer`, :ref:`CameraServer`, :ref:`ClassDB`, :ref:`DisplayServer`, :ref:`EditorFileSystemDirectory`, :ref:`EditorPaths`, :ref:`EditorSelection`, :ref:`EditorVCSInterface`, :ref:`Engine`, :ref:`EngineDebugger`, :ref:`Geometry2D`, :ref:`Geometry3D`, :ref:`GodotSharp`, :ref:`IP`, :ref:`Input`, :ref:`InputMap`, :ref:`JNISingleton`, :ref:`JSONRPC`, :ref:`JavaClassWrapper`, :ref:`JavaScript`, :ref:`MainLoop`, :ref:`Marshalls`, :ref:`NativeExtensionManager`, :ref:`NavigationMeshGenerator`, :ref:`NavigationServer2D`, :ref:`NavigationServer3D`, :ref:`Node`, :ref:`OS`, :ref:`Performance`, :ref:`PhysicsDirectBodyState2D`, :ref:`PhysicsDirectBodyState3D`, :ref:`PhysicsDirectSpaceState2D`, :ref:`PhysicsDirectSpaceState3D`, :ref:`PhysicsServer2D`, :ref:`PhysicsServer3D`, :ref:`ProjectSettings`, :ref:`RefCounted`, :ref:`RenderingDevice`, :ref:`RenderingServer`, :ref:`ResourceLoader`, :ref:`ResourceSaver`, :ref:`ResourceUID`, :ref:`TextServerManager`, :ref:`TileData`, :ref:`Time`, :ref:`TranslationServer`, :ref:`TreeItem`, :ref:`UndoRedo`, :ref:`VisualScriptCustomNodes`, :ref:`XRServer` Base class for all non-built-in types. @@ -780,7 +780,7 @@ Removes a given entry from the object's metadata. See also :ref:`set_meta` property, :ref:`Variant` value **)** -Assigns a new value to the given property. If the ``property`` does not exist, nothing will happen. +Assigns a new value to the given property. If the ``property`` does not exist or the given value's type doesn't match, nothing will happen. \ **Note:** In C#, the property name must be specified as snake_case if it is defined by a built-in Godot node. This doesn't apply to user-defined properties where you should use the same convention as in the C# source (typically PascalCase). diff --git a/classes/class_occluder3d.rst b/classes/class_occluder3d.rst index 5223af87c..b190253e4 100644 --- a/classes/class_occluder3d.rst +++ b/classes/class_occluder3d.rst @@ -11,45 +11,42 @@ Occluder3D **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherited By:** :ref:`ArrayOccluder3D`, :ref:`BoxOccluder3D`, :ref:`PolygonOccluder3D`, :ref:`QuadOccluder3D`, :ref:`SphereOccluder3D` +Occluder shape resource for use with occlusion culling in :ref:`OccluderInstance3D`. -Properties ----------- +Description +----------- -+-----------------------------------------------------+-----------------------------------------------------+--------------------------+ -| :ref:`PackedInt32Array` | :ref:`indices` | ``PackedInt32Array()`` | -+-----------------------------------------------------+-----------------------------------------------------+--------------------------+ -| :ref:`PackedVector3Array` | :ref:`vertices` | ``PackedVector3Array()`` | -+-----------------------------------------------------+-----------------------------------------------------+--------------------------+ +``Occluder3D`` stores an occluder shape that can be used by the engine's occlusion culling system. -Property Descriptions ---------------------- +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. -.. _class_Occluder3D_property_indices: +Methods +------- -- :ref:`PackedInt32Array` **indices** ++-----------------------------------------------------+-------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`get_indices` **(** **)** |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------+ +| :ref:`PackedVector3Array` | :ref:`get_vertices` **(** **)** |const| | ++-----------------------------------------------------+-------------------------------------------------------------------------------+ -+-----------+------------------------+ -| *Default* | ``PackedInt32Array()`` | -+-----------+------------------------+ -| *Setter* | set_indices(value) | -+-----------+------------------------+ -| *Getter* | get_indices() | -+-----------+------------------------+ +Method Descriptions +------------------- + +.. _class_Occluder3D_method_get_indices: + +- :ref:`PackedInt32Array` **get_indices** **(** **)** |const| + +Returns the occluder shape's vertex indices. ---- -.. _class_Occluder3D_property_vertices: +.. _class_Occluder3D_method_get_vertices: -- :ref:`PackedVector3Array` **vertices** +- :ref:`PackedVector3Array` **get_vertices** **(** **)** |const| -+-----------+--------------------------+ -| *Default* | ``PackedVector3Array()`` | -+-----------+--------------------------+ -| *Setter* | set_vertices(value) | -+-----------+--------------------------+ -| *Getter* | get_vertices() | -+-----------+--------------------------+ +Returns the occluder shape's vertex positions. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_occluderinstance3d.rst b/classes/class_occluderinstance3d.rst index 9a4bd5232..668e7a0b2 100644 --- a/classes/class_occluderinstance3d.rst +++ b/classes/class_occluderinstance3d.rst @@ -11,16 +11,31 @@ OccluderInstance3D **Inherits:** :ref:`Node3D` **<** :ref:`Node` **<** :ref:`Object` +Provides occlusion culling for 3D nodes, which improves performance in closed areas. +Description +----------- + +Occlusion culling can improve rendering performance in closed/semi-open areas by hiding geometry that is occluded by other objects. + +The occlusion culling system is mostly static. ``OccluderInstance3D``\ s can be moved or hidden at run-time, but doing so will trigger a background recomputation that can take several frames. It is recommended to only move ``OccluderInstance3D``\ s sporadically (e.g. for procedural generation purposes), rather than doing so every frame. + +The occlusion culling system works by rendering the occluders on the CPU in parallel using `Embree `__, drawing the result to a low-resolution buffer then using this to cull 3D nodes individually. In the 3D editor, you can preview the occlusion culling buffer by choosing **Perspective > Debug Advanced... > Occlusion Culling Buffer** in the top-left corner of the 3D viewport. The occlusion culling buffer quality can be adjusted in the Project Settings. + +\ **Baking:** Select an ``OccluderInstance3D`` node, then use the **Bake Occluders** button at the top of the 3D editor. Only opaque materials will be taken into account; transparent materials (alpha-blended or alpha-tested) will be ignored by the occluder generation. + +\ **Note:** Occlusion culling is only effective if :ref:`ProjectSettings.rendering/occlusion_culling/use_occlusion_culling` is ``true``. Enabling occlusion culling has a cost on the CPU. Only enable occlusion culling if you actually plan to use it. Large open scenes with few or no objects blocking the view will generally not benefit much from occlusion culling. Large open scenes generally benefit more from mesh LOD and visibility ranges (:ref:`GeometryInstance3D.visibility_range_begin` and :ref:`GeometryInstance3D.visibility_range_end`) compared to occlusion culling. Properties ---------- -+-------------------------------------+---------------------------------------------------------------+----------------+ -| :ref:`int` | :ref:`bake_mask` | ``4294967295`` | -+-------------------------------------+---------------------------------------------------------------+----------------+ -| :ref:`Occluder3D` | :ref:`occluder` | | -+-------------------------------------+---------------------------------------------------------------+----------------+ ++-------------------------------------+-----------------------------------------------------------------------------------------------------+----------------+ +| :ref:`int` | :ref:`bake_mask` | ``4294967295`` | ++-------------------------------------+-----------------------------------------------------------------------------------------------------+----------------+ +| :ref:`float` | :ref:`bake_simplification_distance` | ``0.1`` | ++-------------------------------------+-----------------------------------------------------------------------------------------------------+----------------+ +| :ref:`Occluder3D` | :ref:`occluder` | | ++-------------------------------------+-----------------------------------------------------------------------------------------------------+----------------+ Methods ------- @@ -46,6 +61,32 @@ Property Descriptions | *Getter* | get_bake_mask() | +-----------+----------------------+ +The visual layers to account for when baking for occluders. Only :ref:`MeshInstance3D`\ s whose :ref:`VisualInstance3D.layers` match with this :ref:`bake_mask` will be included in the generated occluder mesh. By default, all objects are taken into account for the occluder baking. + +To improve performance and avoid artifacts, it is recommended to exclude dynamic objects, small objects and fixtures from the baking process by moving them to a separate visual layer and excluding this layer in :ref:`bake_mask`. + +---- + +.. _class_OccluderInstance3D_property_bake_simplification_distance: + +- :ref:`float` **bake_simplification_distance** + ++-----------+-----------------------------------------+ +| *Default* | ``0.1`` | ++-----------+-----------------------------------------+ +| *Setter* | set_bake_simplification_distance(value) | ++-----------+-----------------------------------------+ +| *Getter* | get_bake_simplification_distance() | ++-----------+-----------------------------------------+ + +The simplification distance to use for simplifying the generated occluder polygon (in 3D units). Higher values result in a less detailed occluder mesh, which improves performance but reduces culling accuracy. + +The occluder geometry is rendered on the CPU, so it is important to keep its geometry as simple as possible. Since the buffer is rendered at a low resolution, less detailed occluder meshes generally still work well. The default value is fairly aggressive, so you may have to decrase it if you run into false negatives (objects being occluded even though they are visible by the camera). A value of ``0.01`` will act conservatively, and will keep geometry *perceptually* unaffected in the occlusion culling buffer. Depending on the scene, a value of ``0.01`` may still simplify the mesh noticeably compared to disabling simplification entirely. + +Setting this to ``0.0`` disables simplification entirely, but vertices in the exact same position will still be merged. The mesh will also be re-indexed to reduce both the number of vertices and indices. + +\ **Note:** This uses the `meshoptimizer `__ library under the hood, similar to LOD generation. + ---- .. _class_OccluderInstance3D_property_occluder: @@ -58,6 +99,12 @@ Property Descriptions | *Getter* | get_occluder() | +----------+---------------------+ +The occluder resource for this ``OccluderInstance3D``. You can generate an occluder resource by selecting an ``OccluderInstance3D`` node then using the **Bake Occluders** button at the top of the editor. + +You can also draw your own 2D occluder polygon by adding a new :ref:`PolygonOccluder3D` resource to the :ref:`occluder` property in the inspector. + +Alternatively, you can select a primitive occluder to use: :ref:`QuadOccluder3D`, :ref:`BoxOccluder3D` or :ref:`SphereOccluder3D`. + Method Descriptions ------------------- @@ -65,7 +112,7 @@ Method Descriptions - :ref:`bool` **get_bake_mask_value** **(** :ref:`int` layer_number **)** |const| -Returns whether or not the specified layer of the :ref:`bake_mask` is enabled, given a ``layer_number`` between 1 and 20. +Returns whether or not the specified layer of the :ref:`bake_mask` is enabled, given a ``layer_number`` between 1 and 32. ---- @@ -73,7 +120,7 @@ Returns whether or not the specified layer of the :ref:`bake_mask` layer_number, :ref:`bool` value **)** -Based on ``value``, enables or disables the specified layer in the :ref:`bake_mask`, given a ``layer_number`` between 1 and 20. +Based on ``value``, enables or disables the specified layer in the :ref:`bake_mask`, given a ``layer_number`` between 1 and 32. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_os.rst b/classes/class_os.rst index 9b484e993..67ee55b79 100644 --- a/classes/class_os.rst +++ b/classes/class_os.rst @@ -92,6 +92,8 @@ Methods +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_processor_count` **(** **)** |const| | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_processor_name` **(** **)** |const| | ++---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_static_memory_peak_usage` **(** **)** |const| | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_static_memory_usage` **(** **)** |const| | @@ -768,7 +770,17 @@ Returns the project's process ID. - :ref:`int` **get_processor_count** **(** **)** |const| -Returns the number of threads available on the host machine. +Returns the number of *logical* CPU cores available on the host machine. On CPUs with HyperThreading enabled, this number will be greater than the number of *physical* CPU cores. + +---- + +.. _class_OS_method_get_processor_name: + +- :ref:`String` **get_processor_name** **(** **)** |const| + +Returns the name of the CPU model on the host machine (e.g. "Intel(R) Core(TM) i7-6700K CPU @ 4.00GHz"). + +\ **Note:** This method is only implemented on Windows, macOS, Linux and iOS. On Android, HTML5 and UWP, :ref:`get_processor_name` returns an empty string. ---- diff --git a/classes/class_panel.rst b/classes/class_panel.rst index 2efb43d35..27e74e6b9 100644 --- a/classes/class_panel.rst +++ b/classes/class_panel.rst @@ -27,13 +27,6 @@ Tutorials - `3D Inverse Kinematics Demo `__ -Properties ----------- - -+------------------------------+----------------------------------------+-------+ -| :ref:`Mode` | :ref:`mode` | ``0`` | -+------------------------------+----------------------------------------+-------+ - Theme Properties ---------------- @@ -43,36 +36,6 @@ Theme Properties | :ref:`StyleBox` | :ref:`panel_fg` | +---------------------------------+---------------------------------------------------+ -Enumerations ------------- - -.. _enum_Panel_Mode: - -.. _class_Panel_constant_MODE_BACKGROUND: - -.. _class_Panel_constant_MODE_FOREGROUND: - -enum **Mode**: - -- **MODE_BACKGROUND** = **0** - -- **MODE_FOREGROUND** = **1** - -Property Descriptions ---------------------- - -.. _class_Panel_property_mode: - -- :ref:`Mode` **mode** - -+-----------+-----------------+ -| *Default* | ``0`` | -+-----------+-----------------+ -| *Setter* | set_mode(value) | -+-----------+-----------------+ -| *Getter* | get_mode() | -+-----------+-----------------+ - Theme Property Descriptions --------------------------- diff --git a/classes/class_physicalskymaterial.rst b/classes/class_physicalskymaterial.rst index 89b5f399b..f4a4793ea 100644 --- a/classes/class_physicalskymaterial.rst +++ b/classes/class_physicalskymaterial.rst @@ -25,29 +25,29 @@ As it is based on a daylight model, the sky fades to black as the sunset ends. I Properties ---------- -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`dither_strength` | ``1.0`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`exposure` | ``0.1`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`ground_color` | ``Color(1, 1, 1, 1)`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`mie_coefficient` | ``0.005`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`mie_color` | ``Color(0.63, 0.77, 0.92, 1)`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`mie_eccentricity` | ``0.8`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Texture2D` | :ref:`night_sky` | | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`rayleigh_coefficient` | ``2.0`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`rayleigh_color` | ``Color(0.26, 0.41, 0.58, 1)`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`sun_disk_scale` | ``1.0`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`turbidity` | ``10.0`` | -+-----------------------------------+--------------------------------------------------------------------------------------+--------------------------------+ ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`dither_strength` | ``1.0`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`exposure` | ``0.1`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`Color` | :ref:`ground_color` | ``Color(0.1, 0.07, 0.034, 1)`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`mie_coefficient` | ``0.005`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`Color` | :ref:`mie_color` | ``Color(0.69, 0.729, 0.812, 1)`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`mie_eccentricity` | ``0.8`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`Texture2D` | :ref:`night_sky` | | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`rayleigh_coefficient` | ``2.0`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`Color` | :ref:`rayleigh_color` | ``Color(0.3, 0.405, 0.6, 1)`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`sun_disk_scale` | ``1.0`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ +| :ref:`float` | :ref:`turbidity` | ``10.0`` | ++-----------------------------------+--------------------------------------------------------------------------------------+----------------------------------+ Property Descriptions --------------------- @@ -88,13 +88,13 @@ Sets the exposure of the sky. Higher exposure values make the entire sky brighte - :ref:`Color` **ground_color** -+-----------+-------------------------+ -| *Default* | ``Color(1, 1, 1, 1)`` | -+-----------+-------------------------+ -| *Setter* | set_ground_color(value) | -+-----------+-------------------------+ -| *Getter* | get_ground_color() | -+-----------+-------------------------+ ++-----------+--------------------------------+ +| *Default* | ``Color(0.1, 0.07, 0.034, 1)`` | ++-----------+--------------------------------+ +| *Setter* | set_ground_color(value) | ++-----------+--------------------------------+ +| *Getter* | get_ground_color() | ++-----------+--------------------------------+ Modulates the :ref:`Color` on the bottom half of the sky to represent the ground. @@ -120,15 +120,15 @@ Controls the strength of mie scattering for the sky. Mie scattering results from - :ref:`Color` **mie_color** -+-----------+--------------------------------+ -| *Default* | ``Color(0.63, 0.77, 0.92, 1)`` | -+-----------+--------------------------------+ -| *Setter* | set_mie_color(value) | -+-----------+--------------------------------+ -| *Getter* | get_mie_color() | -+-----------+--------------------------------+ ++-----------+----------------------------------+ +| *Default* | ``Color(0.69, 0.729, 0.812, 1)`` | ++-----------+----------------------------------+ +| *Setter* | set_mie_color(value) | ++-----------+----------------------------------+ +| *Getter* | get_mie_color() | ++-----------+----------------------------------+ -Controls the :ref:`Color` of the mie scattering effect. While not physically accurate, this allows for the creation of alien looking planets. +Controls the :ref:`Color` of the mie scattering effect. While not physically accurate, this allows for the creation of alien-looking planets. ---- @@ -182,15 +182,15 @@ Controls the strength of the Rayleigh scattering. Rayleigh scattering results fr - :ref:`Color` **rayleigh_color** -+-----------+--------------------------------+ -| *Default* | ``Color(0.26, 0.41, 0.58, 1)`` | -+-----------+--------------------------------+ -| *Setter* | set_rayleigh_color(value) | -+-----------+--------------------------------+ -| *Getter* | get_rayleigh_color() | -+-----------+--------------------------------+ ++-----------+-------------------------------+ +| *Default* | ``Color(0.3, 0.405, 0.6, 1)`` | ++-----------+-------------------------------+ +| *Setter* | set_rayleigh_color(value) | ++-----------+-------------------------------+ +| *Getter* | get_rayleigh_color() | ++-----------+-------------------------------+ -Controls the :ref:`Color` of the Rayleigh scattering. While not physically accurate, this allows for the creation of alien looking planets. For example, setting this to a red :ref:`Color` results in a Mars looking atmosphere with a corresponding blue sunset. +Controls the :ref:`Color` of the Rayleigh scattering. While not physically accurate, this allows for the creation of alien-looking planets. For example, setting this to a red :ref:`Color` results in a Mars-looking atmosphere with a corresponding blue sunset. ---- @@ -222,7 +222,7 @@ Sets the size of the sun disk. Default value is based on Sol's perceived size fr | *Getter* | get_turbidity() | +-----------+----------------------+ -Sets the thickness of the atmosphere. High turbidity creates a foggy looking atmosphere, while a low turbidity results in a clearer atmosphere. +Sets the thickness of the atmosphere. High turbidity creates a foggy-looking atmosphere, while a low turbidity results in a clearer atmosphere. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_polygonoccluder3d.rst b/classes/class_polygonoccluder3d.rst new file mode 100644 index 000000000..dad00b567 --- /dev/null +++ b/classes/class_polygonoccluder3d.rst @@ -0,0 +1,54 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the PolygonOccluder3D.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_PolygonOccluder3D: + +PolygonOccluder3D +================= + +**Inherits:** :ref:`Occluder3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +Flat 2D polygon shape for use with occlusion culling in :ref:`OccluderInstance3D`. + +Description +----------- + +``PolygonOccluder3D`` stores a polygon shape that can be used by the engine's occlusion culling system. When an :ref:`OccluderInstance3D` with a ``PolygonOccluder3D`` is selected in the editor, an editor will appear at the top of the 3D viewport so you can add/remove points. All points must be placed on the same 2D plane, which means it is not possible to create arbitrary 3D shapes with a single ``PolygonOccluder3D``. To use arbitrary 3D shapes as occluders, use :ref:`ArrayOccluder3D` or :ref:`OccluderInstance3D`'s baking feature instead. + +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. + +Properties +---------- + ++-----------------------------------------------------+----------------------------------------------------------+--------------------------+ +| :ref:`PackedVector2Array` | :ref:`polygon` | ``PackedVector2Array()`` | ++-----------------------------------------------------+----------------------------------------------------------+--------------------------+ + +Property Descriptions +--------------------- + +.. _class_PolygonOccluder3D_property_polygon: + +- :ref:`PackedVector2Array` **polygon** + ++-----------+--------------------------+ +| *Default* | ``PackedVector2Array()`` | ++-----------+--------------------------+ +| *Setter* | set_polygon(value) | ++-----------+--------------------------+ +| *Getter* | get_polygon() | ++-----------+--------------------------+ + +The polygon to use for occlusion culling. The polygon can be convex or concave, but it should have as few points as possible to maximize performance. + +The polygon must *not* have intersecting lines. Otherwise, triangulation will fail (with an error message printed). + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_popup.rst b/classes/class_popup.rst index aa0eeaca2..8c61aa844 100644 --- a/classes/class_popup.rst +++ b/classes/class_popup.rst @@ -13,12 +13,12 @@ Popup **Inherited By:** :ref:`PopupMenu`, :ref:`PopupPanel` -Base container control for popups and dialogs. +Popup is a base window container for popup-like subwindows. Description ----------- -Popup is a base :ref:`Control` used to show dialogs and popups. It's a subwindow and modal by default (see :ref:`Control`) and has helpers for custom popup behavior. +Popup is a base window container for popup-like subwindows. It's a modal by default (see :ref:`close_on_parent_focus`) and has helpers for custom popup behavior. Properties ---------- @@ -44,7 +44,7 @@ Signals - **popup_hide** **(** **)** -Emitted when a popup is hidden. +Emitted when the popup is hidden. Property Descriptions --------------------- @@ -61,7 +61,7 @@ Property Descriptions | *Getter* | get_close_on_parent_focus() | +-----------+----------------------------------+ -If ``true``, the ``Popup`` will close when its parent is focused. +If true, the ``Popup`` will close when its parent :ref:`Window` is focused. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_popupmenu.rst b/classes/class_popupmenu.rst index a8c9d750a..c82d9ec79 100644 --- a/classes/class_popupmenu.rst +++ b/classes/class_popupmenu.rst @@ -16,7 +16,7 @@ PopupMenu displays a list of options. Description ----------- -``PopupMenu`` is a :ref:`Control` that displays a list of options. They are popular in toolbars or context menus. +``PopupMenu`` is a modal window used to display a list of options. They are popular in toolbars or context menus. The size of a ``PopupMenu`` can be limited by using :ref:`Window.max_size`. If the height of the list of items is larger than the maximum height of the ``PopupMenu``, a :ref:`ScrollContainer` within the popup will allow the user to scroll the contents. @@ -117,6 +117,10 @@ Methods +--------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`remove_item` **(** :ref:`int` index **)** | +--------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`scroll_to_item` **(** :ref:`int` index **)** | ++--------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_current_index` **(** :ref:`int` index **)** | ++--------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_item_accelerator` **(** :ref:`int` index, :ref:`Key` accel **)** | +--------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_item_as_checkable` **(** :ref:`int` index, :ref:`bool` enable **)** | @@ -684,6 +688,22 @@ Removes the item at the given ``index`` from the menu. ---- +.. _class_PopupMenu_method_scroll_to_item: + +- void **scroll_to_item** **(** :ref:`int` index **)** + +Moves the scroll view to make the item at the given ``index`` visible. + +---- + +.. _class_PopupMenu_method_set_current_index: + +- void **set_current_index** **(** :ref:`int` index **)** + +Sets the currently focused item as the given ``index``. + +---- + .. _class_PopupMenu_method_set_item_accelerator: - void **set_item_accelerator** **(** :ref:`int` index, :ref:`Key` accel **)** diff --git a/classes/class_proceduralskymaterial.rst b/classes/class_proceduralskymaterial.rst index 0a941831a..d8c6810cb 100644 --- a/classes/class_proceduralskymaterial.rst +++ b/classes/class_proceduralskymaterial.rst @@ -25,27 +25,27 @@ The ``ProceduralSkyMaterial`` supports up to 4 suns. Each sun takes its color, e Properties ---------- -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`ground_bottom_color` | ``Color(0.12, 0.12, 0.13, 1)`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`ground_curve` | ``0.02`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`ground_energy` | ``1.0`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`ground_horizon_color` | ``Color(0.37, 0.33, 0.31, 1)`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`sky_curve` | ``0.09`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`sky_energy` | ``1.0`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`sky_horizon_color` | ``Color(0.55, 0.69, 0.81, 1)`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`Color` | :ref:`sky_top_color` | ``Color(0.35, 0.46, 0.71, 1)`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`sun_angle_max` | ``100.0`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ -| :ref:`float` | :ref:`sun_curve` | ``0.05`` | -+---------------------------+----------------------------------------------------------------------------------------+--------------------------------+ ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`Color` | :ref:`ground_bottom_color` | ``Color(0.2, 0.169, 0.133, 1)`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`ground_curve` | ``0.02`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`ground_energy` | ``1.0`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`Color` | :ref:`ground_horizon_color` | ``Color(0.6463, 0.6558, 0.6708, 1)`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`sky_curve` | ``0.15`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`sky_energy` | ``1.0`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`Color` | :ref:`sky_horizon_color` | ``Color(0.6463, 0.6558, 0.6708, 1)`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`Color` | :ref:`sky_top_color` | ``Color(0.385, 0.454, 0.55, 1)`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`sun_angle_max` | ``30.0`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ +| :ref:`float` | :ref:`sun_curve` | ``0.15`` | ++---------------------------+----------------------------------------------------------------------------------------+--------------------------------------+ Property Descriptions --------------------- @@ -54,13 +54,13 @@ Property Descriptions - :ref:`Color` **ground_bottom_color** -+-----------+--------------------------------+ -| *Default* | ``Color(0.12, 0.12, 0.13, 1)`` | -+-----------+--------------------------------+ -| *Setter* | set_ground_bottom_color(value) | -+-----------+--------------------------------+ -| *Getter* | get_ground_bottom_color() | -+-----------+--------------------------------+ ++-----------+---------------------------------+ +| *Default* | ``Color(0.2, 0.169, 0.133, 1)`` | ++-----------+---------------------------------+ +| *Setter* | set_ground_bottom_color(value) | ++-----------+---------------------------------+ +| *Getter* | get_ground_bottom_color() | ++-----------+---------------------------------+ Color of the ground at the bottom. Blends with :ref:`ground_horizon_color`. @@ -102,13 +102,13 @@ Amount of energy contribution from the ground. - :ref:`Color` **ground_horizon_color** -+-----------+---------------------------------+ -| *Default* | ``Color(0.37, 0.33, 0.31, 1)`` | -+-----------+---------------------------------+ -| *Setter* | set_ground_horizon_color(value) | -+-----------+---------------------------------+ -| *Getter* | get_ground_horizon_color() | -+-----------+---------------------------------+ ++-----------+--------------------------------------+ +| *Default* | ``Color(0.6463, 0.6558, 0.6708, 1)`` | ++-----------+--------------------------------------+ +| *Setter* | set_ground_horizon_color(value) | ++-----------+--------------------------------------+ +| *Getter* | get_ground_horizon_color() | ++-----------+--------------------------------------+ Color of the ground at the horizon. Blends with :ref:`ground_bottom_color`. @@ -119,7 +119,7 @@ Color of the ground at the horizon. Blends with :ref:`ground_bottom_color` **sky_curve** +-----------+----------------------+ -| *Default* | ``0.09`` | +| *Default* | ``0.15`` | +-----------+----------------------+ | *Setter* | set_sky_curve(value) | +-----------+----------------------+ @@ -150,13 +150,13 @@ Amount of energy contribution from the sky. - :ref:`Color` **sky_horizon_color** -+-----------+--------------------------------+ -| *Default* | ``Color(0.55, 0.69, 0.81, 1)`` | -+-----------+--------------------------------+ -| *Setter* | set_sky_horizon_color(value) | -+-----------+--------------------------------+ -| *Getter* | get_sky_horizon_color() | -+-----------+--------------------------------+ ++-----------+--------------------------------------+ +| *Default* | ``Color(0.6463, 0.6558, 0.6708, 1)`` | ++-----------+--------------------------------------+ +| *Setter* | set_sky_horizon_color(value) | ++-----------+--------------------------------------+ +| *Getter* | get_sky_horizon_color() | ++-----------+--------------------------------------+ Color of the sky at the horizon. Blends with :ref:`sky_top_color`. @@ -166,13 +166,13 @@ Color of the sky at the horizon. Blends with :ref:`sky_top_color` **sky_top_color** -+-----------+--------------------------------+ -| *Default* | ``Color(0.35, 0.46, 0.71, 1)`` | -+-----------+--------------------------------+ -| *Setter* | set_sky_top_color(value) | -+-----------+--------------------------------+ -| *Getter* | get_sky_top_color() | -+-----------+--------------------------------+ ++-----------+----------------------------------+ +| *Default* | ``Color(0.385, 0.454, 0.55, 1)`` | ++-----------+----------------------------------+ +| *Setter* | set_sky_top_color(value) | ++-----------+----------------------------------+ +| *Getter* | get_sky_top_color() | ++-----------+----------------------------------+ Color of the sky at the top. Blends with :ref:`sky_horizon_color`. @@ -183,7 +183,7 @@ Color of the sky at the top. Blends with :ref:`sky_horizon_color` **sun_angle_max** +-----------+--------------------------+ -| *Default* | ``100.0`` | +| *Default* | ``30.0`` | +-----------+--------------------------+ | *Setter* | set_sun_angle_max(value) | +-----------+--------------------------+ @@ -199,7 +199,7 @@ Distance from center of sun where it fades out completely. - :ref:`float` **sun_curve** +-----------+----------------------+ -| *Default* | ``0.05`` | +| *Default* | ``0.15`` | +-----------+----------------------+ | *Setter* | set_sun_curve(value) | +-----------+----------------------+ diff --git a/classes/class_projectsettings.rst b/classes/class_projectsettings.rst index 611603716..e0b2bc7fa 100644 --- a/classes/class_projectsettings.rst +++ b/classes/class_projectsettings.rst @@ -137,6 +137,8 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/gdscript/warnings/incompatible_ternary` | ``true`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`debug/gdscript/warnings/int_assigned_to_enum` | ``true`` | ++---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/gdscript/warnings/integer_division` | ``true`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`debug/gdscript/warnings/narrowing_conversion` | ``true`` | @@ -267,6 +269,12 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`gui/theme/custom_font` | ``""`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`gui/theme/default_font_antialiased` | ``true`` | ++---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`gui/theme/default_font_hinting` | ``1`` | ++---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`gui/theme/default_font_subpixel_positioning` | ``1`` | ++---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`float` | :ref:`gui/theme/default_theme_scale` | ``1.0`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`gui/timers/incremental_search_max_interval_msec` | ``2000`` | @@ -1025,13 +1033,13 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/global_illumination/gi/use_half_resolution` | ``false`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/global_illumination/sdfgi/frames_to_converge` | ``4`` | +| :ref:`int` | :ref:`rendering/global_illumination/sdfgi/frames_to_converge` | ``5`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/global_illumination/sdfgi/frames_to_update_lights` | ``2`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/global_illumination/sdfgi/probe_ray_count` | ``1`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/global_illumination/voxel_gi/quality` | ``1`` | +| :ref:`int` | :ref:`rendering/global_illumination/voxel_gi/quality` | ``0`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/lightmapping/bake_performance/max_rays_per_pass` | ``32`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ @@ -1085,9 +1093,9 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`rendering/reflections/sky_reflections/fast_filter_high_quality` | ``false`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/reflections/sky_reflections/ggx_samples` | ``1024`` | +| :ref:`int` | :ref:`rendering/reflections/sky_reflections/ggx_samples` | ``32`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/reflections/sky_reflections/ggx_samples.mobile` | ``128`` | +| :ref:`int` | :ref:`rendering/reflections/sky_reflections/ggx_samples.mobile` | ``16`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/reflections/sky_reflections/roughness_layers` | ``8`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ @@ -1131,7 +1139,7 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/shadows/directional_shadow/size.mobile` | ``2048`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/shadows/directional_shadow/soft_shadow_quality` | ``3`` | +| :ref:`int` | :ref:`rendering/shadows/directional_shadow/soft_shadow_quality` | ``2`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/shadows/directional_shadow/soft_shadow_quality.mobile` | ``0`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ @@ -1149,7 +1157,7 @@ Properties +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/shadows/shadow_atlas/size.mobile` | ``2048`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`rendering/shadows/shadows/soft_shadow_quality` | ``3`` | +| :ref:`int` | :ref:`rendering/shadows/shadows/soft_shadow_quality` | ``2`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`rendering/shadows/shadows/soft_shadow_quality.mobile` | ``0`` | +---------------------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------------------------+ @@ -1848,6 +1856,16 @@ If ``true``, enables warnings when a ternary operator may emit values with incom ---- +.. _class_ProjectSettings_property_debug/gdscript/warnings/int_assigned_to_enum: + +- :ref:`bool` **debug/gdscript/warnings/int_assigned_to_enum** + ++-----------+----------+ +| *Default* | ``true`` | ++-----------+----------+ + +---- + .. _class_ProjectSettings_property_debug/gdscript/warnings/integer_division: - :ref:`bool` **debug/gdscript/warnings/integer_division** @@ -2644,6 +2662,42 @@ Path to a custom :ref:`Font` resource to use as default for all GUI ---- +.. _class_ProjectSettings_property_gui/theme/default_font_antialiased: + +- :ref:`bool` **gui/theme/default_font_antialiased** + ++-----------+----------+ +| *Default* | ``true`` | ++-----------+----------+ + +If set to ``true``, default font uses 8-bit anitialiased glyph rendering. See :ref:`FontData.antialiased`. + +---- + +.. _class_ProjectSettings_property_gui/theme/default_font_hinting: + +- :ref:`int` **gui/theme/default_font_hinting** + ++-----------+-------+ +| *Default* | ``1`` | ++-----------+-------+ + +Default font hinting mode. See :ref:`FontData.hinting`. + +---- + +.. _class_ProjectSettings_property_gui/theme/default_font_subpixel_positioning: + +- :ref:`int` **gui/theme/default_font_subpixel_positioning** + ++-----------+-------+ +| *Default* | ``1`` | ++-----------+-------+ + +Default font glyph sub-pixel positioning mode. See :ref:`FontData.subpixel_positioning`. + +---- + .. _class_ProjectSettings_property_gui/theme/default_theme_scale: - :ref:`float` **gui/theme/default_theme_scale** @@ -6883,7 +6937,7 @@ If ``true``, renders :ref:`VoxelGI` and SDFGI (:ref:`Environment. - :ref:`int` **rendering/global_illumination/sdfgi/frames_to_converge** +-----------+-------+ -| *Default* | ``4`` | +| *Default* | ``5`` | +-----------+-------+ ---- @@ -6913,7 +6967,7 @@ If ``true``, renders :ref:`VoxelGI` and SDFGI (:ref:`Environment. - :ref:`int` **rendering/global_illumination/voxel_gi/quality** +-----------+-------+ -| *Default* | ``1`` | +| *Default* | ``0`` | +-----------+-------+ ---- @@ -7122,6 +7176,8 @@ The automatic LOD bias to use for meshes rendered within the :ref:`ReflectionPro | *Default* | ``2`` | +-----------+-------+ +The `BVH `__ quality to use when rendering the occlusion culling buffer. Higher values will result in more accurate occlusion culling, at the cost of higher CPU usage. + ---- .. _class_ProjectSettings_property_rendering/occlusion_culling/occlusion_rays_per_thread: @@ -7132,6 +7188,8 @@ The automatic LOD bias to use for meshes rendered within the :ref:`ReflectionPro | *Default* | ``512`` | +-----------+---------+ +Higher values will result in more accurate occlusion culling, at the cost of higher CPU usage. The occlusion culling buffer's pixel count is roughly equal to ``occlusion_rays_per_thread * number_of_logical_cpu_cores``, so it will depend on the system's CPU. Therefore, CPUs with fewer cores will use a lower resolution to attempt keeping performance costs even across devices. + ---- .. _class_ProjectSettings_property_rendering/occlusion_culling/use_occlusion_culling: @@ -7142,6 +7200,10 @@ The automatic LOD bias to use for meshes rendered within the :ref:`ReflectionPro | *Default* | ``false`` | +-----------+-----------+ +If ``true``, :ref:`OccluderInstance3D` nodes will be usable for occlusion culling in 3D in the root viewport. In custom viewports, :ref:`Viewport.use_occlusion_culling` must be set to ``true`` instead. + +\ **Note:** Enabling occlusion culling has a cost on the CPU. Only enable occlusion culling if you actually plan to use it. Large open scenes with few or no objects blocking the view will generally not benefit much from occlusion culling. Large open scenes generally benefit more from mesh LOD and visibility ranges (:ref:`GeometryInstance3D.visibility_range_begin` and :ref:`GeometryInstance3D.visibility_range_end`) compared to occlusion culling. + ---- .. _class_ProjectSettings_property_rendering/reflections/reflection_atlas/reflection_count: @@ -7196,9 +7258,9 @@ Use a higher quality variant of the fast filtering algorithm. Significantly slow - :ref:`int` **rendering/reflections/sky_reflections/ggx_samples** -+-----------+----------+ -| *Default* | ``1024`` | -+-----------+----------+ ++-----------+--------+ +| *Default* | ``32`` | ++-----------+--------+ Sets the number of samples to take when using importance sampling for :ref:`Sky`\ s and :ref:`ReflectionProbe`\ s. A higher value will result in smoother, higher quality reflections, but increases time to calculate radiance maps. In general, fewer samples are needed for simpler, low dynamic range environments while more samples are needed for HDR environments and environments with a high level of detail. @@ -7208,9 +7270,9 @@ Sets the number of samples to take when using importance sampling for :ref:`Sky< - :ref:`int` **rendering/reflections/sky_reflections/ggx_samples.mobile** -+-----------+---------+ -| *Default* | ``128`` | -+-----------+---------+ ++-----------+--------+ +| *Default* | ``16`` | ++-----------+--------+ Lower-end override for :ref:`rendering/reflections/sky_reflections/ggx_samples` on mobile devices, due to performance concerns or driver support. @@ -7461,7 +7523,7 @@ Lower-end override for :ref:`rendering/shadows/directional_shadow/size` **rendering/shadows/directional_shadow/soft_shadow_quality** +-----------+-------+ -| *Default* | ``3`` | +| *Default* | ``2`` | +-----------+-------+ Quality setting for shadows cast by :ref:`DirectionalLight3D`\ s. Higher quality settings use more samples when reading from shadow maps and are thus slower. Low quality settings may result in shadows looking grainy. @@ -7571,7 +7633,7 @@ Lower-end override for :ref:`rendering/shadows/shadow_atlas/size` **rendering/shadows/shadows/soft_shadow_quality** +-----------+-------+ -| *Default* | ``3`` | +| *Default* | ``2`` | +-----------+-------+ Quality setting for shadows cast by :ref:`OmniLight3D`\ s and :ref:`SpotLight3D`\ s. Higher quality settings use more samples when reading from shadow maps and are thus slower. Low quality settings may result in shadows looking grainy. diff --git a/classes/class_quadoccluder3d.rst b/classes/class_quadoccluder3d.rst new file mode 100644 index 000000000..66da48be2 --- /dev/null +++ b/classes/class_quadoccluder3d.rst @@ -0,0 +1,52 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the QuadOccluder3D.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_QuadOccluder3D: + +QuadOccluder3D +============== + +**Inherits:** :ref:`Occluder3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +Flat plane shape for use with occlusion culling in :ref:`OccluderInstance3D`. + +Description +----------- + +``QuadOccluder3D`` stores a flat plane shape that can be used by the engine's occlusion culling system. See also :ref:`PolygonOccluder3D` if you need to customize the quad's shape. + +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. + +Properties +---------- + ++-------------------------------+-------------------------------------------------+-------------------+ +| :ref:`Vector2` | :ref:`size` | ``Vector2(1, 1)`` | ++-------------------------------+-------------------------------------------------+-------------------+ + +Property Descriptions +--------------------- + +.. _class_QuadOccluder3D_property_size: + +- :ref:`Vector2` **size** + ++-----------+-------------------+ +| *Default* | ``Vector2(1, 1)`` | ++-----------+-------------------+ +| *Setter* | set_size(value) | ++-----------+-------------------+ +| *Getter* | get_size() | ++-----------+-------------------+ + +The quad's size in 3D units. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_rect2.rst b/classes/class_rect2.rst index 0d9b6750a..4b4f368e1 100644 --- a/classes/class_rect2.rst +++ b/classes/class_rect2.rst @@ -229,7 +229,7 @@ Returns a copy of this ``Rect2`` expanded to include a given point. - :ref:`float` **get_area** **(** **)** |const| -Returns the area of the ``Rect2``. +Returns the area of the ``Rect2``. See also :ref:`has_no_area`. ---- @@ -269,7 +269,9 @@ Returns a copy of the ``Rect2`` grown by the specified ``amount`` on the specifi - :ref:`bool` **has_no_area** **(** **)** |const| -Returns ``true`` if the ``Rect2`` is flat or empty. +Returns ``true`` if the ``Rect2`` is flat or empty, ``false`` otherwise. See also :ref:`get_area`. + +\ **Note:** If the ``Rect2`` has a negative size and is not flat or empty, :ref:`has_no_area` will return ``true``. ---- diff --git a/classes/class_rect2i.rst b/classes/class_rect2i.rst index baa8207e6..05fd56c5f 100644 --- a/classes/class_rect2i.rst +++ b/classes/class_rect2i.rst @@ -219,7 +219,7 @@ Returns a copy of this ``Rect2i`` expanded so that the borders align with the gi - :ref:`int` **get_area** **(** **)** |const| -Returns the area of the ``Rect2i``. +Returns the area of the ``Rect2i``. See also :ref:`has_no_area`. ---- @@ -261,7 +261,9 @@ Returns a copy of the ``Rect2i`` grown by the specified ``amount`` on the specif - :ref:`bool` **has_no_area** **(** **)** |const| -Returns ``true`` if the ``Rect2i`` is flat or empty. +Returns ``true`` if the ``Rect2i`` is flat or empty, ``false`` otherwise. See also :ref:`get_area`. + +\ **Note:** If the ``Rect2i`` has a negative size and is not flat or empty, :ref:`has_no_area` will return ``true``. ---- diff --git a/classes/class_refcounted.rst b/classes/class_refcounted.rst index cdbd1b968..5d9f53182 100644 --- a/classes/class_refcounted.rst +++ b/classes/class_refcounted.rst @@ -11,7 +11,7 @@ RefCounted **Inherits:** :ref:`Object` -**Inherited By:** :ref:`AESContext`, :ref:`AStar`, :ref:`AStar2D`, :ref:`AnimationTrackEditPlugin`, :ref:`AudioEffectInstance`, :ref:`AudioStreamPlayback`, :ref:`CameraFeed`, :ref:`CharFXTransform`, :ref:`ConfigFile`, :ref:`Crypto`, :ref:`DTLSServer`, :ref:`Directory`, :ref:`ENetConnection`, :ref:`EditorExportPlugin`, :ref:`EditorFeatureProfile`, :ref:`EditorInspectorPlugin`, :ref:`EditorResourceConversionPlugin`, :ref:`EditorResourcePreviewGenerator`, :ref:`EditorSceneFormatImporter`, :ref:`EditorScenePostImport`, :ref:`EditorScenePostImportPlugin`, :ref:`EditorScript`, :ref:`EditorTranslationParserPlugin`, :ref:`EncodedObjectAsID`, :ref:`Expression`, :ref:`File`, :ref:`GDNative`, :ref:`HMACContext`, :ref:`HTTPClient`, :ref:`HashingContext`, :ref:`JSON`, :ref:`JavaClass`, :ref:`JavaScriptObject`, :ref:`KinematicCollision2D`, :ref:`KinematicCollision3D`, :ref:`Lightmapper`, :ref:`MeshDataTool`, :ref:`MultiplayerAPI`, :ref:`Mutex`, :ref:`Node3DGizmo`, :ref:`OGGPacketSequencePlayback`, :ref:`PCKPacker`, :ref:`PackedDataContainerRef`, :ref:`PacketPeer`, :ref:`PhysicsPointQueryParameters2D`, :ref:`PhysicsPointQueryParameters3D`, :ref:`PhysicsRayQueryParameters2D`, :ref:`PhysicsRayQueryParameters3D`, :ref:`PhysicsShapeQueryParameters2D`, :ref:`PhysicsShapeQueryParameters3D`, :ref:`PhysicsTestMotionParameters2D`, :ref:`PhysicsTestMotionParameters3D`, :ref:`PhysicsTestMotionResult2D`, :ref:`PhysicsTestMotionResult3D`, :ref:`RDAttachmentFormat`, :ref:`RDFramebufferPass`, :ref:`RDPipelineColorBlendState`, :ref:`RDPipelineColorBlendStateAttachment`, :ref:`RDPipelineDepthStencilState`, :ref:`RDPipelineMultisampleState`, :ref:`RDPipelineRasterizationState`, :ref:`RDPipelineSpecializationConstant`, :ref:`RDSamplerState`, :ref:`RDShaderSource`, :ref:`RDTextureFormat`, :ref:`RDTextureView`, :ref:`RDUniform`, :ref:`RDVertexAttribute`, :ref:`RandomNumberGenerator`, :ref:`RegEx`, :ref:`RegExMatch`, :ref:`Resource`, :ref:`ResourceFormatLoader`, :ref:`ResourceFormatSaver`, :ref:`ResourceImporter`, :ref:`SceneState`, :ref:`SceneTreeTimer`, :ref:`Semaphore`, :ref:`SkinReference`, :ref:`StreamPeer`, :ref:`SurfaceTool`, :ref:`TCPServer`, :ref:`TextLine`, :ref:`TextParagraph`, :ref:`TextServer`, :ref:`Thread`, :ref:`TriangleMesh`, :ref:`Tween`, :ref:`Tweener`, :ref:`UDPServer`, :ref:`UPNP`, :ref:`UPNPDevice`, :ref:`VelocityTracker3D`, :ref:`VisualScriptFunctionState`, :ref:`WeakRef`, :ref:`WebRTCPeerConnection`, :ref:`XMLParser`, :ref:`XRInterface`, :ref:`XRPose`, :ref:`XRPositionalTracker` +**Inherited By:** :ref:`AESContext`, :ref:`AStar`, :ref:`AStar2D`, :ref:`AnimationTrackEditPlugin`, :ref:`AudioEffectInstance`, :ref:`AudioStreamPlayback`, :ref:`CameraFeed`, :ref:`CharFXTransform`, :ref:`ConfigFile`, :ref:`Crypto`, :ref:`DTLSServer`, :ref:`Directory`, :ref:`ENetConnection`, :ref:`EditorExportPlugin`, :ref:`EditorFeatureProfile`, :ref:`EditorInspectorPlugin`, :ref:`EditorResourceConversionPlugin`, :ref:`EditorResourcePreviewGenerator`, :ref:`EditorSceneFormatImporter`, :ref:`EditorScenePostImport`, :ref:`EditorScenePostImportPlugin`, :ref:`EditorScript`, :ref:`EditorTranslationParserPlugin`, :ref:`EncodedObjectAsID`, :ref:`EngineProfiler`, :ref:`Expression`, :ref:`File`, :ref:`GDNative`, :ref:`HMACContext`, :ref:`HTTPClient`, :ref:`HashingContext`, :ref:`JSON`, :ref:`JavaClass`, :ref:`JavaScriptObject`, :ref:`KinematicCollision2D`, :ref:`KinematicCollision3D`, :ref:`Lightmapper`, :ref:`MeshDataTool`, :ref:`MultiplayerAPI`, :ref:`Mutex`, :ref:`Node3DGizmo`, :ref:`OGGPacketSequencePlayback`, :ref:`PCKPacker`, :ref:`PackedDataContainerRef`, :ref:`PacketPeer`, :ref:`PhysicsPointQueryParameters2D`, :ref:`PhysicsPointQueryParameters3D`, :ref:`PhysicsRayQueryParameters2D`, :ref:`PhysicsRayQueryParameters3D`, :ref:`PhysicsShapeQueryParameters2D`, :ref:`PhysicsShapeQueryParameters3D`, :ref:`PhysicsTestMotionParameters2D`, :ref:`PhysicsTestMotionParameters3D`, :ref:`PhysicsTestMotionResult2D`, :ref:`PhysicsTestMotionResult3D`, :ref:`RDAttachmentFormat`, :ref:`RDFramebufferPass`, :ref:`RDPipelineColorBlendState`, :ref:`RDPipelineColorBlendStateAttachment`, :ref:`RDPipelineDepthStencilState`, :ref:`RDPipelineMultisampleState`, :ref:`RDPipelineRasterizationState`, :ref:`RDPipelineSpecializationConstant`, :ref:`RDSamplerState`, :ref:`RDShaderSource`, :ref:`RDTextureFormat`, :ref:`RDTextureView`, :ref:`RDUniform`, :ref:`RDVertexAttribute`, :ref:`RandomNumberGenerator`, :ref:`RegEx`, :ref:`RegExMatch`, :ref:`Resource`, :ref:`ResourceFormatLoader`, :ref:`ResourceFormatSaver`, :ref:`ResourceImporter`, :ref:`SceneState`, :ref:`SceneTreeTimer`, :ref:`Semaphore`, :ref:`SkinReference`, :ref:`StreamPeer`, :ref:`SurfaceTool`, :ref:`TCPServer`, :ref:`TextLine`, :ref:`TextParagraph`, :ref:`TextServer`, :ref:`Thread`, :ref:`TriangleMesh`, :ref:`Tween`, :ref:`Tweener`, :ref:`UDPServer`, :ref:`UPNP`, :ref:`UPNPDevice`, :ref:`VelocityTracker3D`, :ref:`VisualScriptFunctionState`, :ref:`WeakRef`, :ref:`WebRTCPeerConnection`, :ref:`XMLParser`, :ref:`XRInterface`, :ref:`XRPose`, :ref:`XRPositionalTracker` Base class for reference-counted objects. diff --git a/classes/class_renderingserver.rst b/classes/class_renderingserver.rst index 828169b4d..f4fd1c639 100644 --- a/classes/class_renderingserver.rst +++ b/classes/class_renderingserver.rst @@ -1211,7 +1211,7 @@ enum **ArrayFormat**: - **ARRAY_FORMAT_INDEX** = **4096** --- Flag used to mark an index array. -- **ARRAY_FORMAT_BLEND_SHAPE_MASK** = **2147475463** +- **ARRAY_FORMAT_BLEND_SHAPE_MASK** = **7** - **ARRAY_FORMAT_CUSTOM_BASE** = **13** @@ -2295,19 +2295,19 @@ enum **EnvironmentSSILQuality**: .. _enum_RenderingServer_EnvironmentSDFGIYScale: -.. _class_RenderingServer_constant_ENV_SDFGI_Y_SCALE_DISABLED: +.. _class_RenderingServer_constant_ENV_SDFGI_Y_SCALE_50_PERCENT: .. _class_RenderingServer_constant_ENV_SDFGI_Y_SCALE_75_PERCENT: -.. _class_RenderingServer_constant_ENV_SDFGI_Y_SCALE_50_PERCENT: +.. _class_RenderingServer_constant_ENV_SDFGI_Y_SCALE_100_PERCENT: enum **EnvironmentSDFGIYScale**: -- **ENV_SDFGI_Y_SCALE_DISABLED** = **0** +- **ENV_SDFGI_Y_SCALE_50_PERCENT** = **0** - **ENV_SDFGI_Y_SCALE_75_PERCENT** = **1** -- **ENV_SDFGI_Y_SCALE_50_PERCENT** = **2** +- **ENV_SDFGI_Y_SCALE_100_PERCENT** = **2** ---- @@ -4332,6 +4332,12 @@ Sets a material that will override the material for all surfaces on the mesh ass Sets the transparency for the given geometry instance. Equivalent to :ref:`GeometryInstance3D.transparency`. +A transparency of ``0.0`` is fully opaque, while ``1.0`` is fully transparent. Values greater than ``0.0`` (exclusive) will force the geometry's materials to go through the transparent pipeline, which is slower to render and can exhibit rendering issues due to incorrect transparency sorting. However, unlike using a transparent material, setting ``transparency`` to a value greater than ``0.0`` (exclusive) will *not* disable shadow rendering. + +In spatial shaders, ``1.0 - transparency`` is set as the default value of the ``ALPHA`` built-in. + +\ **Note:** ``transparency`` is clamped between ``0.0`` and ``1.0``, so this property cannot be used to make transparent materials more opaque than they originally are. + ---- .. _class_RenderingServer_method_instance_geometry_set_visibility_range: diff --git a/classes/class_resource.rst b/classes/class_resource.rst index d90224c14..39b3fbd32 100644 --- a/classes/class_resource.rst +++ b/classes/class_resource.rst @@ -11,7 +11,7 @@ Resource **Inherits:** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`Animation`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`ButtonGroup`, :ref:`CameraEffects`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`Font`, :ref:`FontData`, :ref:`GDNativeLibrary`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MultiMesh`, :ref:`NativeExtension`, :ref:`NavigationMesh`, :ref:`NavigationPolygon`, :ref:`OGGPacketSequence`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OpenSimplexNoise`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`Script`, :ref:`Shader`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModification3D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonModificationStack3D`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VisualScriptNode`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` +**Inherited By:** :ref:`Animation`, :ref:`AnimationNode`, :ref:`AnimationNodeStateMachinePlayback`, :ref:`AnimationNodeStateMachineTransition`, :ref:`AudioBusLayout`, :ref:`AudioEffect`, :ref:`AudioStream`, :ref:`BitMap`, :ref:`ButtonGroup`, :ref:`CameraEffects`, :ref:`CryptoKey`, :ref:`Curve`, :ref:`Curve2D`, :ref:`Curve3D`, :ref:`EditorNode3DGizmoPlugin`, :ref:`EditorSettings`, :ref:`Environment`, :ref:`Font`, :ref:`FontData`, :ref:`GDNativeLibrary`, :ref:`GLTFAccessor`, :ref:`GLTFAnimation`, :ref:`GLTFBufferView`, :ref:`GLTFCamera`, :ref:`GLTFDocument`, :ref:`GLTFDocumentExtension`, :ref:`GLTFLight`, :ref:`GLTFMesh`, :ref:`GLTFNode`, :ref:`GLTFSkeleton`, :ref:`GLTFSkin`, :ref:`GLTFSpecGloss`, :ref:`GLTFState`, :ref:`GLTFTexture`, :ref:`Gradient`, :ref:`Image`, :ref:`ImporterMesh`, :ref:`InputEvent`, :ref:`LightmapGIData`, :ref:`Material`, :ref:`Mesh`, :ref:`MeshLibrary`, :ref:`MultiMesh`, :ref:`NativeExtension`, :ref:`NavigationMesh`, :ref:`NavigationPolygon`, :ref:`OGGPacketSequence`, :ref:`Occluder3D`, :ref:`OccluderPolygon2D`, :ref:`OpenSimplexNoise`, :ref:`PackedDataContainer`, :ref:`PackedScene`, :ref:`PhysicsMaterial`, :ref:`PolygonPathFinder`, :ref:`RDShaderFile`, :ref:`RDShaderSPIRV`, :ref:`RichTextEffect`, :ref:`SceneReplicationConfig`, :ref:`Script`, :ref:`Shader`, :ref:`Shape2D`, :ref:`Shape3D`, :ref:`Shortcut`, :ref:`SkeletonModification2D`, :ref:`SkeletonModification3D`, :ref:`SkeletonModificationStack2D`, :ref:`SkeletonModificationStack3D`, :ref:`Skin`, :ref:`Sky`, :ref:`SpriteFrames`, :ref:`StyleBox`, :ref:`SyntaxHighlighter`, :ref:`Texture`, :ref:`Theme`, :ref:`TileMapPattern`, :ref:`TileSet`, :ref:`TileSetSource`, :ref:`Translation`, :ref:`VideoStream`, :ref:`VisualScriptNode`, :ref:`VisualShaderNode`, :ref:`VoxelGIData`, :ref:`World2D`, :ref:`World3D`, :ref:`X509Certificate` Base class for all resources. diff --git a/classes/class_resourceuid.rst b/classes/class_resourceuid.rst index 3ae03da07..aa292397a 100644 --- a/classes/class_resourceuid.rst +++ b/classes/class_resourceuid.rst @@ -19,7 +19,7 @@ Methods +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ | void | :ref:`add_id` **(** :ref:`int` id, :ref:`String` path **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`create_id` **(** **)** |const| | +| :ref:`int` | :ref:`create_id` **(** **)** | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_id_path` **(** :ref:`int` id **)** |const| | +-----------------------------+-----------------------------------------------------------------------------------------------------------------------+ @@ -52,7 +52,7 @@ Method Descriptions .. _class_ResourceUID_method_create_id: -- :ref:`int` **create_id** **(** **)** |const| +- :ref:`int` **create_id** **(** **)** ---- diff --git a/classes/class_richtextlabel.rst b/classes/class_richtextlabel.rst index b1430b7c8..2c6c9684e 100644 --- a/classes/class_richtextlabel.rst +++ b/classes/class_richtextlabel.rst @@ -38,6 +38,8 @@ Tutorials Properties ---------- ++--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ +| :ref:`AutowrapMode` | :ref:`autowrap_mode` | ``3`` | +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`bbcode_enabled` | ``false`` | +--------------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------+-------------------------------------------------------------------------------+ @@ -90,12 +92,22 @@ Methods +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear` **(** **)** | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_character_line` **(** :ref:`int` character **)** | ++-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_character_paragraph` **(** :ref:`int` character **)** | ++-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_content_height` **(** **)** |const| | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_content_width` **(** **)** |const| | ++-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_line_count` **(** **)** |const| | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_offset` **(** :ref:`int` line **)** | ++-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_paragraph_count` **(** **)** |const| | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_paragraph_offset` **(** :ref:`int` paragraph **)** | ++-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_parsed_text` **(** **)** |const| | +-------------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_selected_text` **(** **)** |const| | @@ -270,6 +282,28 @@ Triggers when the mouse enters a meta tag. Enumerations ------------ +.. _enum_RichTextLabel_AutowrapMode: + +.. _class_RichTextLabel_constant_AUTOWRAP_OFF: + +.. _class_RichTextLabel_constant_AUTOWRAP_ARBITRARY: + +.. _class_RichTextLabel_constant_AUTOWRAP_WORD: + +.. _class_RichTextLabel_constant_AUTOWRAP_WORD_SMART: + +enum **AutowrapMode**: + +- **AUTOWRAP_OFF** = **0** --- Autowrap is disabled. + +- **AUTOWRAP_ARBITRARY** = **1** --- Wraps the text inside the node's bounding rectangle by allowing to break lines at arbitrary positions, which is useful when very limited space is available. + +- **AUTOWRAP_WORD** = **2** --- Wraps the text inside the node's bounding rectangle by soft-breaking between words. + +- **AUTOWRAP_WORD_SMART** = **3** --- Behaves similarly to :ref:`AUTOWRAP_WORD`, but force-breaks a word if that single word does not fit in one line. + +---- + .. _enum_RichTextLabel_ListType: .. _class_RichTextLabel_constant_LIST_NUMBERS: @@ -429,6 +463,22 @@ enum **VisibleCharactersBehavior**: Property Descriptions --------------------- +.. _class_RichTextLabel_property_autowrap_mode: + +- :ref:`AutowrapMode` **autowrap_mode** + ++-----------+--------------------------+ +| *Default* | ``3`` | ++-----------+--------------------------+ +| *Setter* | set_autowrap_mode(value) | ++-----------+--------------------------+ +| *Getter* | get_autowrap_mode() | ++-----------+--------------------------+ + +If set to something other than :ref:`AUTOWRAP_OFF`, the text gets wrapped inside the node's bounding rectangle. To see how each mode behaves, see :ref:`AutowrapMode`. + +---- + .. _class_RichTextLabel_property_bbcode_enabled: - :ref:`bool` **bbcode_enabled** @@ -764,6 +814,22 @@ Clears the tag stack and sets :ref:`text` to ---- +.. _class_RichTextLabel_method_get_character_line: + +- :ref:`int` **get_character_line** **(** :ref:`int` character **)** + +Returns the line number of the character position provided. + +---- + +.. _class_RichTextLabel_method_get_character_paragraph: + +- :ref:`int` **get_character_paragraph** **(** :ref:`int` character **)** + +Returns the paragraph number of the character position provided. + +---- + .. _class_RichTextLabel_method_get_content_height: - :ref:`int` **get_content_height** **(** **)** |const| @@ -772,6 +838,14 @@ Returns the height of the content. ---- +.. _class_RichTextLabel_method_get_content_width: + +- :ref:`int` **get_content_width** **(** **)** |const| + +Returns the width of the content. + +---- + .. _class_RichTextLabel_method_get_line_count: - :ref:`int` **get_line_count** **(** **)** |const| @@ -780,6 +854,14 @@ Returns the total number of lines in the text. Wrapped text is counted as multip ---- +.. _class_RichTextLabel_method_get_line_offset: + +- :ref:`float` **get_line_offset** **(** :ref:`int` line **)** + +Returns the vertical offset of the line found at the provided index. + +---- + .. _class_RichTextLabel_method_get_paragraph_count: - :ref:`int` **get_paragraph_count** **(** **)** |const| @@ -788,6 +870,14 @@ Returns the total number of paragraphs (newlines or ``p`` tags in the tag stack' ---- +.. _class_RichTextLabel_method_get_paragraph_offset: + +- :ref:`float` **get_paragraph_offset** **(** :ref:`int` paragraph **)** + +Returns the vertical offset of the paragraph found at the provided index. + +---- + .. _class_RichTextLabel_method_get_parsed_text: - :ref:`String` **get_parsed_text** **(** **)** |const| diff --git a/classes/class_rid.rst b/classes/class_rid.rst index 644af0001..dcd4edfec 100644 --- a/classes/class_rid.rst +++ b/classes/class_rid.rst @@ -28,9 +28,11 @@ Constructors Methods ------- -+-----------------------+------------------------------------------------------------+ -| :ref:`int` | :ref:`get_id` **(** **)** |const| | -+-----------------------+------------------------------------------------------------+ ++-------------------------+----------------------------------------------------------------+ +| :ref:`int` | :ref:`get_id` **(** **)** |const| | ++-------------------------+----------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_valid` **(** **)** |const| | ++-------------------------+----------------------------------------------------------------+ Operators --------- @@ -77,6 +79,14 @@ Method Descriptions Returns the ID of the referenced resource. +---- + +.. _class_RID_method_is_valid: + +- :ref:`bool` **is_valid** **(** **)** |const| + +Returns ``true`` if ``RID`` is valid. + Operator Descriptions --------------------- diff --git a/classes/class_scenereplicationconfig.rst b/classes/class_scenereplicationconfig.rst new file mode 100644 index 000000000..c5daec9ad --- /dev/null +++ b/classes/class_scenereplicationconfig.rst @@ -0,0 +1,91 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the SceneReplicationConfig.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_SceneReplicationConfig: + +SceneReplicationConfig +====================== + +**Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + + + +Methods +------- + ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_property` **(** :ref:`NodePath` path, :ref:`int` index=-1 **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`NodePath[]` | :ref:`get_properties` **(** **)** |const| | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`property_get_index` **(** :ref:`NodePath` path **)** |const| | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`property_get_spawn` **(** :ref:`NodePath` path **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`property_get_sync` **(** :ref:`NodePath` path **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`property_set_spawn` **(** :ref:`NodePath` path, :ref:`bool` enabled **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`property_set_sync` **(** :ref:`NodePath` path, :ref:`bool` enabled **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_property` **(** :ref:`NodePath` path **)** | ++-----------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------+ + +Method Descriptions +------------------- + +.. _class_SceneReplicationConfig_method_add_property: + +- void **add_property** **(** :ref:`NodePath` path, :ref:`int` index=-1 **)** + +---- + +.. _class_SceneReplicationConfig_method_get_properties: + +- :ref:`NodePath[]` **get_properties** **(** **)** |const| + +---- + +.. _class_SceneReplicationConfig_method_property_get_index: + +- :ref:`int` **property_get_index** **(** :ref:`NodePath` path **)** |const| + +---- + +.. _class_SceneReplicationConfig_method_property_get_spawn: + +- :ref:`bool` **property_get_spawn** **(** :ref:`NodePath` path **)** + +---- + +.. _class_SceneReplicationConfig_method_property_get_sync: + +- :ref:`bool` **property_get_sync** **(** :ref:`NodePath` path **)** + +---- + +.. _class_SceneReplicationConfig_method_property_set_spawn: + +- void **property_set_spawn** **(** :ref:`NodePath` path, :ref:`bool` enabled **)** + +---- + +.. _class_SceneReplicationConfig_method_property_set_sync: + +- void **property_set_sync** **(** :ref:`NodePath` path, :ref:`bool` enabled **)** + +---- + +.. _class_SceneReplicationConfig_method_remove_property: + +- void **remove_property** **(** :ref:`NodePath` path **)** + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_sphereoccluder3d.rst b/classes/class_sphereoccluder3d.rst new file mode 100644 index 000000000..38bdaa3a1 --- /dev/null +++ b/classes/class_sphereoccluder3d.rst @@ -0,0 +1,52 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the SphereOccluder3D.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_SphereOccluder3D: + +SphereOccluder3D +================ + +**Inherits:** :ref:`Occluder3D` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +Spherical shape for use with occlusion culling in :ref:`OccluderInstance3D`. + +Description +----------- + +``SphereOccluder3D`` stores a sphere shape that can be used by the engine's occlusion culling system. + +See :ref:`OccluderInstance3D`'s documentation for instructions on setting up occlusion culling. + +Properties +---------- + ++---------------------------+-------------------------------------------------------+---------+ +| :ref:`float` | :ref:`radius` | ``1.0`` | ++---------------------------+-------------------------------------------------------+---------+ + +Property Descriptions +--------------------- + +.. _class_SphereOccluder3D_property_radius: + +- :ref:`float` **radius** + ++-----------+-------------------+ +| *Default* | ``1.0`` | ++-----------+-------------------+ +| *Setter* | set_radius(value) | ++-----------+-------------------+ +| *Getter* | get_radius() | ++-----------+-------------------+ + +The sphere's radius in 3D units. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_spritebase3d.rst b/classes/class_spritebase3d.rst index 67ca2d21a..e625bca2a 100644 --- a/classes/class_spritebase3d.rst +++ b/classes/class_spritebase3d.rst @@ -232,7 +232,7 @@ If ``true``, texture is flipped vertically. A color value used to *multiply* the texture's colors. Can be used for mood-coloring or to simulate the color of light. -\ **Note:** If a :ref:`GeometryInstance3D.material_override` is defined on the ``SpriteBase3D``, the material override must be configured to take vertex colors into account for albedo. Otherwise, the color defined in :ref:`modulate` will be ignored. For a :ref:`BaseMaterial3D`, :ref:`BaseMaterial3D.vertex_color_use_as_albedo` must be ``true``. For a :ref:`ShaderMaterial`, ``ALBEDO *= COLOR.rgb;[/color] must be inserted in the shader's [code]fragment()`` function. +\ **Note:** If a :ref:`GeometryInstance3D.material_override` is defined on the ``SpriteBase3D``, the material override must be configured to take vertex colors into account for albedo. Otherwise, the color defined in :ref:`modulate` will be ignored. For a :ref:`BaseMaterial3D`, :ref:`BaseMaterial3D.vertex_color_use_as_albedo` must be ``true``. For a :ref:`ShaderMaterial`, ``ALBEDO *= COLOR.rgb;`` must be inserted in the shader's ``fragment()`` function. ---- diff --git a/classes/class_streampeerbuffer.rst b/classes/class_streampeerbuffer.rst index 139d1bdc6..75abc0b81 100644 --- a/classes/class_streampeerbuffer.rst +++ b/classes/class_streampeerbuffer.rst @@ -11,7 +11,14 @@ StreamPeerBuffer **Inherits:** :ref:`StreamPeer` **<** :ref:`RefCounted` **<** :ref:`Object` +Data buffer stream peer. +Description +----------- + +Data buffer stream peer that uses a byte array as the stream. This object can be used to handle binary data from network sessions. To handle binary data stored in files, :ref:`File` can be used directly. + +A ``StreamPeerBuffer`` object keeps an internal cursor which is the offset in bytes to the start of the buffer. Get and put operations are performed at the cursor position and will move the cursor accordingly. Properties ---------- @@ -52,6 +59,8 @@ Property Descriptions | *Getter* | get_data_array() | +-----------+-----------------------+ +The underlying data buffer. Setting this value resets the cursor. + Method Descriptions ------------------- @@ -59,36 +68,48 @@ Method Descriptions - void **clear** **(** **)** +Clears the :ref:`data_array` and resets the cursor. + ---- .. _class_StreamPeerBuffer_method_duplicate: - :ref:`StreamPeerBuffer` **duplicate** **(** **)** |const| +Returns a new ``StreamPeerBuffer`` with the same :ref:`data_array` content. + ---- .. _class_StreamPeerBuffer_method_get_position: - :ref:`int` **get_position** **(** **)** |const| +Returns the current cursor position. + ---- .. _class_StreamPeerBuffer_method_get_size: - :ref:`int` **get_size** **(** **)** |const| +Returns the size of :ref:`data_array`. + ---- .. _class_StreamPeerBuffer_method_resize: - void **resize** **(** :ref:`int` size **)** +Resizes the :ref:`data_array`. This *doesn't* update the cursor. + ---- .. _class_StreamPeerBuffer_method_seek: - void **seek** **(** :ref:`int` position **)** +Moves the cursor to the specified position. ``position`` must be a valid index of :ref:`data_array`. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_string.rst b/classes/class_string.rst index 5ff343ea8..c074ef0dc 100644 --- a/classes/class_string.rst +++ b/classes/class_string.rst @@ -54,6 +54,8 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`chr` **(** :ref:`int` char **)** |static| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`contains` **(** :ref:`String` what **)** |const| | ++-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`count` **(** :ref:`String` what, :ref:`int` from=0, :ref:`int` to=0 **)** |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`countn` **(** :ref:`String` what, :ref:`int` from=0, :ref:`int` to=0 **)** |const| | @@ -78,6 +80,10 @@ Methods +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_slice` **(** :ref:`String` delimiter, :ref:`int` slice **)** |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_slice_count` **(** :ref:`String` delimiter **)** |const| | ++-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_slicec` **(** :ref:`int` delimiter, :ref:`int` slice **)** |const| | ++-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hash` **(** **)** |const| | +-----------------------------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`hex_to_int` **(** **)** |const| | @@ -365,6 +371,14 @@ To get a boolean result from a string comparison, use the ``==`` operator instea ---- +.. _class_String_method_contains: + +- :ref:`bool` **contains** **(** :ref:`String` what **)** |const| + +Returns ``true`` if the string contains the given string. + +---- + .. _class_String_method_count: - :ref:`int` **count** **(** :ref:`String` what, :ref:`int` from=0, :ref:`int` to=0 **)** |const| @@ -496,11 +510,31 @@ Example: ---- +.. _class_String_method_get_slice_count: + +- :ref:`int` **get_slice_count** **(** :ref:`String` delimiter **)** |const| + +Splits a string using a ``delimiter`` and returns a number of slices. + +---- + +.. _class_String_method_get_slicec: + +- :ref:`String` **get_slicec** **(** :ref:`int` delimiter, :ref:`int` slice **)** |const| + +Splits a string using a Unicode character with code ``delimiter`` and returns a substring at index ``slice``. Returns an empty string if the index doesn't exist. + +This is a more performant alternative to :ref:`split` for cases when you need only one element from the array at a fixed index. + +---- + .. _class_String_method_hash: - :ref:`int` **hash** **(** **)** |const| -Hashes the string and returns a 32-bit integer. +Returns the 32-bit hash value representing the string's contents. + +\ **Note:** ``String``\ s with equal content will always produce identical hash values. However, the reverse is not true. Returning identical hash values does *not* imply the strings are equal, because different strings can have identical hash values due to hash collisions. ---- @@ -727,7 +761,7 @@ Returns a copy of the string with characters removed from the left. The ``chars` - :ref:`bool` **match** **(** :ref:`String` expr **)** |const| -Does a simple case-sensitive expression match, where ``"*"`` matches zero or more arbitrary characters and ``"?"`` matches any single character except a period (``"."``). +Does a simple case-sensitive expression match, where ``"*"`` matches zero or more arbitrary characters and ``"?"`` matches any single character except a period (``"."``). An empty string or empty expression always evaluates to ``false``. ---- @@ -735,7 +769,7 @@ Does a simple case-sensitive expression match, where ``"*"`` matches zero or mor - :ref:`bool` **matchn** **(** :ref:`String` expr **)** |const| -Does a simple case-insensitive expression match, where ``"*"`` matches zero or more arbitrary characters and ``"?"`` matches any single character except a period (``"."``). +Does a simple case-insensitive expression match, where ``"*"`` matches zero or more arbitrary characters and ``"?"`` matches any single character except a period (``"."``). An empty string or empty expression always evaluates to ``false``. ---- diff --git a/classes/class_stringname.rst b/classes/class_stringname.rst index 93ac0560b..7c863fff5 100644 --- a/classes/class_stringname.rst +++ b/classes/class_stringname.rst @@ -37,12 +37,20 @@ Operators +-------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`operator !=` **(** :ref:`StringName` right **)** | +-------------------------+--------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`operator <` **(** :ref:`StringName` right **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`operator <=` **(** :ref:`StringName` right **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`operator ==` **(** **)** | +-------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`operator ==` **(** :ref:`String` right **)** | +-------------------------+--------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`operator ==` **(** :ref:`StringName` right **)** | +-------------------------+--------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`operator >` **(** :ref:`StringName` right **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`operator >=` **(** :ref:`StringName` right **)** | ++-------------------------+--------------------------------------------------------------------------------------------------------------+ Constructor Descriptions ------------------------ @@ -82,6 +90,18 @@ Operator Descriptions ---- +.. _class_StringName_operator_lt_bool: + +- :ref:`bool` **operator <** **(** :ref:`StringName` right **)** + +---- + +.. _class_StringName_operator_lte_bool: + +- :ref:`bool` **operator <=** **(** :ref:`StringName` right **)** + +---- + .. _class_StringName_operator_eq_bool: - :ref:`bool` **operator ==** **(** **)** @@ -94,6 +114,18 @@ Operator Descriptions - :ref:`bool` **operator ==** **(** :ref:`StringName` right **)** +---- + +.. _class_StringName_operator_gt_bool: + +- :ref:`bool` **operator >** **(** :ref:`StringName` right **)** + +---- + +.. _class_StringName_operator_gte_bool: + +- :ref:`bool` **operator >=** **(** :ref:`StringName` right **)** + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_subviewportcontainer.rst b/classes/class_subviewportcontainer.rst index 20e91536a..ea84753fa 100644 --- a/classes/class_subviewportcontainer.rst +++ b/classes/class_subviewportcontainer.rst @@ -20,6 +20,8 @@ A :ref:`Container` node that holds a :ref:`SubViewport` will cause its contents to appear distorted. To change its visual size without causing distortion, adjust the node's margins instead (if it's not already in a container). +\ **Note:** The SubViewportContainer forwards mouse-enter and mouse-exit notifications to its sub-viewports. + Properties ---------- diff --git a/classes/class_textline.rst b/classes/class_textline.rst index aa29276e3..565bf521e 100644 --- a/classes/class_textline.rst +++ b/classes/class_textline.rst @@ -42,43 +42,43 @@ Properties Methods ------- -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`add_object` **(** :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`add_string` **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clear` **(** **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`draw` **(** :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`draw_outline` **(** :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`int` outline_size=1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_line_ascent` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_line_descent` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_line_underline_position` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_line_underline_thickness` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_line_width` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`get_object_rect` **(** :ref:`Variant` key **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`get_objects` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`get_rid` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`get_size` **(** **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`hit_test` **(** :ref:`float` coords **)** |const| | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`resize_object` **(** :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5 **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_bidi_override` **(** :ref:`Array` override **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`tab_align` **(** :ref:`PackedFloat32Array` tab_stops **)** | -+-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`add_object` **(** :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`add_string` **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clear` **(** **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`draw` **(** :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`draw_outline` **(** :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`int` outline_size=1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_ascent` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_descent` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_underline_position` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_underline_thickness` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_line_width` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`get_object_rect` **(** :ref:`Variant` key **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`get_objects` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`get_rid` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`get_size` **(** **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`hit_test` **(** :ref:`float` coords **)** |const| | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`resize_object` **(** :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5 **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_bidi_override` **(** :ref:`Array` override **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`tab_align` **(** :ref:`PackedFloat32Array` tab_stops **)** | ++-------------------------------+---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ @@ -247,7 +247,7 @@ Adds inline object to the text buffer, ``key`` must be unique. In the text, obje .. _class_TextLine_method_add_string: -- :ref:`bool` **add_string** **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** +- :ref:`bool` **add_string** **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** Adds text span and font to draw it. diff --git a/classes/class_textparagraph.rst b/classes/class_textparagraph.rst index babe19c06..ea6b7a18d 100644 --- a/classes/class_textparagraph.rst +++ b/classes/class_textparagraph.rst @@ -49,7 +49,7 @@ Methods +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`add_object` **(** :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** | +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`add_string` **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** | +| :ref:`bool` | :ref:`add_string` **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** | +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear` **(** **)** | +---------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -317,7 +317,7 @@ Adds inline object to the text buffer, ``key`` must be unique. In the text, obje .. _class_TextParagraph_method_add_string: -- :ref:`bool` **add_string** **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** +- :ref:`bool` **add_string** **(** :ref:`String` text, :ref:`Font` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** Adds text span and font to draw it. diff --git a/classes/class_textserver.rst b/classes/class_textserver.rst index 50737209d..4ce36bdf7 100644 --- a/classes/class_textserver.rst +++ b/classes/class_textserver.rst @@ -23,333 +23,343 @@ Description Methods ------- -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`create_font` **(** **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`create_shaped_text` **(** :ref:`Direction` direction=0, :ref:`Orientation` orientation=0 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`draw_hex_code_box` **(** :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_clear_glyphs` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_clear_kerning_map` **(** :ref:`RID` font_rid, :ref:`int` size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_clear_size_cache` **(** :ref:`RID` font_rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_clear_textures` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_draw_glyph` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_draw_glyph_outline` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`int` outline_size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_ascent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_descent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_fixed_size` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_global_oversampling` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`font_get_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`font_get_glyph_contours` **(** :ref:`RID` font, :ref:`int` size, :ref:`int` index **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_glyph_index` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` char, :ref:`int` variation_selector **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`font_get_glyph_list` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`font_get_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`font_get_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`font_get_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Hinting` | :ref:`font_get_hinting` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`font_get_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`font_get_kerning_list` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_get_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedStringArray` | :ref:`font_get_language_support_overrides` **(** :ref:`RID` font_rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_msdf_pixel_range` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_msdf_size` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`font_get_name` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`font_get_opentype_feature_overrides` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_oversampling` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_scale` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_get_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedStringArray` | :ref:`font_get_script_support_overrides` **(** :ref:`RID` font_rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`font_get_size_cache_list` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_style` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`font_get_style_name` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`font_get_supported_chars` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`font_get_texture_count` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Image` | :ref:`font_get_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`font_get_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`font_get_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`font_get_variation_coordinates` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_has_char` **(** :ref:`RID` font_rid, :ref:`int` char **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_is_antialiased` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_is_force_autohinter` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_is_language_supported` **(** :ref:`RID` font_rid, :ref:`String` language **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_is_multichannel_signed_distance_field` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`font_is_script_supported` **(** :ref:`RID` font_rid, :ref:`String` script **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_size_cache` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_remove_texture` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_render_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` index **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_render_range` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` start, :ref:`int` end **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_antialiased` **(** :ref:`RID` font_rid, :ref:`bool` antialiased **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_ascent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` ascent **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_data` **(** :ref:`RID` font_rid, :ref:`PackedByteArray` data **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_descent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` descent **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_fixed_size` **(** :ref:`RID` font_rid, :ref:`int` fixed_size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_force_autohinter` **(** :ref:`RID` font_rid, :ref:`bool` force_autohinter **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_global_oversampling` **(** :ref:`float` oversampling **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph, :ref:`Vector2` advance **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` offset **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` gl_size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`int` texture_idx **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Rect2` uv_rect **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_hinting` **(** :ref:`RID` font_rid, :ref:`Hinting` _hinting **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair, :ref:`Vector2` kerning **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language, :ref:`bool` supported **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_msdf_pixel_range` **(** :ref:`RID` font_rid, :ref:`int` msdf_pixel_range **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_msdf_size` **(** :ref:`RID` font_rid, :ref:`int` msdf_size **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_multichannel_signed_distance_field` **(** :ref:`RID` font_rid, :ref:`bool` msdf **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_opentype_feature_overrides` **(** :ref:`RID` font_rid, :ref:`Dictionary` overrides **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_oversampling` **(** :ref:`RID` font_rid, :ref:`float` oversampling **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_scale` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` scale **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script, :ref:`bool` supported **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing, :ref:`int` value **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_style` **(** :ref:`RID` font_rid, :ref:`int` style **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_style_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`Image` image **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`PackedInt32Array` offset **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_position **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_thickness **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`font_set_variation_coordinates` **(** :ref:`RID` font_rid, :ref:`Dictionary` variation_coordinates **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`font_supported_feature_list` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`font_supported_variation_list` **(** :ref:`RID` font_rid **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`format_number` **(** :ref:`String` number, :ref:`String` language="" **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`free_rid` **(** :ref:`RID` rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_features` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`get_hex_code_box_size` **(** :ref:`int` size, :ref:`int` index **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_name` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_support_data_filename` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_support_data_info` **(** **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`has` **(** :ref:`RID` rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`has_feature` **(** :ref:`Feature` feature **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_locale_right_to_left` **(** :ref:`String` locale **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`load_support_data` **(** :ref:`String` filename **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`name_to_tag` **(** :ref:`String` name **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`parse_number` **(** :ref:`String` number, :ref:`String` language="" **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`percent_sign` **(** :ref:`String` language="" **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`save_support_data` **(** :ref:`String` filename **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_add_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_add_string` **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_clear` **(** :ref:`RID` rid **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_draw` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l=-1, :ref:`float` clip_r=-1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_draw_outline` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l=-1, :ref:`float` clip_r=-1, :ref:`int` outline_size=1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_fit_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` jst_flags=3 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_get_ascent` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`shaped_text_get_carets` **(** :ref:`RID` shaped, :ref:`int` position **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`shaped_text_get_custom_punctuation` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_get_descent` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Direction` | :ref:`shaped_text_get_direction` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Direction` | :ref:`shaped_text_get_dominant_direction_in_range` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_get_ellipsis_glyph_count` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`shaped_text_get_ellipsis_glyphs` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_get_ellipsis_pos` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_get_glyph_count` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`shaped_text_get_glyphs` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`shaped_text_get_grapheme_bounds` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Direction` | :ref:`shaped_text_get_inferred_direction` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` start=0, :ref:`int` break_flags=96 **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks_adv` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` width, :ref:`int` start=0, :ref:`bool` once=true, :ref:`int` break_flags=96 **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`shaped_text_get_object_rect` **(** :ref:`RID` shaped, :ref:`Variant` key **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`shaped_text_get_objects` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Orientation` | :ref:`shaped_text_get_orientation` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`shaped_text_get_parent` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_get_preserve_control` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_get_preserve_invalid` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`shaped_text_get_range` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedVector2Array` | :ref:`shaped_text_get_selection` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`shaped_text_get_size` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_get_trim_pos` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_get_underline_position` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_get_underline_thickness` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_get_width` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`shaped_text_get_word_breaks` **(** :ref:`RID` shaped, :ref:`int` grapheme_flags **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_hit_test_grapheme` **(** :ref:`RID` shaped, :ref:`float` coords **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_hit_test_position` **(** :ref:`RID` shaped, :ref:`float` coords **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_is_ready` **(** :ref:`RID` shaped **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_next_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_overrun_trim_to_width` **(** :ref:`RID` shaped, :ref:`float` width=0, :ref:`int` overrun_trim_flags=0 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`shaped_text_prev_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_resize_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_bidi_override` **(** :ref:`RID` shaped, :ref:`Array` override **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_custom_punctuation` **(** :ref:`RID` shaped, :ref:`String` punct **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_direction` **(** :ref:`RID` shaped, :ref:`Direction` direction=0 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_orientation` **(** :ref:`RID` shaped, :ref:`Orientation` orientation=0 **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_preserve_control` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`shaped_text_set_preserve_invalid` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`shaped_text_shape` **(** :ref:`RID` shaped **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`shaped_text_sort_logical` **(** :ref:`RID` shaped **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`shaped_text_substr` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` length **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`shaped_text_tab_align` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` tab_stops **)** | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`string_to_lower` **(** :ref:`String` string, :ref:`String` language="" **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`string_to_upper` **(** :ref:`String` string, :ref:`String` language="" **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`strip_diacritics` **(** :ref:`String` string **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`tag_to_name` **(** :ref:`int` tag **)** |const| | -+-----------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`create_font` **(** **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`create_shaped_text` **(** :ref:`Direction` direction=0, :ref:`Orientation` orientation=0 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`draw_hex_code_box` **(** :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_clear_glyphs` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_clear_kerning_map` **(** :ref:`RID` font_rid, :ref:`int` size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_clear_size_cache` **(** :ref:`RID` font_rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_clear_textures` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_draw_glyph` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_draw_glyph_outline` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`int` outline_size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_ascent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_descent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_fixed_size` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_global_oversampling` **(** **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`font_get_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`font_get_glyph_contours` **(** :ref:`RID` font, :ref:`int` size, :ref:`int` index **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_glyph_index` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` char, :ref:`int` variation_selector **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`font_get_glyph_list` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`font_get_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`font_get_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`font_get_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Hinting` | :ref:`font_get_hinting` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`font_get_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`font_get_kerning_list` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_get_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedStringArray` | :ref:`font_get_language_support_overrides` **(** :ref:`RID` font_rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_msdf_pixel_range` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_msdf_size` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`font_get_name` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`font_get_opentype_feature_overrides` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_oversampling` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_scale` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_get_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedStringArray` | :ref:`font_get_script_support_overrides` **(** :ref:`RID` font_rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`font_get_size_cache_list` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_style` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`font_get_style_name` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`SubpixelPositioning` | :ref:`font_get_subpixel_positioning` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`font_get_supported_chars` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`font_get_texture_count` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Image` | :ref:`font_get_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`font_get_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`font_get_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`font_get_variation_coordinates` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_has_char` **(** :ref:`RID` font_rid, :ref:`int` char **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_is_antialiased` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_is_force_autohinter` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_is_language_supported` **(** :ref:`RID` font_rid, :ref:`String` language **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_is_multichannel_signed_distance_field` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`font_is_script_supported` **(** :ref:`RID` font_rid, :ref:`String` script **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_size_cache` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_remove_texture` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_render_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` index **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_render_range` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` start, :ref:`int` end **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_antialiased` **(** :ref:`RID` font_rid, :ref:`bool` antialiased **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_ascent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` ascent **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_data` **(** :ref:`RID` font_rid, :ref:`PackedByteArray` data **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_descent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` descent **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_fixed_size` **(** :ref:`RID` font_rid, :ref:`int` fixed_size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_force_autohinter` **(** :ref:`RID` font_rid, :ref:`bool` force_autohinter **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_global_oversampling` **(** :ref:`float` oversampling **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph, :ref:`Vector2` advance **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` offset **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` gl_size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`int` texture_idx **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Rect2` uv_rect **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_hinting` **(** :ref:`RID` font_rid, :ref:`Hinting` hinting **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair, :ref:`Vector2` kerning **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language, :ref:`bool` supported **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_msdf_pixel_range` **(** :ref:`RID` font_rid, :ref:`int` msdf_pixel_range **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_msdf_size` **(** :ref:`RID` font_rid, :ref:`int` msdf_size **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_multichannel_signed_distance_field` **(** :ref:`RID` font_rid, :ref:`bool` msdf **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_opentype_feature_overrides` **(** :ref:`RID` font_rid, :ref:`Dictionary` overrides **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_oversampling` **(** :ref:`RID` font_rid, :ref:`float` oversampling **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_scale` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` scale **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script, :ref:`bool` supported **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing, :ref:`int` value **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_style` **(** :ref:`RID` font_rid, :ref:`int` style **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_style_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_subpixel_positioning` **(** :ref:`RID` font_rid, :ref:`SubpixelPositioning` subpixel_positioning **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`Image` image **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`PackedInt32Array` offset **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_position **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_thickness **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`font_set_variation_coordinates` **(** :ref:`RID` font_rid, :ref:`Dictionary` variation_coordinates **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`font_supported_feature_list` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`font_supported_variation_list` **(** :ref:`RID` font_rid **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`format_number` **(** :ref:`String` number, :ref:`String` language="" **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`free_rid` **(** :ref:`RID` rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_features` **(** **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`get_hex_code_box_size` **(** :ref:`int` size, :ref:`int` index **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_name` **(** **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_support_data_filename` **(** **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_support_data_info` **(** **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`has` **(** :ref:`RID` rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`has_feature` **(** :ref:`Feature` feature **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_locale_right_to_left` **(** :ref:`String` locale **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`load_support_data` **(** :ref:`String` filename **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`name_to_tag` **(** :ref:`String` name **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`parse_number` **(** :ref:`String` number, :ref:`String` language="" **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`percent_sign` **(** :ref:`String` language="" **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`save_support_data` **(** :ref:`String` filename **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_get_span_count` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`shaped_get_span_meta` **(** :ref:`RID` shaped, :ref:`int` index **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_set_span_update_font` **(** :ref:`RID` shaped, :ref:`int` index, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={} **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_add_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_add_string` **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_clear` **(** :ref:`RID` rid **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_draw` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l=-1, :ref:`float` clip_r=-1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_draw_outline` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l=-1, :ref:`float` clip_r=-1, :ref:`int` outline_size=1, :ref:`Color` color=Color(1, 1, 1, 1) **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_fit_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` jst_flags=3 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_get_ascent` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`shaped_text_get_carets` **(** :ref:`RID` shaped, :ref:`int` position **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`shaped_text_get_custom_punctuation` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_get_descent` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Direction` | :ref:`shaped_text_get_direction` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Direction` | :ref:`shaped_text_get_dominant_direction_in_range` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_get_ellipsis_glyph_count` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`shaped_text_get_ellipsis_glyphs` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_get_ellipsis_pos` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_get_glyph_count` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`shaped_text_get_glyphs` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`shaped_text_get_grapheme_bounds` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Direction` | :ref:`shaped_text_get_inferred_direction` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` start=0, :ref:`int` break_flags=96 **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`shaped_text_get_line_breaks_adv` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` width, :ref:`int` start=0, :ref:`bool` once=true, :ref:`int` break_flags=96 **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`shaped_text_get_object_rect` **(** :ref:`RID` shaped, :ref:`Variant` key **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`shaped_text_get_objects` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Orientation` | :ref:`shaped_text_get_orientation` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`shaped_text_get_parent` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_get_preserve_control` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_get_preserve_invalid` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`shaped_text_get_range` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedVector2Array` | :ref:`shaped_text_get_selection` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`shaped_text_get_size` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_get_trim_pos` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_get_underline_position` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_get_underline_thickness` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_get_width` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`shaped_text_get_word_breaks` **(** :ref:`RID` shaped, :ref:`int` grapheme_flags **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_hit_test_grapheme` **(** :ref:`RID` shaped, :ref:`float` coords **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_hit_test_position` **(** :ref:`RID` shaped, :ref:`float` coords **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_is_ready` **(** :ref:`RID` shaped **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_next_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_overrun_trim_to_width` **(** :ref:`RID` shaped, :ref:`float` width=0, :ref:`int` overrun_trim_flags=0 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`shaped_text_prev_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_resize_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_bidi_override` **(** :ref:`RID` shaped, :ref:`Array` override **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_custom_punctuation` **(** :ref:`RID` shaped, :ref:`String` punct **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_direction` **(** :ref:`RID` shaped, :ref:`Direction` direction=0 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_orientation` **(** :ref:`RID` shaped, :ref:`Orientation` orientation=0 **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_preserve_control` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`shaped_text_set_preserve_invalid` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`shaped_text_shape` **(** :ref:`RID` shaped **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`shaped_text_sort_logical` **(** :ref:`RID` shaped **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`shaped_text_substr` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` length **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`shaped_text_tab_align` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` tab_stops **)** | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`string_to_lower` **(** :ref:`String` string, :ref:`String` language="" **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`string_to_upper` **(** :ref:`String` string, :ref:`String` language="" **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`strip_diacritics` **(** :ref:`String` string **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`tag_to_name` **(** :ref:`int` tag **)** |const| | ++-----------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ @@ -542,6 +552,34 @@ enum **Hinting**: ---- +.. _enum_TextServer_SubpixelPositioning: + +.. _class_TextServer_constant_SUBPIXEL_POSITIONING_DISABLED: + +.. _class_TextServer_constant_SUBPIXEL_POSITIONING_AUTO: + +.. _class_TextServer_constant_SUBPIXEL_POSITIONING_ONE_HALF: + +.. _class_TextServer_constant_SUBPIXEL_POSITIONING_ONE_QUARTER: + +enum **SubpixelPositioning**: + +- **SUBPIXEL_POSITIONING_DISABLED** = **0** --- Glyph horizontal position is rounded to the whole pixel size, each glyph is rasterized once. + +- **SUBPIXEL_POSITIONING_AUTO** = **1** --- Glyph horizontal position is rounded based on font size. + +- To one quarter of the pixel size if font size is smaller or equal to ``16``. + +- To one half of the pixel size if font size is smaller or equal to ``20``. + +- To the whole pixel size for larger fonts. + +- **SUBPIXEL_POSITIONING_ONE_HALF** = **2** --- Glyph horizontal position is rounded to one half of the pixel size, each glyph is rasterized up to two times. + +- **SUBPIXEL_POSITIONING_ONE_QUARTER** = **3** --- Glyph horizontal position is rounded to one quarter of the pixel size, each glyph is rasterized up to four times. + +---- + .. _enum_TextServer_Feature: .. _class_TextServer_constant_FEATURE_BIDI_LAYOUT: @@ -967,6 +1005,14 @@ Returns font style name. ---- +.. _class_TextServer_method_font_get_subpixel_positioning: + +- :ref:`SubpixelPositioning` **font_get_subpixel_positioning** **(** :ref:`RID` font_rid **)** |const| + +Returns font sub-pixel glyph positioning mode. + +---- + .. _class_TextServer_method_font_get_supported_chars: - :ref:`String` **font_get_supported_chars** **(** :ref:`RID` font_rid **)** |const| @@ -1241,7 +1287,7 @@ Sets rectangle in the cache texture containing the glyph. .. _class_TextServer_method_font_set_hinting: -- void **font_set_hinting** **(** :ref:`RID` font_rid, :ref:`Hinting` _hinting **)** +- void **font_set_hinting** **(** :ref:`RID` font_rid, :ref:`Hinting` hinting **)** Sets font hinting mode. Used by dynamic fonts only. @@ -1349,7 +1395,15 @@ Sets the font style flags, see :ref:`FontStyle`. - void **font_set_style_name** **(** :ref:`RID` font_rid, :ref:`String` name **)** -Set the font style name. +Sets the font style name. + +---- + +.. _class_TextServer_method_font_set_subpixel_positioning: + +- void **font_set_subpixel_positioning** **(** :ref:`RID` font_rid, :ref:`SubpixelPositioning` subpixel_positioning **)** + +Sets font sub-pixel glyph positioning mode. ---- @@ -1533,6 +1587,30 @@ Saves optional TextServer database (e.g. ICU break iterators and dictionaries) t ---- +.. _class_TextServer_method_shaped_get_span_count: + +- :ref:`int` **shaped_get_span_count** **(** :ref:`RID` shaped **)** |const| + +Returns number of text spans added using :ref:`shaped_text_add_string` or :ref:`shaped_text_add_object`. + +---- + +.. _class_TextServer_method_shaped_get_span_meta: + +- :ref:`Variant` **shaped_get_span_meta** **(** :ref:`RID` shaped, :ref:`int` index **)** |const| + +Returns text span metadata. + +---- + +.. _class_TextServer_method_shaped_set_span_update_font: + +- void **shaped_set_span_update_font** **(** :ref:`RID` shaped, :ref:`int` index, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={} **)** + +Changes text span font, font size and OpenType features, without changing the text. + +---- + .. _class_TextServer_method_shaped_text_add_object: - :ref:`bool` **shaped_text_add_object** **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align=5, :ref:`int` length=1 **)** @@ -1543,7 +1621,7 @@ Adds inline object to the text buffer, ``key`` must be unique. In the text, obje .. _class_TextServer_method_shaped_text_add_string: -- :ref:`bool` **shaped_text_add_string** **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="" **)** +- :ref:`bool` **shaped_text_add_string** **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features={}, :ref:`String` language="", :ref:`Variant` meta=null **)** Adds text span and font to draw it to the text buffer. diff --git a/classes/class_textserverextension.rst b/classes/class_textserverextension.rst index 338e1360d..7ac45377f 100644 --- a/classes/class_textserverextension.rst +++ b/classes/class_textserverextension.rst @@ -21,337 +21,347 @@ External TextServer implementations should inherit from this class. Methods ------- -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`_create_font` **(** **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`_create_shaped_text` **(** :ref:`Direction` direction, :ref:`Orientation` orientation **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_draw_hex_code_box` **(** :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_clear_glyphs` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_clear_kerning_map` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_clear_size_cache` **(** :ref:`RID` font_rid **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_clear_textures` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_draw_glyph` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_draw_glyph_outline` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`int` outline_size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_ascent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_descent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_fixed_size` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_global_oversampling` **(** **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_font_get_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_font_get_glyph_contours` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` index **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_glyph_index` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` char, :ref:`int` variation_selector **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`_font_get_glyph_list` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_font_get_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_font_get_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`_font_get_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_hinting` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_font_get_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`_font_get_kerning_list` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_get_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedStringArray` | :ref:`_font_get_language_support_overrides` **(** :ref:`RID` font_rid **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_msdf_pixel_range` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_msdf_size` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_font_get_name` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_font_get_opentype_feature_overrides` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_oversampling` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_scale` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_get_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedStringArray` | :ref:`_font_get_script_support_overrides` **(** :ref:`RID` font_rid **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`_font_get_size_cache_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_style` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_font_get_style_name` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_font_get_supported_chars` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_font_get_texture_count` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Image` | :ref:`_font_get_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`_font_get_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_font_get_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_font_get_variation_coordinates` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_has_char` **(** :ref:`RID` font_rid, :ref:`int` char **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_is_antialiased` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_is_force_autohinter` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_is_language_supported` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_is_multichannel_signed_distance_field` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_font_is_script_supported` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_size_cache` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_remove_texture` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_render_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` index **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_render_range` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` start, :ref:`int` end **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_antialiased` **(** :ref:`RID` font_rid, :ref:`bool` antialiased **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_ascent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` ascent **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_data` **(** :ref:`RID` font_rid, :ref:`PackedByteArray` data **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_data_ptr` **(** :ref:`RID` font_rid, const uint8_t* data_ptr, :ref:`int` data_size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_descent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` descent **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_fixed_size` **(** :ref:`RID` font_rid, :ref:`int` fixed_size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_force_autohinter` **(** :ref:`RID` font_rid, :ref:`bool` force_autohinter **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_global_oversampling` **(** :ref:`float` oversampling **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph, :ref:`Vector2` advance **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` offset **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` gl_size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`int` texture_idx **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Rect2` uv_rect **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_hinting` **(** :ref:`RID` font_rid, :ref:`Hinting` hinting **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair, :ref:`Vector2` kerning **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language, :ref:`bool` supported **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_msdf_pixel_range` **(** :ref:`RID` font_rid, :ref:`int` msdf_pixel_range **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_msdf_size` **(** :ref:`RID` font_rid, :ref:`int` msdf_size **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_multichannel_signed_distance_field` **(** :ref:`RID` font_rid, :ref:`bool` msdf **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_opentype_feature_overrides` **(** :ref:`RID` font_rid, :ref:`Dictionary` overrides **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_oversampling` **(** :ref:`RID` font_rid, :ref:`float` oversampling **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_scale` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` scale **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script, :ref:`bool` supported **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing, :ref:`int` value **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_style` **(** :ref:`RID` font_rid, :ref:`int` style **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_style_name` **(** :ref:`RID` font_rid, :ref:`String` name_style **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`Image` image **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`PackedInt32Array` offset **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_position **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_thickness **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_font_set_variation_coordinates` **(** :ref:`RID` font_rid, :ref:`Dictionary` variation_coordinates **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_font_supported_feature_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`_font_supported_variation_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_format_number` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_free` **(** :ref:`RID` rid **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_get_features` **(** **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_get_hex_code_box_size` **(** :ref:`int` size, :ref:`int` index **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_get_name` **(** **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_get_support_data_filename` **(** **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_get_support_data_info` **(** **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_has` **(** :ref:`RID` rid **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_has_feature` **(** :ref:`Feature` feature **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_is_locale_right_to_left` **(** :ref:`String` locale **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_load_support_data` **(** :ref:`String` filename **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_name_to_tag` **(** :ref:`String` name **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_parse_number` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_percent_sign` **(** :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_save_support_data` **(** :ref:`String` filename **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_add_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align, :ref:`int` length **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_add_string` **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features, :ref:`String` language **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_clear` **(** :ref:`RID` shaped **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_draw` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l, :ref:`float` clip_r, :ref:`Color` color **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_draw_outline` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l, :ref:`float` clip_r, :ref:`int` outline_size, :ref:`Color` color **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_fit_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` jst_flags **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_get_ascent` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_get_carets` **(** :ref:`RID` shaped, :ref:`int` position, CaretInfo* caret **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_shaped_text_get_custom_punctuation` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_get_descent` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_direction` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_dominant_direction_in_range` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_ellipsis_glyph_count` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_get_ellipsis_glyphs` **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_ellipsis_pos` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_glyph_count` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_get_glyphs` **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_shaped_text_get_grapheme_bounds` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_inferred_direction` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` start, :ref:`int` break_flags **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks_adv` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` width, :ref:`int` start, :ref:`bool` once, :ref:`int` break_flags **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`_shaped_text_get_object_rect` **(** :ref:`RID` shaped, :ref:`Variant` key **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`_shaped_text_get_objects` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_orientation` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`_shaped_text_get_parent` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_get_preserve_control` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_get_preserve_invalid` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`_shaped_text_get_range` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedVector2Array` | :ref:`_shaped_text_get_selection` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2` | :ref:`_shaped_text_get_size` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_get_trim_pos` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_get_underline_position` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_get_underline_thickness` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_get_width` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_word_breaks` **(** :ref:`RID` shaped, :ref:`int` grapheme_flags **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_hit_test_grapheme` **(** :ref:`RID` shaped, :ref:`float` coord **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_hit_test_position` **(** :ref:`RID` shaped, :ref:`float` coord **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_is_ready` **(** :ref:`RID` shaped **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_next_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_overrun_trim_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` trim_flags **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`_shaped_text_prev_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_resize_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_bidi_override` **(** :ref:`RID` shaped, :ref:`Array` override **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_custom_punctuation` **(** :ref:`RID` shaped, :ref:`String` punct **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_direction` **(** :ref:`RID` shaped, :ref:`Direction` direction **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_orientation` **(** :ref:`RID` shaped, :ref:`Orientation` orientation **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_preserve_control` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_set_preserve_invalid` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_shape` **(** :ref:`RID` shaped **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`_shaped_text_sort_logical` **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`RID` | :ref:`_shaped_text_substr` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` length **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`_shaped_text_tab_align` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` tab_stops **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_update_breaks` **(** :ref:`RID` shaped **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`_shaped_text_update_justification_ops` **(** :ref:`RID` shaped **)** |virtual| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_string_to_lower` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_string_to_upper` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`_tag_to_name` **(** :ref:`int` tag **)** |virtual| |const| | -+-----------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`_create_font` **(** **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`_create_shaped_text` **(** :ref:`Direction` direction, :ref:`Orientation` orientation **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_draw_hex_code_box` **(** :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_clear_glyphs` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_clear_kerning_map` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_clear_size_cache` **(** :ref:`RID` font_rid **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_clear_textures` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_draw_glyph` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_draw_glyph_outline` **(** :ref:`RID` font_rid, :ref:`RID` canvas, :ref:`int` size, :ref:`int` outline_size, :ref:`Vector2` pos, :ref:`int` index, :ref:`Color` color **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_ascent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_descent` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_fixed_size` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_global_oversampling` **(** **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_font_get_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_font_get_glyph_contours` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` index **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_glyph_index` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` char, :ref:`int` variation_selector **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`_font_get_glyph_list` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_font_get_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_font_get_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`_font_get_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Hinting` | :ref:`_font_get_hinting` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_font_get_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`_font_get_kerning_list` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_get_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedStringArray` | :ref:`_font_get_language_support_overrides` **(** :ref:`RID` font_rid **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_msdf_pixel_range` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_msdf_size` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_font_get_name` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_font_get_opentype_feature_overrides` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_oversampling` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_scale` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_get_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedStringArray` | :ref:`_font_get_script_support_overrides` **(** :ref:`RID` font_rid **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`_font_get_size_cache_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_style` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_font_get_style_name` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`SubpixelPositioning` | :ref:`_font_get_subpixel_positioning` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_font_get_supported_chars` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_font_get_texture_count` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Image` | :ref:`_font_get_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_font_get_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_font_get_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_font_get_variation_coordinates` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_has_char` **(** :ref:`RID` font_rid, :ref:`int` char **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_is_antialiased` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_is_force_autohinter` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_is_language_supported` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_is_multichannel_signed_distance_field` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_font_is_script_supported` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_size_cache` **(** :ref:`RID` font_rid, :ref:`Vector2i` size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_remove_texture` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_render_glyph` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` index **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_render_range` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` start, :ref:`int` end **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_antialiased` **(** :ref:`RID` font_rid, :ref:`bool` antialiased **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_ascent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` ascent **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_data` **(** :ref:`RID` font_rid, :ref:`PackedByteArray` data **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_data_ptr` **(** :ref:`RID` font_rid, const uint8_t* data_ptr, :ref:`int` data_size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_descent` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` descent **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_fixed_size` **(** :ref:`RID` font_rid, :ref:`int` fixed_size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_force_autohinter` **(** :ref:`RID` font_rid, :ref:`bool` force_autohinter **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_global_oversampling` **(** :ref:`float` oversampling **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_glyph_advance` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`int` glyph, :ref:`Vector2` advance **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_glyph_offset` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` offset **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_glyph_size` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Vector2` gl_size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_glyph_texture_idx` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`int` texture_idx **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_glyph_uv_rect` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` glyph, :ref:`Rect2` uv_rect **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_hinting` **(** :ref:`RID` font_rid, :ref:`Hinting` hinting **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_kerning` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`Vector2i` glyph_pair, :ref:`Vector2` kerning **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_language_support_override` **(** :ref:`RID` font_rid, :ref:`String` language, :ref:`bool` supported **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_msdf_pixel_range` **(** :ref:`RID` font_rid, :ref:`int` msdf_pixel_range **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_msdf_size` **(** :ref:`RID` font_rid, :ref:`int` msdf_size **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_multichannel_signed_distance_field` **(** :ref:`RID` font_rid, :ref:`bool` msdf **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_name` **(** :ref:`RID` font_rid, :ref:`String` name **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_opentype_feature_overrides` **(** :ref:`RID` font_rid, :ref:`Dictionary` overrides **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_oversampling` **(** :ref:`RID` font_rid, :ref:`float` oversampling **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_scale` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` scale **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_script_support_override` **(** :ref:`RID` font_rid, :ref:`String` script, :ref:`bool` supported **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_spacing` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`SpacingType` spacing, :ref:`int` value **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_style` **(** :ref:`RID` font_rid, :ref:`int` style **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_style_name` **(** :ref:`RID` font_rid, :ref:`String` name_style **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_subpixel_positioning` **(** :ref:`RID` font_rid, :ref:`SubpixelPositioning` subpixel_positioning **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_texture_image` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`Image` image **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_texture_offsets` **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`PackedInt32Array` offset **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_underline_position` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_position **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_underline_thickness` **(** :ref:`RID` font_rid, :ref:`int` size, :ref:`float` underline_thickness **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_font_set_variation_coordinates` **(** :ref:`RID` font_rid, :ref:`Dictionary` variation_coordinates **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_font_supported_feature_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`_font_supported_variation_list` **(** :ref:`RID` font_rid **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_format_number` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_free` **(** :ref:`RID` rid **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_get_features` **(** **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_get_hex_code_box_size` **(** :ref:`int` size, :ref:`int` index **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_get_name` **(** **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_get_support_data_filename` **(** **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_get_support_data_info` **(** **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_has` **(** :ref:`RID` rid **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_has_feature` **(** :ref:`Feature` feature **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_is_locale_right_to_left` **(** :ref:`String` locale **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_load_support_data` **(** :ref:`String` filename **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_name_to_tag` **(** :ref:`String` name **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_parse_number` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_percent_sign` **(** :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_save_support_data` **(** :ref:`String` filename **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_get_span_count` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`_shaped_get_span_meta` **(** :ref:`RID` shaped, :ref:`int` index **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_set_span_update_font` **(** :ref:`RID` shaped, :ref:`int` index, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_add_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align, :ref:`int` length **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_add_string` **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features, :ref:`String` language, :ref:`Variant` meta **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_clear` **(** :ref:`RID` shaped **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_draw` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l, :ref:`float` clip_r, :ref:`Color` color **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_draw_outline` **(** :ref:`RID` shaped, :ref:`RID` canvas, :ref:`Vector2` pos, :ref:`float` clip_l, :ref:`float` clip_r, :ref:`int` outline_size, :ref:`Color` color **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_fit_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` jst_flags **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_get_ascent` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_get_carets` **(** :ref:`RID` shaped, :ref:`int` position, CaretInfo* caret **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_shaped_text_get_custom_punctuation` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_get_descent` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Direction` | :ref:`_shaped_text_get_direction` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_get_dominant_direction_in_range` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_get_ellipsis_glyph_count` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Glyph* | :ref:`_shaped_text_get_ellipsis_glyphs` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_get_ellipsis_pos` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_get_glyph_count` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Glyph* | :ref:`_shaped_text_get_glyphs` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_shaped_text_get_grapheme_bounds` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Direction` | :ref:`_shaped_text_get_inferred_direction` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` start, :ref:`int` break_flags **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_line_breaks_adv` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` width, :ref:`int` start, :ref:`bool` once, :ref:`int` break_flags **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`_shaped_text_get_object_rect` **(** :ref:`RID` shaped, :ref:`Variant` key **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`_shaped_text_get_objects` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Orientation` | :ref:`_shaped_text_get_orientation` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`_shaped_text_get_parent` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_get_preserve_control` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_get_preserve_invalid` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2i` | :ref:`_shaped_text_get_range` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedVector2Array` | :ref:`_shaped_text_get_selection` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` end **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Vector2` | :ref:`_shaped_text_get_size` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_get_trim_pos` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_get_underline_position` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_get_underline_thickness` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_get_width` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`PackedInt32Array` | :ref:`_shaped_text_get_word_breaks` **(** :ref:`RID` shaped, :ref:`int` grapheme_flags **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_hit_test_grapheme` **(** :ref:`RID` shaped, :ref:`float` coord **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_hit_test_position` **(** :ref:`RID` shaped, :ref:`float` coord **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_is_ready` **(** :ref:`RID` shaped **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_next_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_overrun_trim_to_width` **(** :ref:`RID` shaped, :ref:`float` width, :ref:`int` trim_flags **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`_shaped_text_prev_grapheme_pos` **(** :ref:`RID` shaped, :ref:`int` pos **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_resize_object` **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_bidi_override` **(** :ref:`RID` shaped, :ref:`Array` override **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_custom_punctuation` **(** :ref:`RID` shaped, :ref:`String` punct **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_direction` **(** :ref:`RID` shaped, :ref:`Direction` direction **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_orientation` **(** :ref:`RID` shaped, :ref:`Orientation` orientation **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_preserve_control` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`_shaped_text_set_preserve_invalid` **(** :ref:`RID` shaped, :ref:`bool` enabled **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_shape` **(** :ref:`RID` shaped **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| Glyph* | :ref:`_shaped_text_sort_logical` **(** :ref:`RID` shaped **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`RID` | :ref:`_shaped_text_substr` **(** :ref:`RID` shaped, :ref:`int` start, :ref:`int` length **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`_shaped_text_tab_align` **(** :ref:`RID` shaped, :ref:`PackedFloat32Array` tab_stops **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_update_breaks` **(** :ref:`RID` shaped **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`_shaped_text_update_justification_ops` **(** :ref:`RID` shaped **)** |virtual| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_string_to_lower` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_string_to_upper` **(** :ref:`String` string, :ref:`String` language **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`_tag_to_name` **(** :ref:`int` tag **)** |virtual| |const| | ++-----------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Method Descriptions ------------------- @@ -546,7 +556,7 @@ Returns rectangle in the cache texture containing the glyph. .. _class_TextServerExtension_method__font_get_hinting: -- :ref:`int` **_font_get_hinting** **(** :ref:`RID` font_rid **)** |virtual| |const| +- :ref:`Hinting` **_font_get_hinting** **(** :ref:`RID` font_rid **)** |virtual| |const| Returns the font hinting mode. Used by dynamic fonts only. @@ -680,6 +690,14 @@ Returns font style name. ---- +.. _class_TextServerExtension_method__font_get_subpixel_positioning: + +- :ref:`SubpixelPositioning` **_font_get_subpixel_positioning** **(** :ref:`RID` font_rid **)** |virtual| |const| + +Returns font sub-pixel glyph positioning mode. + +---- + .. _class_TextServerExtension_method__font_get_supported_chars: - :ref:`String` **_font_get_supported_chars** **(** :ref:`RID` font_rid **)** |virtual| |const| @@ -904,7 +922,7 @@ If set to ``true`` auto-hinting is preferred over font built-in hinting. - void **_font_set_force_autohinter** **(** :ref:`RID` font_rid, :ref:`bool` force_autohinter **)** |virtual| -If set to ``true`` auto-hinting is preffered over font built-in hinting. +If set to ``true`` auto-hinting is preferred over font built-in hinting. ---- @@ -1072,6 +1090,14 @@ Sets the font style name. ---- +.. _class_TextServerExtension_method__font_set_subpixel_positioning: + +- void **_font_set_subpixel_positioning** **(** :ref:`RID` font_rid, :ref:`SubpixelPositioning` subpixel_positioning **)** |virtual| + +Sets font sub-pixel glyph positioning mode. + +---- + .. _class_TextServerExtension_method__font_set_texture_image: - void **_font_set_texture_image** **(** :ref:`RID` font_rid, :ref:`Vector2i` size, :ref:`int` texture_index, :ref:`Image` image **)** |virtual| @@ -1252,6 +1278,30 @@ Saves optional TextServer database (e.g. ICU break iterators and dictionaries) t ---- +.. _class_TextServerExtension_method__shaped_get_span_count: + +- :ref:`int` **_shaped_get_span_count** **(** :ref:`RID` shaped **)** |virtual| |const| + +Returns number of text spans added using :ref:`_shaped_text_add_string` or :ref:`_shaped_text_add_object`. + +---- + +.. _class_TextServerExtension_method__shaped_get_span_meta: + +- :ref:`Variant` **_shaped_get_span_meta** **(** :ref:`RID` shaped, :ref:`int` index **)** |virtual| |const| + +Returns text span metadata. + +---- + +.. _class_TextServerExtension_method__shaped_set_span_update_font: + +- void **_shaped_set_span_update_font** **(** :ref:`RID` shaped, :ref:`int` index, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features **)** |virtual| + +Changes text span font, font size and OpenType features, without changing the text. + +---- + .. _class_TextServerExtension_method__shaped_text_add_object: - :ref:`bool` **_shaped_text_add_object** **(** :ref:`RID` shaped, :ref:`Variant` key, :ref:`Vector2` size, :ref:`InlineAlignment` inline_align, :ref:`int` length **)** |virtual| @@ -1262,7 +1312,7 @@ Adds inline object to the text buffer, ``key`` must be unique. In the text, obje .. _class_TextServerExtension_method__shaped_text_add_string: -- :ref:`bool` **_shaped_text_add_string** **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features, :ref:`String` language **)** |virtual| +- :ref:`bool` **_shaped_text_add_string** **(** :ref:`RID` shaped, :ref:`String` text, :ref:`Array` fonts, :ref:`int` size, :ref:`Dictionary` opentype_features, :ref:`String` language, :ref:`Variant` meta **)** |virtual| Adds text span and font to draw it to the text buffer. @@ -1338,7 +1388,7 @@ Returns the text descent (number of pixels below the baseline for horizontal lay .. _class_TextServerExtension_method__shaped_text_get_direction: -- :ref:`int` **_shaped_text_get_direction** **(** :ref:`RID` shaped **)** |virtual| |const| +- :ref:`Direction` **_shaped_text_get_direction** **(** :ref:`RID` shaped **)** |virtual| |const| Returns direction of the text. @@ -1362,7 +1412,7 @@ Returns number of glyphs in the ellipsis. .. _class_TextServerExtension_method__shaped_text_get_ellipsis_glyphs: -- void **_shaped_text_get_ellipsis_glyphs** **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| |const| +- Glyph* **_shaped_text_get_ellipsis_glyphs** **(** :ref:`RID` shaped **)** |virtual| |const| Returns array of the glyphs in the ellipsis. @@ -1386,7 +1436,7 @@ Returns text glyphs count. .. _class_TextServerExtension_method__shaped_text_get_glyphs: -- void **_shaped_text_get_glyphs** **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| |const| +- Glyph* **_shaped_text_get_glyphs** **(** :ref:`RID` shaped **)** |virtual| |const| Copies text glyphs in the visual order, into preallocated array of the size returned by :ref:`_shaped_text_get_glyph_count`. @@ -1402,7 +1452,7 @@ Returns composite character's bounds as offsets from the start of the line. .. _class_TextServerExtension_method__shaped_text_get_inferred_direction: -- :ref:`int` **_shaped_text_get_inferred_direction** **(** :ref:`RID` shaped **)** |virtual| |const| +- :ref:`Direction` **_shaped_text_get_inferred_direction** **(** :ref:`RID` shaped **)** |virtual| |const| Returns direction of the text, inferred by the BiDi algorithm. @@ -1442,7 +1492,7 @@ Returns array of inline objects. .. _class_TextServerExtension_method__shaped_text_get_orientation: -- :ref:`int` **_shaped_text_get_orientation** **(** :ref:`RID` shaped **)** |virtual| |const| +- :ref:`Orientation` **_shaped_text_get_orientation** **(** :ref:`RID` shaped **)** |virtual| |const| Returns text orientation. @@ -1660,7 +1710,7 @@ Shapes buffer if it's not shaped. Returns ``true`` if the string is shaped succe .. _class_TextServerExtension_method__shaped_text_sort_logical: -- void **_shaped_text_sort_logical** **(** :ref:`RID` shaped, void* r_glyphs **)** |virtual| +- Glyph* **_shaped_text_sort_logical** **(** :ref:`RID` shaped **)** |virtual| Copies text glyphs in the logical order, into preallocated array of the size returned by :ref:`_shaped_text_get_glyph_count`. diff --git a/classes/class_texturebutton.rst b/classes/class_texturebutton.rst index 846d6f39a..2d15258ff 100644 --- a/classes/class_texturebutton.rst +++ b/classes/class_texturebutton.rst @@ -30,27 +30,27 @@ Tutorials Properties ---------- -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`bool` | :ref:`expand` | ``false`` | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`bool` | :ref:`flip_h` | ``false`` | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`bool` | :ref:`flip_v` | ``false`` | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`StretchMode` | :ref:`stretch_mode` | ``0`` | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`BitMap` | :ref:`texture_click_mask` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`Texture2D` | :ref:`texture_disabled` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`Texture2D` | :ref:`texture_focused` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`Texture2D` | :ref:`texture_hover` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`Texture2D` | :ref:`texture_normal` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ -| :ref:`Texture2D` | :ref:`texture_pressed` | | -+----------------------------------------------------+----------------------------------------------------------------------------+-----------+ ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`bool` | :ref:`flip_h` | ``false`` | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`bool` | :ref:`flip_v` | ``false`` | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`bool` | :ref:`ignore_texture_size` | ``false`` | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`StretchMode` | :ref:`stretch_mode` | ``2`` | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`BitMap` | :ref:`texture_click_mask` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`Texture2D` | :ref:`texture_disabled` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`Texture2D` | :ref:`texture_focused` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`Texture2D` | :ref:`texture_hover` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`Texture2D` | :ref:`texture_normal` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ +| :ref:`Texture2D` | :ref:`texture_pressed` | | ++----------------------------------------------------+------------------------------------------------------------------------------+-----------+ Enumerations ------------ @@ -90,22 +90,6 @@ enum **StretchMode**: Property Descriptions --------------------- -.. _class_TextureButton_property_expand: - -- :ref:`bool` **expand** - -+-----------+-------------------+ -| *Default* | ``false`` | -+-----------+-------------------+ -| *Setter* | set_expand(value) | -+-----------+-------------------+ -| *Getter* | get_expand() | -+-----------+-------------------+ - -If ``true``, the texture stretches to the edges of the node's bounding rectangle using the :ref:`stretch_mode`. If ``false``, the texture will not scale with the node. - ----- - .. _class_TextureButton_property_flip_h: - :ref:`bool` **flip_h** @@ -138,19 +122,35 @@ If ``true``, texture is flipped vertically. ---- +.. _class_TextureButton_property_ignore_texture_size: + +- :ref:`bool` **ignore_texture_size** + ++-----------+--------------------------------+ +| *Default* | ``false`` | ++-----------+--------------------------------+ +| *Setter* | set_ignore_texture_size(value) | ++-----------+--------------------------------+ +| *Getter* | get_ignore_texture_size() | ++-----------+--------------------------------+ + +If ``true``, the size of the texture won't be considered for minimum size calculation, so the ``TextureButton`` can be shrunk down past the texture size. + +---- + .. _class_TextureButton_property_stretch_mode: - :ref:`StretchMode` **stretch_mode** +-----------+-------------------------+ -| *Default* | ``0`` | +| *Default* | ``2`` | +-----------+-------------------------+ | *Setter* | set_stretch_mode(value) | +-----------+-------------------------+ | *Getter* | get_stretch_mode() | +-----------+-------------------------+ -Controls the texture's behavior when you resize the node's bounding rectangle, **only if** :ref:`expand` is ``true``. Set it to one of the :ref:`StretchMode` constants. See the constants to learn more. +Controls the texture's behavior when you resize the node's bounding rectangle. See the :ref:`StretchMode` constants for available options. ---- diff --git a/classes/class_theme.rst b/classes/class_theme.rst index 694d742ff..c307ef99e 100644 --- a/classes/class_theme.rst +++ b/classes/class_theme.rst @@ -11,20 +11,24 @@ Theme **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -Theme for controls. +Theme resource for styling/skinning :ref:`Control`\ s and :ref:`Window`\ s. Description ----------- -A theme for skinning controls. Controls can be skinned individually, but for complex applications, it's more practical to just create a global theme that defines everything. This theme can be applied to any :ref:`Control`; the Control and its children will automatically use it. +A theme resource is used for styling/skinning :ref:`Control` and :ref:`Window` nodes. While individual controls can be styled using their local theme overrides (see :ref:`Control.add_theme_color_override`), theme resources allow you to store and apply the same settings between all controls sharing the same type (e.g. style all :ref:`Button`\ s the same). One theme resource can be used for the entire project, but you can also set a separate theme resource to a branch of control nodes. A theme resources assigned to a control node applies to the control itself, as well as all of its direct and indirect children (as long as a chain of controls is uninterrupted). -Theme resources can alternatively be loaded by writing them in a ``.theme`` file, see the documentation for more information. +Use :ref:`ProjectSettings.gui/theme/custom` to set up a project-scope theme that will be available to every control in your project. + +Use :ref:`Control.theme` of any control node to set up a theme that will be available to that control and all of its direct and indirect children. Tutorials --------- - :doc:`GUI skinning <../tutorials/ui/gui_skinning>` +- :doc:`Using the theme editor <../tutorials/ui/gui_using_theme_editor>` + Properties ---------- @@ -39,6 +43,8 @@ Properties Methods ------- ++---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_type` **(** :ref:`StringName` theme_type **)** | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`clear` **(** **)** | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -130,6 +136,8 @@ Methods +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`merge_with` **(** :ref:`Theme` other **)** | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_type` **(** :ref:`StringName` theme_type **)** | ++---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`rename_color` **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** | +---------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`rename_constant` **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** | @@ -211,7 +219,7 @@ Property Descriptions | *Getter* | get_default_base_scale() | +-----------+-------------------------------+ -The default base scale factor of this ``Theme`` resource. Used by some controls to scale their visual properties based on a global scale factor. If this value is set to ``0.0``, the global scale factor is used. +The default base scale factor of this theme resource. Used by some controls to scale their visual properties based on the global scale factor. If this value is set to ``0.0``, the global scale factor is used. Use :ref:`has_default_base_scale` to check if this value is valid. @@ -227,7 +235,7 @@ Use :ref:`has_default_base_scale` to | *Getter* | get_default_font() | +----------+-------------------------+ -The default font of this ``Theme`` resource. Used as a fallback value for font items defined in this theme, but having invalid values. If this value is also invalid, the global default value is used. +The default font of this theme resource. Used as the default value when trying to fetch a font resource that doesn't exist in this theme or is in invalid state. If the default font is also missing or invalid, the engine fallback value is used. Use :ref:`has_default_font` to check if this value is valid. @@ -245,18 +253,28 @@ Use :ref:`has_default_font` to check if thi | *Getter* | get_default_font_size() | +-----------+------------------------------+ -The default font size of this ``Theme`` resource. Used as a fallback value for font size items defined in this theme, but having invalid values. If this value is set to ``-1``, the global default value is used. +The default font size of this theme resource. Used as the default value when trying to fetch a font size value that doesn't exist in this theme or is in invalid state. If the default font size is also missing or invalid, the engine fallback value is used. -Use :ref:`has_default_font_size` to check if this value is valid. +Values below ``0`` are invalid and can be used to unset the property. Use :ref:`has_default_font_size` to check if this value is valid. Method Descriptions ------------------- +.. _class_Theme_method_add_type: + +- void **add_type** **(** :ref:`StringName` theme_type **)** + +Adds an empty theme type for every valid data type. + +\ **Note:** Empty types are not saved with the theme. This method only exists to perform in-memory changes to the resource. Use available ``set_*`` methods to add theme items. + +---- + .. _class_Theme_method_clear: - void **clear** **(** **)** -Clears all values on the theme. +Removes all the theme properties defined on the theme resource. ---- @@ -264,7 +282,9 @@ Clears all values on the theme. - void **clear_color** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the :ref:`Color` at ``name`` if the theme has ``theme_type``. +Removes the :ref:`Color` property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_color` to check for existence. ---- @@ -272,7 +292,9 @@ Clears the :ref:`Color` at ``name`` if the theme has ``theme_type`` - void **clear_constant** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the constant at ``name`` if the theme has ``theme_type``. +Removes the constant property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_constant` to check for existence. ---- @@ -280,7 +302,9 @@ Clears the constant at ``name`` if the theme has ``theme_type``. - void **clear_font** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the :ref:`Font` at ``name`` if the theme has ``theme_type``. +Removes the :ref:`Font` property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_font` to check for existence. ---- @@ -288,7 +312,9 @@ Clears the :ref:`Font` at ``name`` if the theme has ``theme_type``. - void **clear_font_size** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the font size ``name`` if the theme has ``theme_type``. +Removes the font size property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_font_size` to check for existence. ---- @@ -296,7 +322,9 @@ Clears the font size ``name`` if the theme has ``theme_type``. - void **clear_icon** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the icon at ``name`` if the theme has ``theme_type``. +Removes the icon property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_icon` to check for existence. ---- @@ -304,7 +332,9 @@ Clears the icon at ``name`` if the theme has ``theme_type``. - void **clear_stylebox** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears :ref:`StyleBox` at ``name`` if the theme has ``theme_type``. +Removes the :ref:`StyleBox` property defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_stylebox` to check for existence. ---- @@ -312,7 +342,11 @@ Clears :ref:`StyleBox` at ``name`` if the theme has ``theme_type - void **clear_theme_item** **(** :ref:`DataType` data_type, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Clears the theme item of ``data_type`` at ``name`` if the theme has ``theme_type``. +Removes the theme property of ``data_type`` defined by ``name`` and ``theme_type``, if it exists. + +Fails if it doesn't exist. Use :ref:`has_theme_item` to check for existence. + +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -320,7 +354,7 @@ Clears the theme item of ``data_type`` at ``name`` if the theme has ``theme_type - void **clear_type_variation** **(** :ref:`StringName` theme_type **)** -Unmarks ``theme_type`` as being a variation of any other type. +Unmarks ``theme_type`` as being a variation of another theme type. See :ref:`set_type_variation`. ---- @@ -328,7 +362,9 @@ Unmarks ``theme_type`` as being a variation of any other type. - :ref:`Color` **get_color** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the :ref:`Color` at ``name`` if the theme has ``theme_type``. +Returns the :ref:`Color` property defined by ``name`` and ``theme_type``, if it exists. + +Returns the default color value if the property doesn't exist. Use :ref:`has_color` to check for existence. ---- @@ -336,7 +372,7 @@ Returns the :ref:`Color` at ``name`` if the theme has ``theme_type` - :ref:`PackedStringArray` **get_color_list** **(** :ref:`String` theme_type **)** |const| -Returns all the :ref:`Color`\ s as a :ref:`PackedStringArray` filled with each :ref:`Color`'s name, for use in :ref:`get_color`, if the theme has ``theme_type``. +Returns a list of names for :ref:`Color` properties defined with ``theme_type``. Use :ref:`get_color_type_list` to get a list of possible theme type names. ---- @@ -344,7 +380,7 @@ Returns all the :ref:`Color`\ s as a :ref:`PackedStringArray` **get_color_type_list** **(** **)** |const| -Returns all the :ref:`Color` types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_color` and/or :ref:`get_color_list`. +Returns a list of all unique theme type names for :ref:`Color` properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -352,7 +388,9 @@ Returns all the :ref:`Color` types as a :ref:`PackedStringArray` **get_constant** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the constant at ``name`` if the theme has ``theme_type``. +Returns the constant property defined by ``name`` and ``theme_type``, if it exists. + +Returns ``0`` if the property doesn't exist. Use :ref:`has_constant` to check for existence. ---- @@ -360,7 +398,7 @@ Returns the constant at ``name`` if the theme has ``theme_type``. - :ref:`PackedStringArray` **get_constant_list** **(** :ref:`String` theme_type **)** |const| -Returns all the constants as a :ref:`PackedStringArray` filled with each constant's name, for use in :ref:`get_constant`, if the theme has ``theme_type``. +Returns a list of names for constant properties defined with ``theme_type``. Use :ref:`get_constant_type_list` to get a list of possible theme type names. ---- @@ -368,7 +406,7 @@ Returns all the constants as a :ref:`PackedStringArray` - :ref:`PackedStringArray` **get_constant_type_list** **(** **)** |const| -Returns all the constant types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_constant` and/or :ref:`get_constant_list`. +Returns a list of all unique theme type names for constant properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -376,7 +414,11 @@ Returns all the constant types as a :ref:`PackedStringArray` **get_font** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the :ref:`Font` at ``name`` if the theme has ``theme_type``. +Returns the :ref:`Font` property defined by ``name`` and ``theme_type``, if it exists. + +Returns the default theme font if the property doesn't exist and the default theme font is set up (see :ref:`default_font`). Use :ref:`has_font` to check for existence of the property and :ref:`has_default_font` to check for existence of the default theme font. + +Returns the engine fallback font value, if neither exist. ---- @@ -384,7 +426,7 @@ Returns the :ref:`Font` at ``name`` if the theme has ``theme_type``. - :ref:`PackedStringArray` **get_font_list** **(** :ref:`String` theme_type **)** |const| -Returns all the :ref:`Font`\ s as a :ref:`PackedStringArray` filled with each :ref:`Font`'s name, for use in :ref:`get_font`, if the theme has ``theme_type``. +Returns a list of names for :ref:`Font` properties defined with ``theme_type``. Use :ref:`get_font_type_list` to get a list of possible theme type names. ---- @@ -392,7 +434,11 @@ Returns all the :ref:`Font`\ s as a :ref:`PackedStringArray` **get_font_size** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the font size at ``name`` if the theme has ``theme_type``. +Returns the font size property defined by ``name`` and ``theme_type``, if it exists. + +Returns the default theme font size if the property doesn't exist and the default theme font size is set up (see :ref:`default_font_size`). Use :ref:`has_font_size` to check for existence of the property and :ref:`has_default_font_size` to check for existence of the default theme font. + +Returns the engine fallback font size value, if neither exist. ---- @@ -400,7 +446,7 @@ Returns the font size at ``name`` if the theme has ``theme_type``. - :ref:`PackedStringArray` **get_font_size_list** **(** :ref:`String` theme_type **)** |const| -Returns all the font sizes as a :ref:`PackedStringArray` filled with each font size name, for use in :ref:`get_font_size`, if the theme has ``theme_type``. +Returns a list of names for font size properties defined with ``theme_type``. Use :ref:`get_font_size_type_list` to get a list of possible theme type names. ---- @@ -408,7 +454,7 @@ Returns all the font sizes as a :ref:`PackedStringArray - :ref:`PackedStringArray` **get_font_size_type_list** **(** **)** |const| -Returns all the font size types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_font_size` and/or :ref:`get_font_size_list`. +Returns a list of all unique theme type names for font size properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -416,7 +462,7 @@ Returns all the font size types as a :ref:`PackedStringArray` **get_font_type_list** **(** **)** |const| -Returns all the :ref:`Font` types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_font` and/or :ref:`get_font_list`. +Returns a list of all unique theme type names for :ref:`Font` properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -424,7 +470,9 @@ Returns all the :ref:`Font` types as a :ref:`PackedStringArray` **get_icon** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the icon :ref:`Texture2D` at ``name`` if the theme has ``theme_type``. +Returns the icon property defined by ``name`` and ``theme_type``, if it exists. + +Returns the engine fallback icon value if the property doesn't exist. Use :ref:`has_icon` to check for existence. ---- @@ -432,7 +480,7 @@ Returns the icon :ref:`Texture2D` at ``name`` if the theme has - :ref:`PackedStringArray` **get_icon_list** **(** :ref:`String` theme_type **)** |const| -Returns all the icons as a :ref:`PackedStringArray` filled with each :ref:`Texture2D`'s name, for use in :ref:`get_icon`, if the theme has ``theme_type``. +Returns a list of names for icon properties defined with ``theme_type``. Use :ref:`get_icon_type_list` to get a list of possible theme type names. ---- @@ -440,7 +488,7 @@ Returns all the icons as a :ref:`PackedStringArray` fil - :ref:`PackedStringArray` **get_icon_type_list** **(** **)** |const| -Returns all the icon types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_icon` and/or :ref:`get_icon_list`. +Returns a list of all unique theme type names for icon properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -448,9 +496,9 @@ Returns all the icon types as a :ref:`PackedStringArray - :ref:`StyleBox` **get_stylebox** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the :ref:`StyleBox` at ``name`` if the theme has ``theme_type``. +Returns the :ref:`StyleBox` property defined by ``name`` and ``theme_type``, if it exists. -Valid ``name``\ s may be found using :ref:`get_stylebox_list`. Valid ``theme_type``\ s may be found using :ref:`get_stylebox_type_list`. +Returns the engine fallback stylebox value if the property doesn't exist. Use :ref:`has_stylebox` to check for existence. ---- @@ -458,9 +506,7 @@ Valid ``name``\ s may be found using :ref:`get_stylebox_list` **get_stylebox_list** **(** :ref:`String` theme_type **)** |const| -Returns all the :ref:`StyleBox`\ s as a :ref:`PackedStringArray` filled with each :ref:`StyleBox`'s name, for use in :ref:`get_stylebox`, if the theme has ``theme_type``. - -Valid ``theme_type``\ s may be found using :ref:`get_stylebox_type_list`. +Returns a list of names for :ref:`StyleBox` properties defined with ``theme_type``. Use :ref:`get_stylebox_type_list` to get a list of possible theme type names. ---- @@ -468,7 +514,7 @@ Valid ``theme_type``\ s may be found using :ref:`get_stylebox_type_list` **get_stylebox_type_list** **(** **)** |const| -Returns all the :ref:`StyleBox` types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_stylebox` and/or :ref:`get_stylebox_list`. +Returns a list of all unique theme type names for :ref:`StyleBox` properties. Use :ref:`get_type_list` to get a list of all unique theme types. ---- @@ -476,9 +522,11 @@ Returns all the :ref:`StyleBox` types as a :ref:`PackedStringArr - :ref:`Variant` **get_theme_item** **(** :ref:`DataType` data_type, :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns the theme item of ``data_type`` at ``name`` if the theme has ``theme_type``. +Returns the theme property of ``data_type`` defined by ``name`` and ``theme_type``, if it exists. -Valid ``name``\ s may be found using :ref:`get_theme_item_list` or a data type specific method. Valid ``theme_type``\ s may be found using :ref:`get_theme_item_type_list` or a data type specific method. +Returns the engine fallback icon value if the property doesn't exist. Use :ref:`has_theme_item` to check for existence. + +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -486,9 +534,9 @@ Valid ``name``\ s may be found using :ref:`get_theme_item_list` **get_theme_item_list** **(** :ref:`DataType` data_type, :ref:`String` theme_type **)** |const| -Returns all the theme items of ``data_type`` as a :ref:`PackedStringArray` filled with each theme items's name, for use in :ref:`get_theme_item` or a data type specific method, if the theme has ``theme_type``. +Returns a list of names for properties of ``data_type`` defined with ``theme_type``. Use :ref:`get_theme_item_type_list` to get a list of possible theme type names. -Valid ``theme_type``\ s may be found using :ref:`get_theme_item_type_list` or a data type specific method. +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -496,7 +544,9 @@ Valid ``theme_type``\ s may be found using :ref:`get_theme_item_type_list` **get_theme_item_type_list** **(** :ref:`DataType` data_type **)** |const| -Returns all the theme items of ``data_type`` types as a :ref:`PackedStringArray` filled with unique type names, for use in :ref:`get_theme_item`, :ref:`get_theme_item_list` or data type specific methods. +Returns a list of all unique theme type names for ``data_type`` properties. Use :ref:`get_type_list` to get a list of all unique theme types. + +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -504,7 +554,7 @@ Returns all the theme items of ``data_type`` types as a :ref:`PackedStringArray< - :ref:`PackedStringArray` **get_type_list** **(** **)** |const| -Returns all the theme types as a :ref:`PackedStringArray` filled with unique type names, for use in other ``get_*`` functions of this theme. +Returns a list of all unique theme type names. Use the appropriate ``get_*_type_list`` method to get a list of unique theme types for a single data type. ---- @@ -512,7 +562,7 @@ Returns all the theme types as a :ref:`PackedStringArray` **get_type_variation_base** **(** :ref:`StringName` theme_type **)** |const| -Returns the base theme type if ``theme_type`` is a valid variation type. Returns an empty string otherwise. +Returns the name of the base theme type if ``theme_type`` is a valid variation type. Returns an empty string otherwise. ---- @@ -520,7 +570,7 @@ Returns the base theme type if ``theme_type`` is a valid variation type. Returns - :ref:`PackedStringArray` **get_type_variation_list** **(** :ref:`StringName` base_type **)** |const| -Returns a list of all variation for the given ``base_type``. +Returns a list of all type variations for the given ``base_type``. ---- @@ -528,9 +578,9 @@ Returns a list of all variation for the given ``base_type``. - :ref:`bool` **has_color** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if :ref:`Color` with ``name`` is in ``theme_type``. +Returns ``true`` if the :ref:`Color` property defined by ``name`` and ``theme_type`` exists. -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if it doesn't exist. Use :ref:`set_color` to define it. ---- @@ -538,9 +588,9 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_constant** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if constant with ``name`` is in ``theme_type``. +Returns ``true`` if the constant property defined by ``name`` and ``theme_type`` exists. -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if it doesn't exist. Use :ref:`set_constant` to define it. ---- @@ -548,7 +598,9 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_default_base_scale** **(** **)** |const| -Returns ``true`` if this theme has a valid :ref:`default_base_scale` value. +Returns ``true`` if :ref:`default_base_scale` has a valid value. + +Returns ``false`` if it doesn't. The value must be greater than ``0.0`` to be considered valid. ---- @@ -556,7 +608,9 @@ Returns ``true`` if this theme has a valid :ref:`default_base_scale` **has_default_font** **(** **)** |const| -Returns ``true`` if this theme has a valid :ref:`default_font` value. +Returns ``true`` if :ref:`default_font` has a valid value. + +Returns ``false`` if it doesn't. ---- @@ -564,7 +618,9 @@ Returns ``true`` if this theme has a valid :ref:`default_font` **has_default_font_size** **(** **)** |const| -Returns ``true`` if this theme has a valid :ref:`default_font_size` value. +Returns ``true`` if :ref:`default_font_size` has a valid value. + +Returns ``false`` if it doesn't. The value must be greater than ``0`` to be considered valid. ---- @@ -572,9 +628,9 @@ Returns ``true`` if this theme has a valid :ref:`default_font_size` **has_font** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if :ref:`Font` with ``name`` is in ``theme_type``. +Returns ``true`` if the :ref:`Font` property defined by ``name`` and ``theme_type`` exists, or if the default theme font is set up (see :ref:`has_default_font`). -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if neither exist. Use :ref:`set_font` to define the property. ---- @@ -582,9 +638,9 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_font_size** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if font size with ``name`` is in ``theme_type``. +Returns ``true`` if the font size property defined by ``name`` and ``theme_type`` exists, or if the default theme font size is set up (see :ref:`has_default_font_size`). -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if neither exist. Use :ref:`set_font_size` to define the property. ---- @@ -592,9 +648,9 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_icon** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if icon :ref:`Texture2D` with ``name`` is in ``theme_type``. +Returns ``true`` if the icon property defined by ``name`` and ``theme_type`` exists. -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if it doesn't exist. Use :ref:`set_icon` to define it. ---- @@ -602,9 +658,9 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_stylebox** **(** :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if :ref:`StyleBox` with ``name`` is in ``theme_type``. +Returns ``true`` if the :ref:`StyleBox` property defined by ``name`` and ``theme_type`` exists. -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if it doesn't exist. Use :ref:`set_stylebox` to define it. ---- @@ -612,9 +668,11 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **has_theme_item** **(** :ref:`DataType` data_type, :ref:`StringName` name, :ref:`StringName` theme_type **)** |const| -Returns ``true`` if a theme item of ``data_type`` with ``name`` is in ``theme_type``. +Returns ``true`` if the theme property of ``data_type`` defined by ``name`` and ``theme_type`` exists. -Returns ``false`` if the theme does not have ``theme_type``. +Returns ``false`` if it doesn't exist. Use :ref:`set_theme_item` to define it. + +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -622,7 +680,7 @@ Returns ``false`` if the theme does not have ``theme_type``. - :ref:`bool` **is_type_variation** **(** :ref:`StringName` theme_type, :ref:`StringName` base_type **)** |const| -Returns ``true`` if ``theme_type`` is marked as a variation of ``base_type`` in this theme. +Returns ``true`` if ``theme_type`` is marked as a variation of ``base_type``. ---- @@ -630,17 +688,27 @@ Returns ``true`` if ``theme_type`` is marked as a variation of ``base_type`` in - void **merge_with** **(** :ref:`Theme` other **)** -Adds missing and overrides existing definitions with values from the ``other`` ``Theme``. +Adds missing and overrides existing definitions with values from the ``other`` theme resource. \ **Note:** This modifies the current theme. If you want to merge two themes together without modifying either one, create a new empty theme and merge the other two into it one after another. ---- +.. _class_Theme_method_remove_type: + +- void **remove_type** **(** :ref:`StringName` theme_type **)** + +Removes the theme type, gracefully discarding defined theme items. If the type is a variation, this information is also erased. If the type is a base for type variations, those variations lose their base. + +---- + .. _class_Theme_method_rename_color: - void **rename_color** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the :ref:`Color` at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the :ref:`Color` property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_color` to check for existence, and :ref:`clear_color` to remove the existing property. ---- @@ -648,7 +716,9 @@ Renames the :ref:`Color` at ``old_name`` to ``name`` if the theme h - void **rename_constant** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the constant at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the constant property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_constant` to check for existence, and :ref:`clear_constant` to remove the existing property. ---- @@ -656,7 +726,9 @@ Renames the constant at ``old_name`` to ``name`` if the theme has ``theme_type`` - void **rename_font** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the :ref:`Font` at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the :ref:`Font` property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_font` to check for existence, and :ref:`clear_font` to remove the existing property. ---- @@ -664,7 +736,9 @@ Renames the :ref:`Font` at ``old_name`` to ``name`` if the theme has - void **rename_font_size** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the font size ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the font size property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_font_size` to check for existence, and :ref:`clear_font_size` to remove the existing property. ---- @@ -672,7 +746,9 @@ Renames the font size ``old_name`` to ``name`` if the theme has ``theme_type``. - void **rename_icon** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the icon at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the icon property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_icon` to check for existence, and :ref:`clear_icon` to remove the existing property. ---- @@ -680,7 +756,9 @@ Renames the icon at ``old_name`` to ``name`` if the theme has ``theme_type``. If - void **rename_stylebox** **(** :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames :ref:`StyleBox` at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the :ref:`StyleBox` property defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_stylebox` to check for existence, and :ref:`clear_stylebox` to remove the existing property. ---- @@ -688,7 +766,11 @@ Renames :ref:`StyleBox` at ``old_name`` to ``name`` if the theme - void **rename_theme_item** **(** :ref:`DataType` data_type, :ref:`StringName` old_name, :ref:`StringName` name, :ref:`StringName` theme_type **)** -Renames the theme item of ``data_type`` at ``old_name`` to ``name`` if the theme has ``theme_type``. If ``name`` is already taken, this method fails. +Renames the theme property of ``data_type`` defined by ``old_name`` and ``theme_type`` to ``name``, if it exists. + +Fails if it doesn't exist, or if a similar property with the new name already exists. Use :ref:`has_theme_item` to check for existence, and :ref:`clear_theme_item` to remove the existing property. + +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -696,9 +778,7 @@ Renames the theme item of ``data_type`` at ``old_name`` to ``name`` if the theme - void **set_color** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`Color` color **)** -Sets the theme's :ref:`Color` to ``color`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the :ref:`Color` property defined by ``name`` and ``theme_type``. Use :ref:`clear_color` to remove the property. ---- @@ -706,9 +786,7 @@ Creates ``theme_type`` if the theme does not have it. - void **set_constant** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`int` constant **)** -Sets the theme's constant to ``constant`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the constant property defined by ``name`` and ``theme_type``. Use :ref:`clear_constant` to remove the property. ---- @@ -716,9 +794,7 @@ Creates ``theme_type`` if the theme does not have it. - void **set_font** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`Font` font **)** -Sets the theme's :ref:`Font` to ``font`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the :ref:`Font` property defined by ``name`` and ``theme_type``. Use :ref:`clear_font` to remove the property. ---- @@ -726,9 +802,7 @@ Creates ``theme_type`` if the theme does not have it. - void **set_font_size** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`int` font_size **)** -Sets the theme's font size to ``font_size`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the font size property defined by ``name`` and ``theme_type``. Use :ref:`clear_font_size` to remove the property. ---- @@ -736,9 +810,7 @@ Creates ``theme_type`` if the theme does not have it. - void **set_icon** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`Texture2D` texture **)** -Sets the theme's icon :ref:`Texture2D` to ``texture`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the icon property defined by ``name`` and ``theme_type``. Use :ref:`clear_icon` to remove the property. ---- @@ -746,9 +818,7 @@ Creates ``theme_type`` if the theme does not have it. - void **set_stylebox** **(** :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`StyleBox` texture **)** -Sets theme's :ref:`StyleBox` to ``stylebox`` at ``name`` in ``theme_type``. - -Creates ``theme_type`` if the theme does not have it. +Creates or changes the value of the :ref:`StyleBox` property defined by ``name`` and ``theme_type``. Use :ref:`clear_stylebox` to remove the property. ---- @@ -756,11 +826,11 @@ Creates ``theme_type`` if the theme does not have it. - void **set_theme_item** **(** :ref:`DataType` data_type, :ref:`StringName` name, :ref:`StringName` theme_type, :ref:`Variant` value **)** -Sets the theme item of ``data_type`` to ``value`` at ``name`` in ``theme_type``. +Creates or changes the value of the theme property of ``data_type`` defined by ``name`` and ``theme_type``. Use :ref:`clear_theme_item` to remove the property. -Does nothing if the ``value`` type does not match ``data_type``. +Fails if the ``value`` type is not accepted by ``data_type``. -Creates ``theme_type`` if the theme does not have it. +\ **Note:** This method is analogous to calling the corresponding data type specific method, but can be used for more generalized logic. ---- @@ -768,13 +838,13 @@ Creates ``theme_type`` if the theme does not have it. - void **set_type_variation** **(** :ref:`StringName` theme_type, :ref:`StringName` base_type **)** -Marks ``theme_type`` as being a variation of ``base_type``. +Marks ``theme_type`` as a variation of ``base_type``. This adds ``theme_type`` as a suggested option for :ref:`Control.theme_type_variation` on a :ref:`Control` that is of the ``base_type`` class. -Variations can also be nested, i.e. ``base_type`` can be another variation. If a chain of variations ends with a ``base_type`` matching a class of a :ref:`Control`, the whole chain is going to be suggested as options. +Variations can also be nested, i.e. ``base_type`` can be another variation. If a chain of variations ends with a ``base_type`` matching the class of the :ref:`Control`, the whole chain is going to be suggested as options. -\ **Note:** Suggestions only show up if this ``Theme`` is set as the project default theme. See :ref:`ProjectSettings.gui/theme/custom`. +\ **Note:** Suggestions only show up if this theme resource is set as the project default theme. See :ref:`ProjectSettings.gui/theme/custom`. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_translationserver.rst b/classes/class_translationserver.rst index 8f4219a21..baed56d5f 100644 --- a/classes/class_translationserver.rst +++ b/classes/class_translationserver.rst @@ -60,6 +60,8 @@ Methods +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`String` | :ref:`get_script_name` **(** :ref:`String` script **)** |const| | +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_tool_locale` **(** **)** | ++---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Translation` | :ref:`get_translation_object` **(** :ref:`String` locale **)** | +---------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`StringName` | :ref:`pseudolocalize` **(** :ref:`StringName` message **)** |const| | @@ -195,6 +197,16 @@ Returns readable script name for the ``script`` code. ---- +.. _class_TranslationServer_method_get_tool_locale: + +- :ref:`String` **get_tool_locale** **(** **)** + +Returns the current locale of the editor. + +\ **Note:** When called from an exported project returns the same value as :ref:`get_locale`. + +---- + .. _class_TranslationServer_method_get_translation_object: - :ref:`Translation` **get_translation_object** **(** :ref:`String` locale **)** @@ -243,7 +255,7 @@ If translations have been loaded beforehand for the new locale, they will be app - :ref:`String` **standardize_locale** **(** :ref:`String` locale **)** |const| -Retunrs ``locale`` string standardized to match known locales (e.g. ``en-US`` would be matched to ``en_US``). +Returns ``locale`` string standardized to match known locales (e.g. ``en-US`` would be matched to ``en_US``). ---- diff --git a/classes/class_tree.rst b/classes/class_tree.rst index 8c7145f96..4674242f7 100644 --- a/classes/class_tree.rst +++ b/classes/class_tree.rst @@ -94,6 +94,8 @@ Methods +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`ensure_cursor_is_visible` **(** **)** | +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_button_id_at_position` **(** :ref:`Vector2` position **)** |const| | ++--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_column_at_position` **(** :ref:`Vector2` position **)** |const| | +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`int` | :ref:`get_column_expand_ratio` **(** :ref:`int` column **)** |const| | @@ -136,7 +138,7 @@ Methods +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_column_expanding` **(** :ref:`int` column **)** |const| | +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`scroll_to_item` **(** :ref:`TreeItem` item **)** | +| void | :ref:`scroll_to_item` **(** :ref:`TreeItem` item, :ref:`bool` center_on_item=false **)** | +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | void | :ref:`set_column_clip_content` **(** :ref:`int` column, :ref:`bool` enable **)** | +--------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ @@ -654,6 +656,14 @@ This will scroll the tree if necessary. In :ref:`SELECT_ROW` **get_button_id_at_position** **(** :ref:`Vector2` position **)** |const| + +Returns the button id at ``position``, or -1 if no button is there. + +---- + .. _class_Tree_method_get_column_at_position: - :ref:`int` **get_column_at_position** **(** :ref:`Vector2` position **)** |const| @@ -857,7 +867,7 @@ To tell whether a column of an item is selected, use :ref:`TreeItem.is_selected< .. _class_Tree_method_scroll_to_item: -- void **scroll_to_item** **(** :ref:`TreeItem` item **)** +- void **scroll_to_item** **(** :ref:`TreeItem` item, :ref:`bool` center_on_item=false **)** Causes the ``Tree`` to jump to the specified :ref:`TreeItem`. diff --git a/classes/class_treeitem.rst b/classes/class_treeitem.rst index a538435f9..1c7ac93b0 100644 --- a/classes/class_treeitem.rst +++ b/classes/class_treeitem.rst @@ -34,181 +34,185 @@ Properties Methods ------- -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`add_button` **(** :ref:`int` column, :ref:`Texture2D` button, :ref:`int` button_idx=-1, :ref:`bool` disabled=false, :ref:`String` tooltip="" **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`call_recursive` **(** :ref:`StringName` method, ... **)** |vararg| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clear_custom_bg_color` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clear_custom_color` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clear_opentype_features` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`create_child` **(** :ref:`int` idx=-1 **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`deselect` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`erase_button` **(** :ref:`int` column, :ref:`int` button_idx **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Texture2D` | :ref:`get_button` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_button_count` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_button_tooltip` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeCellMode` | :ref:`get_cell_mode` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_child` **(** :ref:`int` idx **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_child_count` **(** **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`get_children` **(** **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Color` | :ref:`get_custom_bg_color` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Color` | :ref:`get_custom_color` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Font` | :ref:`get_custom_font` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_custom_font_size` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`get_expand_right` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_first_child` **(** **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Texture2D` | :ref:`get_icon` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_icon_max_width` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Color` | :ref:`get_icon_modulate` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Rect2` | :ref:`get_icon_region` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_index` **(** **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_language` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`get_metadata` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_next` **(** **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_next_visible` **(** :ref:`bool` wrap=false **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`int` | :ref:`get_opentype_feature` **(** :ref:`int` column, :ref:`String` tag **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_parent` **(** **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_prev` **(** **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TreeItem` | :ref:`get_prev_visible` **(** :ref:`bool` wrap=false **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`float` | :ref:`get_range` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Dictionary` | :ref:`get_range_config` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`StructuredTextParser` | :ref:`get_structured_text_bidi_override` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`get_structured_text_bidi_override_options` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_suffix` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_text` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`HorizontalAlignment` | :ref:`get_text_alignment` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`TextDirection` | :ref:`get_text_direction` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`String` | :ref:`get_tooltip` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Tree` | :ref:`get_tree` **(** **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_button_disabled` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_checked` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_custom_set_as_button` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_editable` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_indeterminate` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_selectable` **(** :ref:`int` column **)** |const| | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`bool` | :ref:`is_selected` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`move_after` **(** :ref:`TreeItem` item **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`move_before` **(** :ref:`TreeItem` item **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`propagate_check` **(** :ref:`int` column, :ref:`bool` emit_signal=true **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_child` **(** :ref:`TreeItem` child **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`select` **(** :ref:`int` column **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_button` **(** :ref:`int` column, :ref:`int` button_idx, :ref:`Texture2D` button **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_button_disabled` **(** :ref:`int` column, :ref:`int` button_idx, :ref:`bool` disabled **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_cell_mode` **(** :ref:`int` column, :ref:`TreeCellMode` mode **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_checked` **(** :ref:`int` column, :ref:`bool` checked **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_as_button` **(** :ref:`int` column, :ref:`bool` enable **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_bg_color` **(** :ref:`int` column, :ref:`Color` color, :ref:`bool` just_outline=false **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_color` **(** :ref:`int` column, :ref:`Color` color **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_draw` **(** :ref:`int` column, :ref:`Object` object, :ref:`StringName` callback **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_font` **(** :ref:`int` column, :ref:`Font` font **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_custom_font_size` **(** :ref:`int` column, :ref:`int` font_size **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_editable` **(** :ref:`int` column, :ref:`bool` enabled **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_expand_right` **(** :ref:`int` column, :ref:`bool` enable **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_icon` **(** :ref:`int` column, :ref:`Texture2D` texture **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_icon_max_width` **(** :ref:`int` column, :ref:`int` width **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_icon_modulate` **(** :ref:`int` column, :ref:`Color` modulate **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_icon_region` **(** :ref:`int` column, :ref:`Rect2` region **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_indeterminate` **(** :ref:`int` column, :ref:`bool` indeterminate **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_language` **(** :ref:`int` column, :ref:`String` language **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_metadata` **(** :ref:`int` column, :ref:`Variant` meta **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_opentype_feature` **(** :ref:`int` column, :ref:`String` tag, :ref:`int` value **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_range` **(** :ref:`int` column, :ref:`float` value **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_range_config` **(** :ref:`int` column, :ref:`float` min, :ref:`float` max, :ref:`float` step, :ref:`bool` expr=false **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_selectable` **(** :ref:`int` column, :ref:`bool` selectable **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_structured_text_bidi_override` **(** :ref:`int` column, :ref:`StructuredTextParser` parser **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_structured_text_bidi_override_options` **(** :ref:`int` column, :ref:`Array` args **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_suffix` **(** :ref:`int` column, :ref:`String` text **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_text` **(** :ref:`int` column, :ref:`String` text **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_text_alignment` **(** :ref:`int` column, :ref:`HorizontalAlignment` text_alignment **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_text_direction` **(** :ref:`int` column, :ref:`TextDirection` direction **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_tooltip` **(** :ref:`int` column, :ref:`String` tooltip **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`uncollapse_tree` **(** **)** | -+-------------------------------------------------------------------+-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`add_button` **(** :ref:`int` column, :ref:`Texture2D` button, :ref:`int` id=-1, :ref:`bool` disabled=false, :ref:`String` tooltip="" **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`call_recursive` **(** :ref:`StringName` method, ... **)** |vararg| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clear_custom_bg_color` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clear_custom_color` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clear_opentype_features` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`create_child` **(** :ref:`int` idx=-1 **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`deselect` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`erase_button` **(** :ref:`int` column, :ref:`int` button_idx **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Texture2D` | :ref:`get_button` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_button_by_id` **(** :ref:`int` column, :ref:`int` id **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_button_count` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_button_id` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_button_tooltip` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeCellMode` | :ref:`get_cell_mode` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_child` **(** :ref:`int` idx **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_child_count` **(** **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`get_children` **(** **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Color` | :ref:`get_custom_bg_color` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Color` | :ref:`get_custom_color` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Font` | :ref:`get_custom_font` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_custom_font_size` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`get_expand_right` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_first_child` **(** **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Texture2D` | :ref:`get_icon` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_icon_max_width` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Color` | :ref:`get_icon_modulate` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Rect2` | :ref:`get_icon_region` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_index` **(** **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_language` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`get_metadata` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_next` **(** **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_next_visible` **(** :ref:`bool` wrap=false **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`int` | :ref:`get_opentype_feature` **(** :ref:`int` column, :ref:`String` tag **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_parent` **(** **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_prev` **(** **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TreeItem` | :ref:`get_prev_visible` **(** :ref:`bool` wrap=false **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`float` | :ref:`get_range` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Dictionary` | :ref:`get_range_config` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`StructuredTextParser` | :ref:`get_structured_text_bidi_override` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`get_structured_text_bidi_override_options` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_suffix` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_text` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`HorizontalAlignment` | :ref:`get_text_alignment` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`TextDirection` | :ref:`get_text_direction` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`String` | :ref:`get_tooltip` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Tree` | :ref:`get_tree` **(** **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_button_disabled` **(** :ref:`int` column, :ref:`int` button_idx **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_checked` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_custom_set_as_button` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_editable` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_indeterminate` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_selectable` **(** :ref:`int` column **)** |const| | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`bool` | :ref:`is_selected` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`move_after` **(** :ref:`TreeItem` item **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`move_before` **(** :ref:`TreeItem` item **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`propagate_check` **(** :ref:`int` column, :ref:`bool` emit_signal=true **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_child` **(** :ref:`TreeItem` child **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`select` **(** :ref:`int` column **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_button` **(** :ref:`int` column, :ref:`int` button_idx, :ref:`Texture2D` button **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_button_disabled` **(** :ref:`int` column, :ref:`int` button_idx, :ref:`bool` disabled **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_cell_mode` **(** :ref:`int` column, :ref:`TreeCellMode` mode **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_checked` **(** :ref:`int` column, :ref:`bool` checked **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_as_button` **(** :ref:`int` column, :ref:`bool` enable **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_bg_color` **(** :ref:`int` column, :ref:`Color` color, :ref:`bool` just_outline=false **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_color` **(** :ref:`int` column, :ref:`Color` color **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_draw` **(** :ref:`int` column, :ref:`Object` object, :ref:`StringName` callback **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_font` **(** :ref:`int` column, :ref:`Font` font **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_custom_font_size` **(** :ref:`int` column, :ref:`int` font_size **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_editable` **(** :ref:`int` column, :ref:`bool` enabled **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_expand_right` **(** :ref:`int` column, :ref:`bool` enable **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_icon` **(** :ref:`int` column, :ref:`Texture2D` texture **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_icon_max_width` **(** :ref:`int` column, :ref:`int` width **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_icon_modulate` **(** :ref:`int` column, :ref:`Color` modulate **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_icon_region` **(** :ref:`int` column, :ref:`Rect2` region **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_indeterminate` **(** :ref:`int` column, :ref:`bool` indeterminate **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_language` **(** :ref:`int` column, :ref:`String` language **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_metadata` **(** :ref:`int` column, :ref:`Variant` meta **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_opentype_feature` **(** :ref:`int` column, :ref:`String` tag, :ref:`int` value **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_range` **(** :ref:`int` column, :ref:`float` value **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_range_config` **(** :ref:`int` column, :ref:`float` min, :ref:`float` max, :ref:`float` step, :ref:`bool` expr=false **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_selectable` **(** :ref:`int` column, :ref:`bool` selectable **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_structured_text_bidi_override` **(** :ref:`int` column, :ref:`StructuredTextParser` parser **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_structured_text_bidi_override_options` **(** :ref:`int` column, :ref:`Array` args **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_suffix` **(** :ref:`int` column, :ref:`String` text **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_text` **(** :ref:`int` column, :ref:`String` text **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_text_alignment` **(** :ref:`int` column, :ref:`HorizontalAlignment` text_alignment **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_text_direction` **(** :ref:`int` column, :ref:`TextDirection` direction **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_tooltip` **(** :ref:`int` column, :ref:`String` tooltip **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`uncollapse_tree` **(** **)** | ++-------------------------------------------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Enumerations ------------ @@ -285,9 +289,9 @@ Method Descriptions .. _class_TreeItem_method_add_button: -- void **add_button** **(** :ref:`int` column, :ref:`Texture2D` button, :ref:`int` button_idx=-1, :ref:`bool` disabled=false, :ref:`String` tooltip="" **)** +- void **add_button** **(** :ref:`int` column, :ref:`Texture2D` button, :ref:`int` id=-1, :ref:`bool` disabled=false, :ref:`String` tooltip="" **)** -Adds a button with :ref:`Texture2D` ``button`` at column ``column``. The ``button_idx`` index is used to identify the button when calling other methods. If not specified, the next available index is used, which may be retrieved by calling :ref:`get_button_count` immediately after this method. Optionally, the button can be ``disabled`` and have a ``tooltip``. +Adds a button with :ref:`Texture2D` ``button`` at column ``column``. The ``id`` is used to identify the button. If not specified, the next available index is used, which may be retrieved by calling :ref:`get_button_count` immediately before this method. Optionally, the button can be ``disabled`` and have a ``tooltip``. ---- @@ -357,11 +361,27 @@ Returns the :ref:`Texture2D` of the button at index ``button_id ---- +.. _class_TreeItem_method_get_button_by_id: + +- :ref:`int` **get_button_by_id** **(** :ref:`int` column, :ref:`int` id **)** |const| + +Returns the button index if there is a button with id ``id`` in column ``column``, otherwise returns -1. + +---- + .. _class_TreeItem_method_get_button_count: - :ref:`int` **get_button_count** **(** :ref:`int` column **)** |const| -Returns the number of buttons in column ``column``. May be used to get the most recently added button's index, if no index was specified. +Returns the number of buttons in column ``column``. + +---- + +.. _class_TreeItem_method_get_button_id: + +- :ref:`int` **get_button_id** **(** :ref:`int` column, :ref:`int` button_idx **)** |const| + +Returns the id for the button at index ``button_idx`` in column ``column``. ---- diff --git a/classes/class_vector2i.rst b/classes/class_vector2i.rst index a4492e867..6eabd60c9 100644 --- a/classes/class_vector2i.rst +++ b/classes/class_vector2i.rst @@ -86,7 +86,7 @@ Operators +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`operator *` **(** :ref:`Vector2i` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`operator *` **(** :ref:`float` right **)** | +| :ref:`Vector2` | :ref:`operator *` **(** :ref:`float` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`operator *` **(** :ref:`int` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ @@ -96,7 +96,7 @@ Operators +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`operator /` **(** :ref:`Vector2i` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ -| :ref:`Vector2i` | :ref:`operator /` **(** :ref:`float` right **)** | +| :ref:`Vector2` | :ref:`operator /` **(** :ref:`float` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector2i` | :ref:`operator /` **(** :ref:`int` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ @@ -322,13 +322,13 @@ Multiplies each component of the ``Vector2i`` by the components of the given ``V ---- -- :ref:`Vector2i` **operator *** **(** :ref:`float` right **)** +- :ref:`Vector2` **operator *** **(** :ref:`float` right **)** -Multiplies each component of the ``Vector2i`` by the given :ref:`float` truncated to an integer. +Multiplies each component of the ``Vector2i`` by the given :ref:`float`. Returns a :ref:`Vector2`. :: - print(Vector2i(10, 20) * 0.9) # Prints "(0, 0)" + print(Vector2i(10, 15) * 0.9) # Prints "(9, 13.5)" ---- @@ -374,9 +374,9 @@ Divides each component of the ``Vector2i`` by the components of the given ``Vect ---- -- :ref:`Vector2i` **operator /** **(** :ref:`float` right **)** +- :ref:`Vector2` **operator /** **(** :ref:`float` right **)** -Divides each component of the ``Vector2i`` by the given :ref:`float` truncated to an integer. +Divides each component of the ``Vector2i`` by the given :ref:`float`. Returns a :ref:`Vector2`. :: diff --git a/classes/class_vector3i.rst b/classes/class_vector3i.rst index dbd260a5d..41f054d24 100644 --- a/classes/class_vector3i.rst +++ b/classes/class_vector3i.rst @@ -86,7 +86,7 @@ Operators +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector3i` | :ref:`operator *` **(** :ref:`Vector3i` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ -| :ref:`Vector3i` | :ref:`operator *` **(** :ref:`float` right **)** | +| :ref:`Vector3` | :ref:`operator *` **(** :ref:`float` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector3i` | :ref:`operator *` **(** :ref:`int` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ @@ -96,7 +96,7 @@ Operators +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector3i` | :ref:`operator /` **(** :ref:`Vector3i` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ -| :ref:`Vector3i` | :ref:`operator /` **(** :ref:`float` right **)** | +| :ref:`Vector3` | :ref:`operator /` **(** :ref:`float` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ | :ref:`Vector3i` | :ref:`operator /` **(** :ref:`int` right **)** | +---------------------------------+-----------------------------------------------------------------------------------------------------------+ @@ -237,6 +237,8 @@ Method Descriptions - :ref:`Vector3i` **abs** **(** **)** |const| +Returns a new vector with all components in absolute values (i.e. positive). + ---- .. _class_Vector3i_method_clamp: @@ -336,13 +338,13 @@ Multiplies each component of the ``Vector3i`` by the components of the given ``V ---- -- :ref:`Vector3i` **operator *** **(** :ref:`float` right **)** +- :ref:`Vector3` **operator *** **(** :ref:`float` right **)** -Multiplies each component of the ``Vector3i`` by the given :ref:`float` truncated to an integer. +Multiplies each component of the ``Vector3i`` by the given :ref:`float`. Returns a :ref:`Vector3`. :: - print(Vector3i(10, 20, 30) * 0.9) # Prints "(0, 0, 0)" + print(Vector3i(10, 15, 20) * 0.9) # Prints "(9, 13.5, 18)" ---- @@ -388,9 +390,9 @@ Divides each component of the ``Vector3i`` by the components of the given ``Vect ---- -- :ref:`Vector3i` **operator /** **(** :ref:`float` right **)** +- :ref:`Vector3` **operator /** **(** :ref:`float` right **)** -Divides each component of the ``Vector3i`` by the given :ref:`float` truncated to an integer. +Divides each component of the ``Vector3i`` by the given :ref:`float`. Returns a :ref:`Vector3`. :: diff --git a/classes/class_viewport.rst b/classes/class_viewport.rst index d339eb448..addf67e05 100644 --- a/classes/class_viewport.rst +++ b/classes/class_viewport.rst @@ -156,10 +156,14 @@ Methods +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`Variant` | :ref:`gui_get_drag_data` **(** **)** |const| | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Control` | :ref:`gui_get_focus_owner` **(** **)** | ++---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gui_is_drag_successful` **(** **)** |const| | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`gui_is_dragging` **(** **)** |const| | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`gui_release_focus` **(** **)** | ++---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_embedding_subwindows` **(** **)** |const| | +---------------------------------------------------------------------------+------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ | :ref:`bool` | :ref:`is_input_handled` **(** **)** |const| | @@ -1076,6 +1080,10 @@ If ``true``, the viewport should render its background as transparent. | *Getter* | is_using_occlusion_culling() | +-----------+----------------------------------+ +If ``true``, :ref:`OccluderInstance3D` nodes will be usable for occlusion culling in 3D for this viewport. For the root viewport, :ref:`ProjectSettings.rendering/occlusion_culling/use_occlusion_culling` must be set to ``true`` instead. + +\ **Note:** Enabling occlusion culling has a cost on the CPU. Only enable occlusion culling if you actually plan to use it, and think whether your scene can actually benefit from occlusion culling. Large, open scenes with few or no objects blocking the view will generally not benefit much from occlusion culling. Large open scenes generally benefit more from mesh LOD and visibility ranges (:ref:`GeometryInstance3D.visibility_range_begin` and :ref:`GeometryInstance3D.visibility_range_end`) compared to occlusion culling. + ---- .. _class_Viewport_property_use_xr: @@ -1167,7 +1175,7 @@ Returns the total transform of the viewport. - :ref:`Vector2` **get_mouse_position** **(** **)** |const| -Returns the mouse position relative to the viewport. +Returns the mouse's position in this ``Viewport`` using the coordinate system of this ``Viewport``. ---- @@ -1234,6 +1242,14 @@ Returns the drag data from the GUI, that was previously returned by :ref:`Contro ---- +.. _class_Viewport_method_gui_get_focus_owner: + +- :ref:`Control` **gui_get_focus_owner** **(** **)** + +Returns the :ref:`Control` having the focus within this viewport. If no :ref:`Control` has the focus, returns null. + +---- + .. _class_Viewport_method_gui_is_drag_successful: - :ref:`bool` **gui_is_drag_successful** **(** **)** |const| @@ -1250,6 +1266,14 @@ Returns ``true`` if the viewport is currently performing a drag operation. ---- +.. _class_Viewport_method_gui_release_focus: + +- void **gui_release_focus** **(** **)** + +Removes the focus from the currently focused :ref:`Control` within this viewport. If no :ref:`Control` has the focus, does nothing. + +---- + .. _class_Viewport_method_is_embedding_subwindows: - :ref:`bool` **is_embedding_subwindows** **(** **)** |const| @@ -1302,7 +1326,7 @@ Sets the number of subdivisions to use in the specified quadrant. A higher numbe - void **warp_mouse** **(** :ref:`Vector2` to_position **)** -Warps the mouse to a position relative to the viewport. +Moves the mouse pointer to the specified position in this ``Viewport`` using the coordinate system of this ``Viewport``. .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` diff --git a/classes/class_visualscriptbuiltinfunc.rst b/classes/class_visualscriptbuiltinfunc.rst index c35b84c0c..64f0fef2e 100644 --- a/classes/class_visualscriptbuiltinfunc.rst +++ b/classes/class_visualscriptbuiltinfunc.rst @@ -86,6 +86,8 @@ Enumerations .. _class_VisualScriptBuiltinFunc_constant_MATH_LERP: +.. _class_VisualScriptBuiltinFunc_constant_MATH_CUBIC_INTERPOLATE: + .. _class_VisualScriptBuiltinFunc_constant_MATH_INVERSE_LERP: .. _class_VisualScriptBuiltinFunc_constant_MATH_RANGE_LERP: @@ -224,92 +226,94 @@ enum **BuiltinFunc**: - **MATH_LERP** = **26** --- Returns a number linearly interpolated between the first two inputs, based on the third input. Uses the formula ``a + (a - b) * t``. -- **MATH_INVERSE_LERP** = **27** +- **MATH_CUBIC_INTERPOLATE** = **27** -- **MATH_RANGE_LERP** = **28** +- **MATH_INVERSE_LERP** = **28** -- **MATH_MOVE_TOWARD** = **29** --- Moves the number toward a value, based on the third input. +- **MATH_RANGE_LERP** = **29** -- **MATH_RANDOMIZE** = **30** --- Randomize the seed (or the internal state) of the random number generator. Current implementation reseeds using a number based on time. +- **MATH_MOVE_TOWARD** = **30** --- Moves the number toward a value, based on the third input. -- **MATH_RANDI** = **31** --- Returns a random 32 bits integer value. To obtain a random value between 0 to N (where N is smaller than 2^32 - 1), you can use it with the remainder function. +- **MATH_RANDOMIZE** = **31** --- Randomize the seed (or the internal state) of the random number generator. Current implementation reseeds using a number based on time. -- **MATH_RANDF** = **32** --- Returns a random floating-point value between 0 and 1. To obtain a random value between 0 to N, you can use it with multiplication. +- **MATH_RANDI** = **32** --- Returns a random 32 bits integer value. To obtain a random value between 0 to N (where N is smaller than 2^32 - 1), you can use it with the remainder function. -- **MATH_RANDI_RANGE** = **33** --- Returns a random 32-bit integer value between the two inputs. +- **MATH_RANDF** = **33** --- Returns a random floating-point value between 0 and 1. To obtain a random value between 0 to N, you can use it with multiplication. -- **MATH_RANDF_RANGE** = **34** --- Returns a random floating-point value between the two inputs. +- **MATH_RANDI_RANGE** = **34** --- Returns a random 32-bit integer value between the two inputs. -- **MATH_RANDFN** = **35** --- Returns a normally-distributed pseudo-random number, using Box-Muller transform with the specified mean and a standard deviation. This is also called Gaussian distribution. +- **MATH_RANDF_RANGE** = **35** --- Returns a random floating-point value between the two inputs. -- **MATH_SEED** = **36** --- Set the seed for the random number generator. +- **MATH_RANDFN** = **36** --- Returns a normally-distributed pseudo-random number, using Box-Muller transform with the specified mean and a standard deviation. This is also called Gaussian distribution. -- **MATH_RANDSEED** = **37** --- Returns a random value from the given seed, along with the new seed. +- **MATH_SEED** = **37** --- Set the seed for the random number generator. -- **MATH_DEG2RAD** = **38** --- Convert the input from degrees to radians. +- **MATH_RANDSEED** = **38** --- Returns a random value from the given seed, along with the new seed. -- **MATH_RAD2DEG** = **39** --- Convert the input from radians to degrees. +- **MATH_DEG2RAD** = **39** --- Convert the input from degrees to radians. -- **MATH_LINEAR2DB** = **40** --- Convert the input from linear volume to decibel volume. +- **MATH_RAD2DEG** = **40** --- Convert the input from radians to degrees. -- **MATH_DB2LINEAR** = **41** --- Convert the input from decibel volume to linear volume. +- **MATH_LINEAR2DB** = **41** --- Convert the input from linear volume to decibel volume. -- **MATH_WRAP** = **42** +- **MATH_DB2LINEAR** = **42** --- Convert the input from decibel volume to linear volume. -- **MATH_WRAPF** = **43** +- **MATH_WRAP** = **43** -- **MATH_PINGPONG** = **44** --- Returns the ``value`` wrapped between ``0`` and the ``length``. If the limit is reached, the next value the function returned is decreased to the ``0`` side or increased to the ``length`` side (like a triangle wave). If ``length`` is less than zero, it becomes positive. +- **MATH_WRAPF** = **44** -- **LOGIC_MAX** = **45** --- Returns the greater of the two numbers, also known as their maximum. +- **MATH_PINGPONG** = **45** --- Returns the ``value`` wrapped between ``0`` and the ``length``. If the limit is reached, the next value the function returned is decreased to the ``0`` side or increased to the ``length`` side (like a triangle wave). If ``length`` is less than zero, it becomes positive. -- **LOGIC_MIN** = **46** --- Returns the lesser of the two numbers, also known as their minimum. +- **LOGIC_MAX** = **46** --- Returns the greater of the two numbers, also known as their maximum. -- **LOGIC_CLAMP** = **47** --- Returns the input clamped inside the given range, ensuring the result is never outside it. Equivalent to ``min(max(input, range_low), range_high)``. +- **LOGIC_MIN** = **47** --- Returns the lesser of the two numbers, also known as their minimum. -- **LOGIC_NEAREST_PO2** = **48** --- Returns the nearest power of 2 to the input. +- **LOGIC_CLAMP** = **48** --- Returns the input clamped inside the given range, ensuring the result is never outside it. Equivalent to ``min(max(input, range_low), range_high)``. -- **OBJ_WEAKREF** = **49** --- Create a :ref:`WeakRef` from the input. +- **LOGIC_NEAREST_PO2** = **49** --- Returns the nearest power of 2 to the input. -- **TYPE_CONVERT** = **50** --- Convert between types. +- **OBJ_WEAKREF** = **50** --- Create a :ref:`WeakRef` from the input. -- **TYPE_OF** = **51** --- Returns the type of the input as an integer. Check :ref:`Variant.Type` for the integers that might be returned. +- **TYPE_CONVERT** = **51** --- Convert between types. -- **TYPE_EXISTS** = **52** --- Checks if a type is registered in the :ref:`ClassDB`. +- **TYPE_OF** = **52** --- Returns the type of the input as an integer. Check :ref:`Variant.Type` for the integers that might be returned. -- **TEXT_CHAR** = **53** --- Returns a character with the given ascii value. +- **TYPE_EXISTS** = **53** --- Checks if a type is registered in the :ref:`ClassDB`. -- **TEXT_STR** = **54** --- Convert the input to a string. +- **TEXT_CHAR** = **54** --- Returns a character with the given ascii value. -- **TEXT_PRINT** = **55** --- Print the given string to the output window. +- **TEXT_STR** = **55** --- Convert the input to a string. -- **TEXT_PRINTERR** = **56** --- Print the given string to the standard error output. +- **TEXT_PRINT** = **56** --- Print the given string to the output window. -- **TEXT_PRINTRAW** = **57** --- Print the given string to the standard output, without adding a newline. +- **TEXT_PRINTERR** = **57** --- Print the given string to the standard error output. -- **TEXT_PRINT_VERBOSE** = **58** +- **TEXT_PRINTRAW** = **58** --- Print the given string to the standard output, without adding a newline. -- **VAR_TO_STR** = **59** --- Serialize a :ref:`Variant` to a string. +- **TEXT_PRINT_VERBOSE** = **59** -- **STR_TO_VAR** = **60** --- Deserialize a :ref:`Variant` from a string serialized using :ref:`VAR_TO_STR`. +- **VAR_TO_STR** = **60** --- Serialize a :ref:`Variant` to a string. -- **VAR_TO_BYTES** = **61** --- Serialize a :ref:`Variant` to a :ref:`PackedByteArray`. +- **STR_TO_VAR** = **61** --- Deserialize a :ref:`Variant` from a string serialized using :ref:`VAR_TO_STR`. -- **BYTES_TO_VAR** = **62** --- Deserialize a :ref:`Variant` from a :ref:`PackedByteArray` serialized using :ref:`VAR_TO_BYTES`. +- **VAR_TO_BYTES** = **62** --- Serialize a :ref:`Variant` to a :ref:`PackedByteArray`. -- **MATH_SMOOTHSTEP** = **63** --- Returns a number smoothly interpolated between the first two inputs, based on the third input. Similar to :ref:`MATH_LERP`, but interpolates faster at the beginning and slower at the end. Using Hermite interpolation formula: +- **BYTES_TO_VAR** = **63** --- Deserialize a :ref:`Variant` from a :ref:`PackedByteArray` serialized using :ref:`VAR_TO_BYTES`. + +- **MATH_SMOOTHSTEP** = **64** --- Returns a number smoothly interpolated between the first two inputs, based on the third input. Similar to :ref:`MATH_LERP`, but interpolates faster at the beginning and slower at the end. Using Hermite interpolation formula: :: var t = clamp((weight - from) / (to - from), 0.0, 1.0) return t * t * (3.0 - 2.0 * t) -- **MATH_POSMOD** = **64** +- **MATH_POSMOD** = **65** -- **MATH_LERP_ANGLE** = **65** +- **MATH_LERP_ANGLE** = **66** -- **TEXT_ORD** = **66** +- **TEXT_ORD** = **67** -- **FUNC_MAX** = **67** --- Represents the size of the :ref:`BuiltinFunc` enum. +- **FUNC_MAX** = **68** --- Represents the size of the :ref:`BuiltinFunc` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernode.rst b/classes/class_visualshadernode.rst index 10af9c268..86b00876d 100644 --- a/classes/class_visualshadernode.rst +++ b/classes/class_visualshadernode.rst @@ -11,7 +11,7 @@ VisualShaderNode **Inherits:** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`VisualShaderNodeBillboard`, :ref:`VisualShaderNodeClamp`, :ref:`VisualShaderNodeColorFunc`, :ref:`VisualShaderNodeColorOp`, :ref:`VisualShaderNodeCompare`, :ref:`VisualShaderNodeConstant`, :ref:`VisualShaderNodeCubemap`, :ref:`VisualShaderNodeCustom`, :ref:`VisualShaderNodeDerivativeFunc`, :ref:`VisualShaderNodeDeterminant`, :ref:`VisualShaderNodeDotProduct`, :ref:`VisualShaderNodeFaceForward`, :ref:`VisualShaderNodeFloatFunc`, :ref:`VisualShaderNodeFloatOp`, :ref:`VisualShaderNodeFresnel`, :ref:`VisualShaderNodeIf`, :ref:`VisualShaderNodeInput`, :ref:`VisualShaderNodeIntFunc`, :ref:`VisualShaderNodeIntOp`, :ref:`VisualShaderNodeIs`, :ref:`VisualShaderNodeMix`, :ref:`VisualShaderNodeMultiplyAdd`, :ref:`VisualShaderNodeOuterProduct`, :ref:`VisualShaderNodeOutput`, :ref:`VisualShaderNodeParticleAccelerator`, :ref:`VisualShaderNodeParticleConeVelocity`, :ref:`VisualShaderNodeParticleEmit`, :ref:`VisualShaderNodeParticleEmitter`, :ref:`VisualShaderNodeParticleMultiplyByAxisAngle`, :ref:`VisualShaderNodeParticleRandomness`, :ref:`VisualShaderNodeResizableBase`, :ref:`VisualShaderNodeSDFRaymarch`, :ref:`VisualShaderNodeSDFToScreenUV`, :ref:`VisualShaderNodeSample3D`, :ref:`VisualShaderNodeScreenUVToSDF`, :ref:`VisualShaderNodeSmoothStep`, :ref:`VisualShaderNodeStep`, :ref:`VisualShaderNodeSwitch`, :ref:`VisualShaderNodeTexture`, :ref:`VisualShaderNodeTextureSDF`, :ref:`VisualShaderNodeTextureSDFNormal`, :ref:`VisualShaderNodeTransformCompose`, :ref:`VisualShaderNodeTransformDecompose`, :ref:`VisualShaderNodeTransformFunc`, :ref:`VisualShaderNodeTransformOp`, :ref:`VisualShaderNodeTransformVecMult`, :ref:`VisualShaderNodeUVFunc`, :ref:`VisualShaderNodeUniform`, :ref:`VisualShaderNodeUniformRef`, :ref:`VisualShaderNodeVectorCompose`, :ref:`VisualShaderNodeVectorDecompose`, :ref:`VisualShaderNodeVectorDistance`, :ref:`VisualShaderNodeVectorFunc`, :ref:`VisualShaderNodeVectorLen`, :ref:`VisualShaderNodeVectorOp`, :ref:`VisualShaderNodeVectorRefract` +**Inherited By:** :ref:`VisualShaderNodeBillboard`, :ref:`VisualShaderNodeClamp`, :ref:`VisualShaderNodeColorFunc`, :ref:`VisualShaderNodeColorOp`, :ref:`VisualShaderNodeCompare`, :ref:`VisualShaderNodeConstant`, :ref:`VisualShaderNodeCubemap`, :ref:`VisualShaderNodeCustom`, :ref:`VisualShaderNodeDerivativeFunc`, :ref:`VisualShaderNodeDeterminant`, :ref:`VisualShaderNodeDotProduct`, :ref:`VisualShaderNodeFloatFunc`, :ref:`VisualShaderNodeFloatOp`, :ref:`VisualShaderNodeFresnel`, :ref:`VisualShaderNodeIf`, :ref:`VisualShaderNodeInput`, :ref:`VisualShaderNodeIntFunc`, :ref:`VisualShaderNodeIntOp`, :ref:`VisualShaderNodeIs`, :ref:`VisualShaderNodeMix`, :ref:`VisualShaderNodeMultiplyAdd`, :ref:`VisualShaderNodeOuterProduct`, :ref:`VisualShaderNodeOutput`, :ref:`VisualShaderNodeParticleAccelerator`, :ref:`VisualShaderNodeParticleConeVelocity`, :ref:`VisualShaderNodeParticleEmit`, :ref:`VisualShaderNodeParticleEmitter`, :ref:`VisualShaderNodeParticleMultiplyByAxisAngle`, :ref:`VisualShaderNodeParticleRandomness`, :ref:`VisualShaderNodeResizableBase`, :ref:`VisualShaderNodeSDFRaymarch`, :ref:`VisualShaderNodeSDFToScreenUV`, :ref:`VisualShaderNodeSample3D`, :ref:`VisualShaderNodeScreenUVToSDF`, :ref:`VisualShaderNodeSmoothStep`, :ref:`VisualShaderNodeStep`, :ref:`VisualShaderNodeSwitch`, :ref:`VisualShaderNodeTexture`, :ref:`VisualShaderNodeTextureSDF`, :ref:`VisualShaderNodeTextureSDFNormal`, :ref:`VisualShaderNodeTransformCompose`, :ref:`VisualShaderNodeTransformDecompose`, :ref:`VisualShaderNodeTransformFunc`, :ref:`VisualShaderNodeTransformOp`, :ref:`VisualShaderNodeTransformVecMult`, :ref:`VisualShaderNodeUVFunc`, :ref:`VisualShaderNodeUniform`, :ref:`VisualShaderNodeUniformRef`, :ref:`VisualShaderNodeVectorBase`, :ref:`VisualShaderNodeVectorRefract` Base class for nodes in a visual shader graph. @@ -35,19 +35,19 @@ Properties Methods ------- -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`clear_default_input_values` **(** **)** | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Array` | :ref:`get_default_input_values` **(** **)** |const| | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| :ref:`Variant` | :ref:`get_input_port_default_value` **(** :ref:`int` port **)** |const| | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`remove_input_port_default_value` **(** :ref:`int` port **)** | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_default_input_values` **(** :ref:`Array` values **)** | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ -| void | :ref:`set_input_port_default_value` **(** :ref:`int` port, :ref:`Variant` value **)** | -+-------------------------------+-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`clear_default_input_values` **(** **)** | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Array` | :ref:`get_default_input_values` **(** **)** |const| | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| :ref:`Variant` | :ref:`get_input_port_default_value` **(** :ref:`int` port **)** |const| | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`remove_input_port_default_value` **(** :ref:`int` port **)** | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_default_input_values` **(** :ref:`Array` values **)** | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ +| void | :ref:`set_input_port_default_value` **(** :ref:`int` port, :ref:`Variant` value, :ref:`Variant` prev_value=null **)** | ++-------------------------------+----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------+ Signals ------- @@ -67,7 +67,9 @@ Enumerations .. _class_VisualShaderNode_constant_PORT_TYPE_SCALAR_INT: -.. _class_VisualShaderNode_constant_PORT_TYPE_VECTOR: +.. _class_VisualShaderNode_constant_PORT_TYPE_VECTOR_2D: + +.. _class_VisualShaderNode_constant_PORT_TYPE_VECTOR_3D: .. _class_VisualShaderNode_constant_PORT_TYPE_BOOLEAN: @@ -83,15 +85,17 @@ enum **PortType**: - **PORT_TYPE_SCALAR_INT** = **1** --- Integer scalar. Translated to ``int`` type in shader code. -- **PORT_TYPE_VECTOR** = **2** --- 3D vector of floating-point values. Translated to ``vec3`` type in shader code. +- **PORT_TYPE_VECTOR_2D** = **2** --- 2D vector of floating-point values. Translated to ``vec2`` type in shader code. -- **PORT_TYPE_BOOLEAN** = **3** --- Boolean type. Translated to ``bool`` type in shader code. +- **PORT_TYPE_VECTOR_3D** = **3** --- 3D vector of floating-point values. Translated to ``vec3`` type in shader code. -- **PORT_TYPE_TRANSFORM** = **4** --- Transform type. Translated to ``mat4`` type in shader code. +- **PORT_TYPE_BOOLEAN** = **4** --- Boolean type. Translated to ``bool`` type in shader code. -- **PORT_TYPE_SAMPLER** = **5** --- Sampler type. Translated to reference of sampler uniform in shader code. Can only be used for input ports in non-uniform nodes. +- **PORT_TYPE_TRANSFORM** = **5** --- Transform type. Translated to ``mat4`` type in shader code. -- **PORT_TYPE_MAX** = **6** --- Represents the size of the :ref:`PortType` enum. +- **PORT_TYPE_SAMPLER** = **6** --- Sampler type. Translated to reference of sampler uniform in shader code. Can only be used for input ports in non-uniform nodes. + +- **PORT_TYPE_MAX** = **7** --- Represents the size of the :ref:`PortType` enum. Property Descriptions --------------------- @@ -155,7 +159,7 @@ Sets the default input ports values using an :ref:`Array` of the fo .. _class_VisualShaderNode_method_set_input_port_default_value: -- void **set_input_port_default_value** **(** :ref:`int` port, :ref:`Variant` value **)** +- void **set_input_port_default_value** **(** :ref:`int` port, :ref:`Variant` value, :ref:`Variant` prev_value=null **)** Sets the default value for the selected input ``port``. diff --git a/classes/class_visualshadernodeclamp.rst b/classes/class_visualshadernodeclamp.rst index 71e8a08b2..dbebc8b25 100644 --- a/classes/class_visualshadernodeclamp.rst +++ b/classes/class_visualshadernodeclamp.rst @@ -34,7 +34,9 @@ Enumerations .. _class_VisualShaderNodeClamp_constant_OP_TYPE_INT: -.. _class_VisualShaderNodeClamp_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeClamp_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeClamp_constant_OP_TYPE_VECTOR_3D: .. _class_VisualShaderNodeClamp_constant_OP_TYPE_MAX: @@ -44,9 +46,11 @@ enum **OpType**: - **OP_TYPE_INT** = **1** --- An integer scalar. -- **OP_TYPE_VECTOR** = **2** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **2** --- A 2D vector type. -- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **3** --- A 3D vector type. + +- **OP_TYPE_MAX** = **4** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodecompare.rst b/classes/class_visualshadernodecompare.rst index 8db0e93af..81eb22a62 100644 --- a/classes/class_visualshadernodecompare.rst +++ b/classes/class_visualshadernodecompare.rst @@ -38,7 +38,9 @@ Enumerations .. _class_VisualShaderNodeCompare_constant_CTYPE_SCALAR_INT: -.. _class_VisualShaderNodeCompare_constant_CTYPE_VECTOR: +.. _class_VisualShaderNodeCompare_constant_CTYPE_VECTOR_2D: + +.. _class_VisualShaderNodeCompare_constant_CTYPE_VECTOR_3D: .. _class_VisualShaderNodeCompare_constant_CTYPE_BOOLEAN: @@ -52,13 +54,15 @@ enum **ComparisonType**: - **CTYPE_SCALAR_INT** = **1** --- An integer scalar. -- **CTYPE_VECTOR** = **2** --- A 3D vector type. +- **CTYPE_VECTOR_2D** = **2** --- A 2D vector type. -- **CTYPE_BOOLEAN** = **3** --- A boolean type. +- **CTYPE_VECTOR_3D** = **3** --- A 3D vector type. -- **CTYPE_TRANSFORM** = **4** --- A transform (``mat4``) type. +- **CTYPE_BOOLEAN** = **4** --- A boolean type. -- **CTYPE_MAX** = **5** --- Represents the size of the :ref:`ComparisonType` enum. +- **CTYPE_TRANSFORM** = **5** --- A transform (``mat4``) type. + +- **CTYPE_MAX** = **6** --- Represents the size of the :ref:`ComparisonType` enum. ---- @@ -127,7 +131,7 @@ Property Descriptions | *Getter* | get_condition() | +-----------+----------------------+ -Extra condition which is applied if :ref:`type` is set to :ref:`CTYPE_VECTOR`. +Extra condition which is applied if :ref:`type` is set to :ref:`CTYPE_VECTOR_3D`. ---- diff --git a/classes/class_visualshadernodeconstant.rst b/classes/class_visualshadernodeconstant.rst index 08df7489d..afbc9e466 100644 --- a/classes/class_visualshadernodeconstant.rst +++ b/classes/class_visualshadernodeconstant.rst @@ -11,7 +11,7 @@ VisualShaderNodeConstant **Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`VisualShaderNodeBooleanConstant`, :ref:`VisualShaderNodeColorConstant`, :ref:`VisualShaderNodeFloatConstant`, :ref:`VisualShaderNodeIntConstant`, :ref:`VisualShaderNodeTransformConstant`, :ref:`VisualShaderNodeVec3Constant` +**Inherited By:** :ref:`VisualShaderNodeBooleanConstant`, :ref:`VisualShaderNodeColorConstant`, :ref:`VisualShaderNodeFloatConstant`, :ref:`VisualShaderNodeIntConstant`, :ref:`VisualShaderNodeTransformConstant`, :ref:`VisualShaderNodeVec2Constant`, :ref:`VisualShaderNodeVec3Constant` A base type for the constants within the visual shader graph. diff --git a/classes/class_visualshadernodederivativefunc.rst b/classes/class_visualshadernodederivativefunc.rst index e5290d366..afe32465a 100644 --- a/classes/class_visualshadernodederivativefunc.rst +++ b/classes/class_visualshadernodederivativefunc.rst @@ -34,7 +34,9 @@ Enumerations .. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_VECTOR_3D: .. _class_VisualShaderNodeDerivativeFunc_constant_OP_TYPE_MAX: @@ -42,9 +44,11 @@ enum **OpType**: - **OP_TYPE_SCALAR** = **0** --- A floating-point scalar. -- **OP_TYPE_VECTOR** = **1** --- A 3D vector type. +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_MAX** = **2** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **2** --- A 3D vector type. + +- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. ---- diff --git a/classes/class_visualshadernodefaceforward.rst b/classes/class_visualshadernodefaceforward.rst index 889aaccc3..309a0d773 100644 --- a/classes/class_visualshadernodefaceforward.rst +++ b/classes/class_visualshadernodefaceforward.rst @@ -9,7 +9,7 @@ VisualShaderNodeFaceForward =========================== -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Returns the vector that points in the same direction as a reference vector within the visual shader graph. diff --git a/classes/class_visualshadernodemix.rst b/classes/class_visualshadernodemix.rst index cd5f18cb1..71b1a5a8e 100644 --- a/classes/class_visualshadernodemix.rst +++ b/classes/class_visualshadernodemix.rst @@ -32,21 +32,29 @@ Enumerations .. _class_VisualShaderNodeMix_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR_2D: -.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR_SCALAR: +.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR_2D_SCALAR: + +.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR_3D: + +.. _class_VisualShaderNodeMix_constant_OP_TYPE_VECTOR_3D_SCALAR: .. _class_VisualShaderNodeMix_constant_OP_TYPE_MAX: enum **OpType**: -- **OP_TYPE_SCALAR** = **0** --- A scalar type. +- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar. -- **OP_TYPE_VECTOR** = **1** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_VECTOR_SCALAR** = **2** --- A vector type. ``weight`` port is using a scalar type. +- **OP_TYPE_VECTOR_2D_SCALAR** = **2** --- The ``a`` and ``b`` ports use a 2D vector type. The ``weight`` port uses a scalar type. -- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **3** --- A 3D vector type. + +- **OP_TYPE_VECTOR_3D_SCALAR** = **4** --- The ``a`` and ``b`` ports use a 3D vector type. The ``weight`` port uses a scalar type. + +- **OP_TYPE_MAX** = **5** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodemultiplyadd.rst b/classes/class_visualshadernodemultiplyadd.rst index 0402eca06..6d8282de4 100644 --- a/classes/class_visualshadernodemultiplyadd.rst +++ b/classes/class_visualshadernodemultiplyadd.rst @@ -32,17 +32,21 @@ Enumerations .. _class_VisualShaderNodeMultiplyAdd_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeMultiplyAdd_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeMultiplyAdd_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeMultiplyAdd_constant_OP_TYPE_VECTOR_3D: .. _class_VisualShaderNodeMultiplyAdd_constant_OP_TYPE_MAX: enum **OpType**: -- **OP_TYPE_SCALAR** = **0** --- A scalar type. +- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar type. -- **OP_TYPE_VECTOR** = **1** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_MAX** = **2** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **2** --- A 3D vector type. + +- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodeparticlerandomness.rst b/classes/class_visualshadernodeparticlerandomness.rst index aa562e4b1..f902842d6 100644 --- a/classes/class_visualshadernodeparticlerandomness.rst +++ b/classes/class_visualshadernodeparticlerandomness.rst @@ -27,17 +27,21 @@ Enumerations .. _class_VisualShaderNodeParticleRandomness_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeParticleRandomness_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeParticleRandomness_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeParticleRandomness_constant_OP_TYPE_VECTOR_3D: .. _class_VisualShaderNodeParticleRandomness_constant_OP_TYPE_MAX: enum **OpType**: -- **OP_TYPE_SCALAR** = **0** +- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar. -- **OP_TYPE_VECTOR** = **1** +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_MAX** = **2** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **2** --- A 3D vector type. + +- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- @@ -54,6 +58,8 @@ Property Descriptions | *Getter* | get_op_type() | +-----------+--------------------+ +A type of operands and returned value. + .. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` .. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` .. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` diff --git a/classes/class_visualshadernodesmoothstep.rst b/classes/class_visualshadernodesmoothstep.rst index 6679b5af4..649f9e558 100644 --- a/classes/class_visualshadernodesmoothstep.rst +++ b/classes/class_visualshadernodesmoothstep.rst @@ -34,21 +34,29 @@ Enumerations .. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR_2D: -.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR_SCALAR: +.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR_2D_SCALAR: + +.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR_3D: + +.. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_VECTOR_3D_SCALAR: .. _class_VisualShaderNodeSmoothStep_constant_OP_TYPE_MAX: enum **OpType**: -- **OP_TYPE_SCALAR** = **0** --- A scalar type. +- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar type. -- **OP_TYPE_VECTOR** = **1** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_VECTOR_SCALAR** = **2** --- A vector type. ``edge0`` and ``edge1`` are using a scalar type. +- **OP_TYPE_VECTOR_2D_SCALAR** = **2** --- The ``x`` port uses a 2D vector type. The first two ports use a floating-point scalar type. -- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **3** --- A 3D vector type. + +- **OP_TYPE_VECTOR_3D_SCALAR** = **4** --- The ``x`` port uses a 3D vector type. The first two ports use a floating-point scalar type. + +- **OP_TYPE_MAX** = **5** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodestep.rst b/classes/class_visualshadernodestep.rst index 4c6d75173..600b2b981 100644 --- a/classes/class_visualshadernodestep.rst +++ b/classes/class_visualshadernodestep.rst @@ -34,21 +34,29 @@ Enumerations .. _class_VisualShaderNodeStep_constant_OP_TYPE_SCALAR: -.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR_2D: -.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR_SCALAR: +.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR_2D_SCALAR: + +.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR_3D: + +.. _class_VisualShaderNodeStep_constant_OP_TYPE_VECTOR_3D_SCALAR: .. _class_VisualShaderNodeStep_constant_OP_TYPE_MAX: enum **OpType**: -- **OP_TYPE_SCALAR** = **0** --- A scalar type. +- **OP_TYPE_SCALAR** = **0** --- A floating-point scalar type. -- **OP_TYPE_VECTOR** = **1** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **1** --- A 2D vector type. -- **OP_TYPE_VECTOR_SCALAR** = **2** --- A vector type. ``edge`` port is using a scalar type. +- **OP_TYPE_VECTOR_2D_SCALAR** = **2** --- The ``x`` port uses a 2D vector type, while the ``edge`` port uses a floating-point scalar type. -- **OP_TYPE_MAX** = **3** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_VECTOR_3D** = **3** --- A 3D vector type. + +- **OP_TYPE_VECTOR_3D_SCALAR** = **4** --- The ``x`` port uses a 3D vector type, while the ``edge`` port uses a floating-point scalar type. + +- **OP_TYPE_MAX** = **5** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodeswitch.rst b/classes/class_visualshadernodeswitch.rst index c8e194647..2f912cdd8 100644 --- a/classes/class_visualshadernodeswitch.rst +++ b/classes/class_visualshadernodeswitch.rst @@ -34,7 +34,9 @@ Enumerations .. _class_VisualShaderNodeSwitch_constant_OP_TYPE_INT: -.. _class_VisualShaderNodeSwitch_constant_OP_TYPE_VECTOR: +.. _class_VisualShaderNodeSwitch_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeSwitch_constant_OP_TYPE_VECTOR_3D: .. _class_VisualShaderNodeSwitch_constant_OP_TYPE_BOOLEAN: @@ -48,13 +50,15 @@ enum **OpType**: - **OP_TYPE_INT** = **1** --- An integer scalar. -- **OP_TYPE_VECTOR** = **2** --- A vector type. +- **OP_TYPE_VECTOR_2D** = **2** --- A 2D vector type. -- **OP_TYPE_BOOLEAN** = **3** --- A boolean type. +- **OP_TYPE_VECTOR_3D** = **3** --- A 3D vector type. -- **OP_TYPE_TRANSFORM** = **4** --- A transform type. +- **OP_TYPE_BOOLEAN** = **4** --- A boolean type. -- **OP_TYPE_MAX** = **5** --- Represents the size of the :ref:`OpType` enum. +- **OP_TYPE_TRANSFORM** = **5** --- A transform type. + +- **OP_TYPE_MAX** = **6** --- Represents the size of the :ref:`OpType` enum. Property Descriptions --------------------- diff --git a/classes/class_visualshadernodeuniform.rst b/classes/class_visualshadernodeuniform.rst index 9ef770284..7e5bda2e2 100644 --- a/classes/class_visualshadernodeuniform.rst +++ b/classes/class_visualshadernodeuniform.rst @@ -11,7 +11,7 @@ VisualShaderNodeUniform **Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` -**Inherited By:** :ref:`VisualShaderNodeBooleanUniform`, :ref:`VisualShaderNodeColorUniform`, :ref:`VisualShaderNodeFloatUniform`, :ref:`VisualShaderNodeIntUniform`, :ref:`VisualShaderNodeTextureUniform`, :ref:`VisualShaderNodeTransformUniform`, :ref:`VisualShaderNodeVec3Uniform` +**Inherited By:** :ref:`VisualShaderNodeBooleanUniform`, :ref:`VisualShaderNodeColorUniform`, :ref:`VisualShaderNodeFloatUniform`, :ref:`VisualShaderNodeIntUniform`, :ref:`VisualShaderNodeTextureUniform`, :ref:`VisualShaderNodeTransformUniform`, :ref:`VisualShaderNodeVec2Uniform`, :ref:`VisualShaderNodeVec3Uniform` A base type for the uniforms within the visual shader graph. diff --git a/classes/class_visualshadernodevec2constant.rst b/classes/class_visualshadernodevec2constant.rst new file mode 100644 index 000000000..75ab7cf4e --- /dev/null +++ b/classes/class_visualshadernodevec2constant.rst @@ -0,0 +1,50 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the VisualShaderNodeVec2Constant.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_VisualShaderNodeVec2Constant: + +VisualShaderNodeVec2Constant +============================ + +**Inherits:** :ref:`VisualShaderNodeConstant` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +A :ref:`Vector2` constant to be used within the visual shader graph. + +Description +----------- + +A constant :ref:`Vector2`, which can be used as an input node. + +Properties +---------- + ++-------------------------------+-----------------------------------------------------------------------+-------------------+ +| :ref:`Vector2` | :ref:`constant` | ``Vector2(0, 0)`` | ++-------------------------------+-----------------------------------------------------------------------+-------------------+ + +Property Descriptions +--------------------- + +.. _class_VisualShaderNodeVec2Constant_property_constant: + +- :ref:`Vector2` **constant** + ++-----------+---------------------+ +| *Default* | ``Vector2(0, 0)`` | ++-----------+---------------------+ +| *Setter* | set_constant(value) | ++-----------+---------------------+ +| *Getter* | get_constant() | ++-----------+---------------------+ + +A :ref:`Vector2` constant which represents the state of this node. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_visualshadernodevec2uniform.rst b/classes/class_visualshadernodevec2uniform.rst new file mode 100644 index 000000000..51c4f0303 --- /dev/null +++ b/classes/class_visualshadernodevec2uniform.rst @@ -0,0 +1,68 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the VisualShaderNodeVec2Uniform.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_VisualShaderNodeVec2Uniform: + +VisualShaderNodeVec2Uniform +=========================== + +**Inherits:** :ref:`VisualShaderNodeUniform` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +A :ref:`Vector2` uniform to be used within the visual shader graph. + +Description +----------- + +Translated to ``uniform vec2`` in the shader language. + +Properties +---------- + ++-------------------------------+------------------------------------------------------------------------------------------------+-------------------+ +| :ref:`Vector2` | :ref:`default_value` | ``Vector2(0, 0)`` | ++-------------------------------+------------------------------------------------------------------------------------------------+-------------------+ +| :ref:`bool` | :ref:`default_value_enabled` | ``false`` | ++-------------------------------+------------------------------------------------------------------------------------------------+-------------------+ + +Property Descriptions +--------------------- + +.. _class_VisualShaderNodeVec2Uniform_property_default_value: + +- :ref:`Vector2` **default_value** + ++-----------+--------------------------+ +| *Default* | ``Vector2(0, 0)`` | ++-----------+--------------------------+ +| *Setter* | set_default_value(value) | ++-----------+--------------------------+ +| *Getter* | get_default_value() | ++-----------+--------------------------+ + +A default value to be assigned within the shader. + +---- + +.. _class_VisualShaderNodeVec2Uniform_property_default_value_enabled: + +- :ref:`bool` **default_value_enabled** + ++-----------+----------------------------------+ +| *Default* | ``false`` | ++-----------+----------------------------------+ +| *Setter* | set_default_value_enabled(value) | ++-----------+----------------------------------+ +| *Getter* | is_default_value_enabled() | ++-----------+----------------------------------+ + +Enables usage of the :ref:`default_value`. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_visualshadernodevectorbase.rst b/classes/class_visualshadernodevectorbase.rst new file mode 100644 index 000000000..0590e068a --- /dev/null +++ b/classes/class_visualshadernodevectorbase.rst @@ -0,0 +1,66 @@ +:github_url: hide + +.. Generated automatically by doc/tools/make_rst.py in Godot's source tree. +.. DO NOT EDIT THIS FILE, but the VisualShaderNodeVectorBase.xml source instead. +.. The source is found in doc/classes or modules//doc_classes. + +.. _class_VisualShaderNodeVectorBase: + +VisualShaderNodeVectorBase +========================== + +**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` + +**Inherited By:** :ref:`VisualShaderNodeFaceForward`, :ref:`VisualShaderNodeVectorCompose`, :ref:`VisualShaderNodeVectorDecompose`, :ref:`VisualShaderNodeVectorDistance`, :ref:`VisualShaderNodeVectorFunc`, :ref:`VisualShaderNodeVectorLen`, :ref:`VisualShaderNodeVectorOp` + +A base type for the nodes using different vector types within the visual shader graph. + +Properties +---------- + ++-------------------------------------------------------+-------------------------------------------------------------------+-------+ +| :ref:`OpType` | :ref:`op_type` | ``1`` | ++-------------------------------------------------------+-------------------------------------------------------------------+-------+ + +Enumerations +------------ + +.. _enum_VisualShaderNodeVectorBase_OpType: + +.. _class_VisualShaderNodeVectorBase_constant_OP_TYPE_VECTOR_2D: + +.. _class_VisualShaderNodeVectorBase_constant_OP_TYPE_VECTOR_3D: + +.. _class_VisualShaderNodeVectorBase_constant_OP_TYPE_MAX: + +enum **OpType**: + +- **OP_TYPE_VECTOR_2D** = **0** --- A 2D vector type. + +- **OP_TYPE_VECTOR_3D** = **1** --- A 3D vector type. + +- **OP_TYPE_MAX** = **2** --- Represents the size of the :ref:`OpType` enum. + +Property Descriptions +--------------------- + +.. _class_VisualShaderNodeVectorBase_property_op_type: + +- :ref:`OpType` **op_type** + ++-----------+--------------------+ +| *Default* | ``1`` | ++-----------+--------------------+ +| *Setter* | set_op_type(value) | ++-----------+--------------------+ +| *Getter* | get_op_type() | ++-----------+--------------------+ + +A base type. + +.. |virtual| replace:: :abbr:`virtual (This method should typically be overridden by the user to have any effect.)` +.. |const| replace:: :abbr:`const (This method has no side effects. It doesn't modify any of the instance's member variables.)` +.. |vararg| replace:: :abbr:`vararg (This method accepts any number of arguments after the ones described here.)` +.. |constructor| replace:: :abbr:`constructor (This method is used to construct a type.)` +.. |static| replace:: :abbr:`static (This method doesn't need an instance to be called, so it can be called directly using the class name.)` +.. |operator| replace:: :abbr:`operator (This method describes a valid operator to use with this type as left-hand operand.)` diff --git a/classes/class_visualshadernodevectorcompose.rst b/classes/class_visualshadernodevectorcompose.rst index a417f2812..b93a1db03 100644 --- a/classes/class_visualshadernodevectorcompose.rst +++ b/classes/class_visualshadernodevectorcompose.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorCompose ============================= -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Composes a :ref:`Vector3` from three scalars within the visual shader graph. diff --git a/classes/class_visualshadernodevectordecompose.rst b/classes/class_visualshadernodevectordecompose.rst index e7dab1030..782c434ea 100644 --- a/classes/class_visualshadernodevectordecompose.rst +++ b/classes/class_visualshadernodevectordecompose.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorDecompose =============================== -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Decomposes a :ref:`Vector3` into three scalars within the visual shader graph. diff --git a/classes/class_visualshadernodevectordistance.rst b/classes/class_visualshadernodevectordistance.rst index f49252703..290da3641 100644 --- a/classes/class_visualshadernodevectordistance.rst +++ b/classes/class_visualshadernodevectordistance.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorDistance ============================== -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Returns the distance between two points. To be used within the visual shader graph. diff --git a/classes/class_visualshadernodevectorfunc.rst b/classes/class_visualshadernodevectorfunc.rst index 43be7d1b1..27400fede 100644 --- a/classes/class_visualshadernodevectorfunc.rst +++ b/classes/class_visualshadernodevectorfunc.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorFunc ========================== -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` A vector function to be used within the visual shader graph. diff --git a/classes/class_visualshadernodevectorlen.rst b/classes/class_visualshadernodevectorlen.rst index 425e7400e..ab99eee5f 100644 --- a/classes/class_visualshadernodevectorlen.rst +++ b/classes/class_visualshadernodevectorlen.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorLen ========================= -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` Returns the length of a :ref:`Vector3` within the visual shader graph. diff --git a/classes/class_visualshadernodevectorop.rst b/classes/class_visualshadernodevectorop.rst index 4f1cf4f8b..7709bed41 100644 --- a/classes/class_visualshadernodevectorop.rst +++ b/classes/class_visualshadernodevectorop.rst @@ -9,7 +9,7 @@ VisualShaderNodeVectorOp ======================== -**Inherits:** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` +**Inherits:** :ref:`VisualShaderNodeVectorBase` **<** :ref:`VisualShaderNode` **<** :ref:`Resource` **<** :ref:`RefCounted` **<** :ref:`Object` A vector operator to be used within the visual shader graph. diff --git a/classes/class_voxelgi.rst b/classes/class_voxelgi.rst index e7b002f15..735b7d781 100644 --- a/classes/class_voxelgi.rst +++ b/classes/class_voxelgi.rst @@ -136,6 +136,8 @@ Bakes the effect from all :ref:`GeometryInstance3D`\ s \ **Note:** :ref:`bake` works from the editor and in exported projects. This makes it suitable for procedurally generated or user-built levels. Baking a ``VoxelGI`` node generally takes from 5 to 20 seconds in most scenes. Reducing :ref:`subdiv` can speed up baking. +\ **Note:** :ref:`GeometryInstance3D`\ s and :ref:`Light3D`\ s must be fully ready before :ref:`bake` is called. If you are procedurally creating those and some meshes or lights are missing from your baked ``VoxelGI``, use ``call_deferred("bake")`` instead of calling :ref:`bake` directly. + ---- .. _class_VoxelGI_method_debug_bake: diff --git a/classes/class_window.rst b/classes/class_window.rst index 700e868cd..73033cc38 100644 --- a/classes/class_window.rst +++ b/classes/class_window.rst @@ -271,6 +271,8 @@ Enumerations .. _class_Window_constant_MODE_FULLSCREEN: +.. _class_Window_constant_MODE_EXCLUSIVE_FULLSCREEN: + enum **Mode**: - **MODE_WINDOWED** = **0** --- Windowed mode. @@ -283,6 +285,12 @@ enum **Mode**: Regardless of the platform, enabling fullscreen will change the window size to match the monitor's size. Therefore, make sure your project supports :doc:`multiple resolutions <../tutorials/rendering/multiple_resolutions>` when enabling fullscreen mode. +- **MODE_EXCLUSIVE_FULLSCREEN** = **4** --- Exclusive fullscreen window mode. This mode is implemented on Windows only. On other platforms, it is equivalent to :ref:`MODE_FULLSCREEN`. + +Only one window in exclusive fullscreen mode can be visible on a given screen at a time. If multiple windows are in exclusive fullscreen mode for the same screen, the last one being set to this mode takes precedence. + +Regardless of the platform, enabling fullscreen will change the window size to match the monitor's size. Therefore, make sure your project supports :doc:`multiple resolutions <../tutorials/rendering/multiple_resolutions>` when enabling fullscreen mode. + ---- .. _enum_Window_Flags: @@ -371,7 +379,7 @@ enum **ContentScaleAspect**: enum **LayoutDirection**: -- **LAYOUT_DIRECTION_INHERITED** = **0** --- Automatic layout direction, determined from the parent control layout direction. +- **LAYOUT_DIRECTION_INHERITED** = **0** --- Automatic layout direction, determined from the parent window layout direction. - **LAYOUT_DIRECTION_LOCALE** = **1** --- Automatic layout direction, determined from the current locale.