Godot 4.6 to 4.7: every API change, class by class

By Eduardo Orellana · Updated

Between Godot 4.6.3 and 4.7.2, 13 classes were added and 54 methods, properties, signals or constants were removed. Every change is listed below by class, read from the class reference both releases ship.

The numbers

13 new classes, 0 removed. 141 existing classes changed: 529 methods, properties, signals and constants added, 54 removed, 105 with a new signature, type or default, and 186 newly deprecated.

In each list, + is added, - is removed, ~ changed from the left to the right, ! newly deprecated with the reason the class reference gives, and * no longer experimental. Signatures are written the way the class reference states them: parameters with their types and defaults, then the return type.

New classes in Godot 4.7

AccessibilityServer (extends Object): A server interface for screen reader support.
AreaLight3D (extends Light3D): An area light, such as a neon light tube or a screen.
AwaitTweener (extends Tweener): Awaits a specified signal.
BlitMaterial (extends Material): A material that processes blit calls to a DrawableTexture.
DrawableTexture2D (extends Texture2D): A 2D texture that supports drawing to itself via Blit calls.
GDScriptLanguageProtocol (extends JSONRPC): GDScript language server.
GDScriptTextDocument (extends RefCounted): Document related language server functionality.
GDScriptWorkspace (extends RefCounted): Workspace related language server functionality.
RDAccelerationStructureGeometry (extends RefCounted): Acceleration structure geometry (used by RenderingDevice).
RDAccelerationStructureInstance (extends RefCounted): Acceleration structure instance (used by RenderingDevice).
RDHitGroup (extends RefCounted): Hit group (used by RenderingDevice).
RDPipelineShader (extends RefCounted): Pipeline shader (used by RenderingDevice).
VirtualJoystick (extends Control): A virtual joystick control for touchscreen devices.

@GDScript

! method type_exists deprecated: Use ClassDB.class_exists() instead.

@GlobalScope

+ property AccessibilityServer: AccessibilityServer
+ property GDScriptLanguageProtocol: GDScriptLanguageProtocol
+ constant INT16_MAX = 32767
+ constant INT16_MIN = -32768
+ constant INT32_MAX = 2147483647
+ constant INT32_MIN = -2147483648
+ constant INT64_MAX = 9223372036854775807
+ constant INT64_MIN = -9223372036854775808
+ constant INT8_MAX = 127
+ constant INT8_MIN = -128
+ constant JoyButton.JOY_BUTTON_MISC2 = 21
+ constant JoyButton.JOY_BUTTON_MISC3 = 22
+ constant JoyButton.JOY_BUTTON_MISC4 = 23
+ constant JoyButton.JOY_BUTTON_MISC5 = 24
+ constant JoyButton.JOY_BUTTON_MISC6 = 25
~ constant JoyButton.JOY_BUTTON_SDL_MAX = 21  →  JoyButton.JOY_BUTTON_SDL_MAX = 26
+ constant UINT16_MAX = 65535
+ constant UINT32_MAX = 4294967295
+ constant UINT8_MAX = 255

AnimationLibrary

~ signal animation_added(name: StringName)  →  animation_added(anim_name: StringName)
~ signal animation_changed(name: StringName)  →  animation_changed(anim_name: StringName)
~ signal animation_removed(name: StringName)  →  animation_removed(anim_name: StringName)
~ signal animation_renamed(name: StringName, to_name: StringName)  →  animation_renamed(old_name: StringName, new_name: StringName)

AnimationNode

~ signal animation_node_removed(object_id: int, name: String)  →  animation_node_removed(object_id: int, node_name: String)
+ signal node_updated(object_id: int)

AnimationNodeBlendSpace1D

~ method add_blend_point(node: AnimationRootNode, pos: float, at_index: int = -1) -> void  →  add_blend_point(node: AnimationRootNode, pos: float, at_index: int = -1, name: StringName = &"") -> void
+ method find_blend_point_by_name(name: StringName) -> int const
+ method get_blend_point_name(point: int) -> StringName const
+ method reorder_blend_point(from_index: int, to_index: int) -> void
+ method set_blend_point_name(point: int, name: StringName) -> void
+ property cyclic_length: float = 0.0
~ property sync: bool = false  →  sync: bool
! property sync deprecated: Use sync_mode instead.
+ property sync_mode: int = 0
+ constant SyncMode.SYNC_MODE_CYCLIC_CONSTANT = 3
+ constant SyncMode.SYNC_MODE_CYCLIC_MUTABLE = 2
+ constant SyncMode.SYNC_MODE_INDEPENDENT = 1
+ constant SyncMode.SYNC_MODE_NONE = 0

AnimationNodeBlendSpace2D

~ method add_blend_point(node: AnimationRootNode, pos: Vector2, at_index: int = -1) -> void  →  add_blend_point(node: AnimationRootNode, pos: Vector2, at_index: int = -1, name: StringName = &"") -> void
+ method find_blend_point_by_name(name: StringName) -> int const
+ method get_blend_point_name(point: int) -> StringName const
+ method reorder_blend_point(from_index: int, to_index: int) -> void
+ method set_blend_point_name(point: int, name: StringName) -> void
+ property cyclic_length: float = 0.0
~ property sync: bool = false  →  sync: bool
! property sync deprecated: Use sync_mode instead.
+ property sync_mode: int = 0
+ constant SyncMode.SYNC_MODE_CYCLIC_CONSTANT = 3
+ constant SyncMode.SYNC_MODE_CYCLIC_MUTABLE = 2
+ constant SyncMode.SYNC_MODE_INDEPENDENT = 1
+ constant SyncMode.SYNC_MODE_NONE = 0

AnimationPlayer

~ signal current_animation_changed(name: StringName)  →  current_animation_changed(anim_name: StringName)

AudioEffectInstance

~ method _process(src_buffer: const void*, dst_buffer: AudioFrame*, frame_count: int) -> void virtual required  →  _process(src_buffer: const void*, r_dst_buffer: AudioFrame*, frame_count: int) -> void virtual required

AudioEffectSpectrumAnalyzer

- property tap_back_pos: float = 0.01

AudioStreamInteractive

+ constant TransitionToTime.TRANSITION_TO_TIME_PREVIOUS_POSITION = 2

AudioStreamPlayer2D

~ property area_mask: int = 1  →  area_mask: int = 0

AudioStreamPlayer3D

~ property area_mask: int = 1  →  area_mask: int = 0

AudioStreamRandomizer

+ property stream_{index}/stream: AudioStream
+ property stream_{index}/weight: float = 1.0

Basis

+ method is_orthonormal() -> bool const

CPUParticles2D

~ method request_particles_process(process_time: float) -> void  →  request_particles_process(process_time: float, process_time_residual: float = 0.0) -> void

CPUParticles3D

~ method request_particles_process(process_time: float) -> void  →  request_particles_process(process_time: float, process_time_residual: float = 0.0) -> void

CSGShape3D

+ property autosmooth: bool = false
+ property smoothing_angle: float = 50.0

CameraFeed

+ method _get_formats() -> Array virtual const
+ method _set_format(index: int, parameters: Dictionary) -> bool virtual

CanvasItem

+ property oversampling_with_scale: int = 0
+ constant OversamplingWithScale.OVERSAMPLING_WITH_SCALE_DISABLED = 1
+ constant OversamplingWithScale.OVERSAMPLING_WITH_SCALE_ENABLED = 2
+ constant OversamplingWithScale.OVERSAMPLING_WITH_SCALE_MAX = 3
+ constant OversamplingWithScale.OVERSAMPLING_WITH_SCALE_PARENT_NODE = 0

CodeEdit

+ method join_lines(line_ending: String = " ") -> void
+ constant CodeCompletionKind.KIND_KEYWORD = 10

CollisionObject2D

+ method get_shape_owner_one_way_collision_direction(owner_id: int) -> Vector2 const
+ method shape_owner_set_one_way_collision_direction(owner_id: int, direction: Vector2) -> void

CollisionPolygon2D

+ property one_way_collision_direction: Vector2 = Vector2(0, 1)

CollisionShape2D

+ property one_way_collision_direction: Vector2 = Vector2(0, 1)

Container

+ property accessibility_region: bool = false
+ property propagate_maximum_size: bool = true

Control

+ method _get_cursor_shape(at_position: Vector2) -> int virtual const
+ method _get_maximum_size() -> Vector2 virtual const
+ method _get_tooltip_auto_translate_mode_at(at_position: Vector2) -> int virtual const
+ method get_bound_minimum_size() -> Vector2 const
+ method get_combined_maximum_size() -> Vector2 const
~ method get_cursor_shape(position: Vector2 = Vector2(0, 0)) -> int const  →  get_cursor_shape(at_position: Vector2 = Vector2(0, 0)) -> int const
+ method get_maximum_size() -> Vector2 const
+ method update_maximum_size() -> void
+ property custom_maximum_size: Vector2 = Vector2(-1, -1)
+ property offset_transform_enabled: bool = false
+ property offset_transform_pivot: Vector2 = Vector2(0, 0)
+ property offset_transform_pivot_ratio: Vector2 = Vector2(0.5, 0.5)
+ property offset_transform_position: Vector2 = Vector2(0, 0)
+ property offset_transform_position_ratio: Vector2 = Vector2(0, 0)
+ property offset_transform_rotation: float = 0.0
+ property offset_transform_scale: Vector2 = Vector2(1, 1)
+ property offset_transform_visual_only: bool = true
+ property propagate_maximum_size: bool = false
+ property translation_context: StringName = &""
+ signal maximum_size_changed()

Curve

+ property point_{index}/left_mode: int = 0
+ property point_{index}/left_tangent: float = 0.0
+ property point_{index}/position: Vector2 = Vector2(0, 0)
+ property point_{index}/right_mode: int = 0
+ property point_{index}/right_tangent: float = 0.0

Curve2D

+ property point_{index}/in: Vector2 = Vector2(0, 0)
+ property point_{index}/out: Vector2 = Vector2(0, 0)
+ property point_{index}/position: Vector2 = Vector2(0, 0)

Curve3D

+ property point_{index}/in: Vector3 = Vector3(0, 0, 0)
+ property point_{index}/out: Vector3 = Vector3(0, 0, 0)
+ property point_{index}/position: Vector3 = Vector3(0, 0, 0)
+ property point_{index}/tilt: float = 0.0

DPITexture

+ property fix_alpha_border: bool = false
+ property premult_alpha: bool = false

DirAccess

+ method get_drive_label(idx: int) -> String static

DisplayServer

! method accessibility_create_element deprecated: Use AccessibilityServer instead.
! method accessibility_create_sub_element deprecated: Use AccessibilityServer instead.
! method accessibility_create_sub_text_edit_elements deprecated: Use AccessibilityServer instead.
! method accessibility_element_get_meta deprecated: Use AccessibilityServer instead.
! method accessibility_element_set_meta deprecated: Use AccessibilityServer instead.
! method accessibility_free_element deprecated: Use AccessibilityServer instead.
! method accessibility_get_window_root deprecated: Use AccessibilityServer instead.
! method accessibility_has_element deprecated: Use AccessibilityServer instead.
! method accessibility_set_window_focused deprecated: Use AccessibilityServer instead.
! method accessibility_set_window_rect deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_action deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_child deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_custom_action deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_controls deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_described_by deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_details deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_flow_to deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_labeled_by deprecated: Use AccessibilityServer instead.
! method accessibility_update_add_related_radio_group deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_active_descendant deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_background_color deprecated: Use AccessibilityServer instead.
~ method accessibility_update_set_bounds(id: RID, p_rect: Rect2) -> void  →  accessibility_update_set_bounds(id: RID, rect: Rect2) -> void
! method accessibility_update_set_bounds deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_checked deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_classname deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_color_value deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_description deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_error_message deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_extra_info deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_flag deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_focus deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_foreground_color deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_in_page_link_target deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_language deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_item_count deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_item_expanded deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_item_index deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_item_level deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_item_selected deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_list_orientation deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_live deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_member_of deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_name deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_next_on_line deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_num_jump deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_num_range deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_num_step deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_num_value deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_placeholder deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_popup_type deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_previous_on_line deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_role deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_role_description deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_scroll_x deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_scroll_x_range deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_scroll_y deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_scroll_y_range deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_shortcut deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_state_description deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_cell_position deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_cell_span deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_column_count deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_column_index deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_row_count deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_table_row_index deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_text_align deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_text_decorations deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_text_orientation deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_text_selection deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_tooltip deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_transform deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_url deprecated: Use AccessibilityServer instead.
! method accessibility_update_set_value deprecated: Use AccessibilityServer instead.
+ method is_in_pip_mode(window_id: int = 0) -> bool
+ method pip_mode_enter(window_id: int = 0) -> void
+ method pip_mode_set_aspect_ratio(numerator: int, denominator: int, window_id: int = 0) -> void
+ method pip_mode_set_auto_enter_on_background(auto_enter_on_background: bool, window_id: int = 0) -> void
+ method window_get_hdr_output_current_max_luminance(window_id: int = 0) -> float const
+ method window_get_hdr_output_current_reference_luminance(window_id: int = 0) -> float const
+ method window_get_hdr_output_max_luminance(window_id: int = 0) -> float const
+ method window_get_hdr_output_reference_luminance(window_id: int = 0) -> float const
+ method window_get_output_max_linear_value(window_id: int = 0) -> float const
+ method window_is_hdr_output_enabled(window_id: int = 0) -> bool const
+ method window_is_hdr_output_requested(window_id: int = 0) -> bool const
+ method window_is_hdr_output_supported(window_id: int = 0) -> bool const
+ method window_request_hdr_output(enable: bool, window_id: int = 0) -> void
+ method window_set_hdr_output_max_luminance(max_luminance: float, window_id: int = 0) -> void
+ method window_set_hdr_output_reference_luminance(reference_luminance: float, window_id: int = 0) -> void
+ method window_set_icon(icon: Image, window_id: int = 0) -> void
+ method window_set_taskbar_progress_state(state: int, window_id: int = 0) -> void
+ method window_set_taskbar_progress_value(value: float, window_id: int = 0) -> void
+ signal orientation_changed(orientation: int)
! constant ACTION_BLUR deprecated: Use AccessibilityServer instead.
! constant ACTION_CLICK deprecated: Use AccessibilityServer instead.
! constant ACTION_COLLAPSE deprecated: Use AccessibilityServer instead.
! constant ACTION_CUSTOM deprecated: Use AccessibilityServer instead.
! constant ACTION_DECREMENT deprecated: Use AccessibilityServer instead.
! constant ACTION_EXPAND deprecated: Use AccessibilityServer instead.
! constant ACTION_FOCUS deprecated: Use AccessibilityServer instead.
! constant ACTION_HIDE_TOOLTIP deprecated: Use AccessibilityServer instead.
! constant ACTION_INCREMENT deprecated: Use AccessibilityServer instead.
! constant ACTION_REPLACE_SELECTED_TEXT deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_BACKWARD deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_DOWN deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_FORWARD deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_INTO_VIEW deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_LEFT deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_RIGHT deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_TO_POINT deprecated: Use AccessibilityServer instead.
! constant ACTION_SCROLL_UP deprecated: Use AccessibilityServer instead.
! constant ACTION_SET_SCROLL_OFFSET deprecated: Use AccessibilityServer instead.
! constant ACTION_SET_TEXT_SELECTION deprecated: Use AccessibilityServer instead.
! constant ACTION_SET_VALUE deprecated: Use AccessibilityServer instead.
! constant ACTION_SHOW_CONTEXT_MENU deprecated: Use AccessibilityServer instead.
! constant ACTION_SHOW_TOOLTIP deprecated: Use AccessibilityServer instead.
+ constant Feature.FEATURE_HDR_OUTPUT = 35
+ constant Feature.FEATURE_PIP_MODE = 36
! constant FLAG_BUSY deprecated: Use AccessibilityServer instead.
! constant FLAG_CLIPS_CHILDREN deprecated: Use AccessibilityServer instead.
! constant FLAG_DISABLED deprecated: Use AccessibilityServer instead.
! constant FLAG_HIDDEN deprecated: Use AccessibilityServer instead.
! constant FLAG_MODAL deprecated: Use AccessibilityServer instead.
! constant FLAG_MULTISELECTABLE deprecated: Use AccessibilityServer instead.
! constant FLAG_READONLY deprecated: Use AccessibilityServer instead.
! constant FLAG_REQUIRED deprecated: Use AccessibilityServer instead.
! constant FLAG_TOUCH_PASSTHROUGH deprecated: Use AccessibilityServer instead.
! constant FLAG_VISITED deprecated: Use AccessibilityServer instead.
+ constant HandleType.GLX_FBCONFIG = 7
+ constant HandleType.GLX_VISUALID = 6
! constant LIVE_ASSERTIVE deprecated: Use AccessibilityServer instead.
! constant LIVE_OFF deprecated: Use AccessibilityServer instead.
! constant LIVE_POLITE deprecated: Use AccessibilityServer instead.
! constant POPUP_DIALOG deprecated: Use AccessibilityServer instead.
! constant POPUP_LIST deprecated: Use AccessibilityServer instead.
! constant POPUP_MENU deprecated: Use AccessibilityServer instead.
! constant POPUP_TREE deprecated: Use AccessibilityServer instead.
+ constant ProgressState.PROGRESS_STATE_ERROR = 3
+ constant ProgressState.PROGRESS_STATE_INDETERMINATE = 1
+ constant ProgressState.PROGRESS_STATE_NOPROGRESS = 0
+ constant ProgressState.PROGRESS_STATE_NORMAL = 2
+ constant ProgressState.PROGRESS_STATE_PAUSED = 4
! constant ROLE_AUDIO deprecated: Use AccessibilityServer instead.
! constant ROLE_BUTTON deprecated: Use AccessibilityServer instead.
! constant ROLE_CELL deprecated: Use AccessibilityServer instead.
! constant ROLE_CHECK_BOX deprecated: Use AccessibilityServer instead.
! constant ROLE_CHECK_BUTTON deprecated: Use AccessibilityServer instead.
! constant ROLE_COLOR_PICKER deprecated: Use AccessibilityServer instead.
! constant ROLE_COLUMN_HEADER deprecated: Use AccessibilityServer instead.
! constant ROLE_CONTAINER deprecated: Use AccessibilityServer instead.
! constant ROLE_DEFAULT_BUTTON deprecated: Use AccessibilityServer instead.
! constant ROLE_DIALOG deprecated: Use AccessibilityServer instead.
! constant ROLE_IMAGE deprecated: Use AccessibilityServer instead.
! constant ROLE_LINK deprecated: Use AccessibilityServer instead.
! constant ROLE_LIST deprecated: Use AccessibilityServer instead.
! constant ROLE_LIST_BOX deprecated: Use AccessibilityServer instead.
! constant ROLE_LIST_BOX_OPTION deprecated: Use AccessibilityServer instead.
! constant ROLE_LIST_ITEM deprecated: Use AccessibilityServer instead.
! constant ROLE_MENU deprecated: Use AccessibilityServer instead.
! constant ROLE_MENU_BAR deprecated: Use AccessibilityServer instead.
! constant ROLE_MENU_ITEM deprecated: Use AccessibilityServer instead.
! constant ROLE_MENU_ITEM_CHECK_BOX deprecated: Use AccessibilityServer instead.
! constant ROLE_MENU_ITEM_RADIO deprecated: Use AccessibilityServer instead.
! constant ROLE_MULTILINE_TEXT_FIELD deprecated: Use AccessibilityServer instead.
! constant ROLE_PANEL deprecated: Use AccessibilityServer instead.
! constant ROLE_PROGRESS_INDICATOR deprecated: Use AccessibilityServer instead.
! constant ROLE_RADIO_BUTTON deprecated: Use AccessibilityServer instead.
+ constant AccessibilityRole.ROLE_REGION = 46
! constant ROLE_ROW deprecated: Use AccessibilityServer instead.
! constant ROLE_ROW_GROUP deprecated: Use AccessibilityServer instead.
! constant ROLE_ROW_HEADER deprecated: Use AccessibilityServer instead.
! constant ROLE_SCROLL_BAR deprecated: Use AccessibilityServer instead.
! constant ROLE_SCROLL_VIEW deprecated: Use AccessibilityServer instead.
! constant ROLE_SLIDER deprecated: Use AccessibilityServer instead.
! constant ROLE_SPIN_BUTTON deprecated: Use AccessibilityServer instead.
! constant ROLE_SPLITTER deprecated: Use AccessibilityServer instead.
! constant ROLE_STATIC_TEXT deprecated: Use AccessibilityServer instead.
! constant ROLE_TAB deprecated: Use AccessibilityServer instead.
! constant ROLE_TABLE deprecated: Use AccessibilityServer instead.
! constant ROLE_TAB_BAR deprecated: Use AccessibilityServer instead.
! constant ROLE_TAB_PANEL deprecated: Use AccessibilityServer instead.
! constant ROLE_TEXT_FIELD deprecated: Use AccessibilityServer instead.
+ constant AccessibilityRole.ROLE_TEXT_RUN = 47
! constant ROLE_TITLE_BAR deprecated: Use AccessibilityServer instead.
! constant ROLE_TOOLTIP deprecated: Use AccessibilityServer instead.
! constant ROLE_TREE deprecated: Use AccessibilityServer instead.
! constant ROLE_TREE_ITEM deprecated: Use AccessibilityServer instead.
! constant ROLE_UNKNOWN deprecated: Use AccessibilityServer instead.
! constant ROLE_VIDEO deprecated: Use AccessibilityServer instead.
! constant ROLE_WINDOW deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_BOTTOM_EDGE deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_BOTTOM_RIGHT deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_LEFT_EDGE deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_RIGHT_EDGE deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_TOP_EDGE deprecated: Use AccessibilityServer instead.
! constant SCROLL_HINT_TOP_LEFT deprecated: Use AccessibilityServer instead.
! constant SCROLL_UNIT_ITEM deprecated: Use AccessibilityServer instead.
! constant SCROLL_UNIT_PAGE deprecated: Use AccessibilityServer instead.
+ constant WindowEvent.WINDOW_EVENT_OUTPUT_MAX_LINEAR_VALUE_CHANGED = 9

EditorCommandPalette

- property dialog_hide_on_ok: bool = false

EditorContextMenuPlugin

+ constant ContextMenuSlot.CONTEXT_SLOT_INSPECTOR_PROPERTY = 7

EditorDock

+ property accessibility_region: bool = true
+ signal opened()
+ constant DockSlot.DOCK_SLOT_BOTTOM_L = 9
+ constant DockSlot.DOCK_SLOT_BOTTOM_R = 10
~ constant DockSlot.DOCK_SLOT_MAX = 9  →  DockSlot.DOCK_SLOT_MAX = 11

EditorExportPlatform

~ method export_project(preset: EditorExportPreset, debug: bool, path: String, flags: int = 0) -> int  →  export_project(preset: EditorExportPreset, debug: bool, path: String, flags: int = 0, notify: bool = true) -> int

EditorExportPlugin

+ method _end_generate_apple_embedded_project(path: String, will_build_archive: bool) -> void virtual

EditorFileSystem

+ method is_importing() -> bool const

EditorInspector

+ method collapse_all_folding() -> void
+ method create_default_inspector(filter_line_edit: LineEdit = null) -> EditorInspector static
+ method expand_all_folding() -> void
+ method expand_revertable() -> void

EditorInterface

+ method get_unsaved_scenes() -> PackedStringArray const

EditorNode3DGizmoPlugin

+ method _can_commit_handle_on_click() -> bool virtual const

EditorSceneFormatImporter

~ constant IMPORT_ANIMATION = 2  →  ImportFlags.IMPORT_ANIMATION = 2
~ constant IMPORT_DISCARD_MESHES_AND_MATERIALS = 32  →  ImportFlags.IMPORT_DISCARD_MESHES_AND_MATERIALS = 32
~ constant IMPORT_FAIL_ON_MISSING_DEPENDENCIES = 4  →  ImportFlags.IMPORT_FAIL_ON_MISSING_DEPENDENCIES = 4
~ constant IMPORT_FORCE_DISABLE_MESH_COMPRESSION = 64  →  ImportFlags.IMPORT_FORCE_DISABLE_MESH_COMPRESSION = 64
~ constant IMPORT_GENERATE_TANGENT_ARRAYS = 8  →  ImportFlags.IMPORT_GENERATE_TANGENT_ARRAYS = 8
~ constant IMPORT_SCENE = 1  →  ImportFlags.IMPORT_SCENE = 1
~ constant IMPORT_USE_NAMED_SKIN_BINDS = 16  →  ImportFlags.IMPORT_USE_NAMED_SKIN_BINDS = 16

EditorSettings

+ property asset_store/available_urls: Dictionary
+ property asset_store/use_threads: bool
+ property docks/filesystem/ask_before_moving_files: bool
+ property docks/filesystem/automatically_open_created_scripts: bool
+ property editors/2d/locked_selection_rectangle_color: Color
+ property editors/2d/selection_rectangle_color: Color
+ property editors/3d/freelook/freelook_invert_y_axis: bool
+ property editors/3d/view_plane_rotation_gizmo_scale: float
+ property editors/3d_gizmos/gizmo_settings/show_collision_shapes_only_when_selected: bool
+ property editors/audio_buses/active_max_db_color: Color
+ property editors/audio_buses/active_min_db_color: Color
+ property editors/audio_buses/active_normalized_db_color: Color
+ property editors/audio_buses/inactive_max_db_color: Color
+ property editors/audio_buses/inactive_min_db_color: Color
+ property editors/audio_buses/inactive_normalized_db_color: Color
+ property editors/audio_buses/tint_over_color: Color
+ property editors/audio_buses/tint_under_color: Color
+ property interface/accessibility/property_descriptions: bool
+ property interface/editor/appearance/accept_dialog_cancel_ok_buttons: int
+ property interface/editor/appearance/collapse_main_menu: bool
+ property interface/editor/appearance/custom_display_scale: float
+ property interface/editor/appearance/display_scale: int
+ property interface/editor/appearance/editor_screen: int
+ property interface/editor/appearance/expand_to_title: bool
+ property interface/editor/appearance/project_manager_screen: int
+ property interface/editor/appearance/show_renderer_selector: bool
+ property interface/editor/appearance/show_update_spinner: int
+ property interface/editor/appearance/use_embedded_menu: bool
+ property interface/editor/appearance/use_native_file_dialogs: bool
+ property interface/editor/behavior/automatically_open_screenshots: bool
+ property interface/editor/behavior/import_resources_when_unfocused: bool
+ property interface/editor/behavior/save_each_scene_on_quit: bool
+ property interface/editor/behavior/save_on_focus_loss: bool
+ property interface/editor/behavior/separate_distraction_mode: bool
+ property interface/editor/behavior/show_internal_errors_in_toast_notifications: int
+ property interface/editor/display/keep_screen_on: bool
+ property interface/editor/display/single_window_mode: bool
+ property interface/editor/display/update_continuously: bool
+ property interface/editor/display/vsync_mode: int
+ property interface/editor/docks/bottom_dock_tab_style: int
+ property interface/editor/docks/dock_tab_style: int
+ property interface/editor/fonts/code_font: String
+ property interface/editor/fonts/code_font_contextual_ligatures: int
+ property interface/editor/fonts/code_font_custom_opentype_features: String
+ property interface/editor/fonts/code_font_custom_variations: String
+ property interface/editor/fonts/code_font_size: int
+ property interface/editor/fonts/font_allow_msdf: bool
+ property interface/editor/fonts/font_antialiasing: int
+ property interface/editor/fonts/font_disable_embedded_bitmaps: bool
+ property interface/editor/fonts/font_hinting: int
+ property interface/editor/fonts/font_subpixel_positioning: int
+ property interface/editor/fonts/main_font: String
+ property interface/editor/fonts/main_font_bold: String
+ property interface/editor/fonts/main_font_custom_opentype_features: String
+ property interface/editor/fonts/main_font_size: int
+ property interface/editor/input/mouse_extra_buttons_navigate_history: bool
+ property interface/editor/input/tablet_driver: int
+ property interface/editor/localization/editor_language: String
+ property interface/editor/localization/localize_settings: bool
+ property interface/editor/localization/ui_layout_direction: int
+ property interface/editor/timers/dragging_hover_wait_seconds: float
+ property interface/editor/timers/low_processor_mode_sleep_usec: int
+ property interface/editor/timers/unfocused_low_processor_mode_sleep_usec: int
+ property interface/theme/use_monospace_font_for_editor_symbols: bool
+ property interface/touchscreen/haptic_on_long_press: bool
+ property network/language_server/enable_smart_resolve: bool
+ property network/language_server/poll_limit_usec: int
+ property network/language_server/remote_host: String
+ property network/language_server/remote_port: int
+ property network/language_server/show_native_symbols_in_editor: bool
+ property network/language_server/use_thread: bool
+ property text_editor/appearance/drag_and_drop_info/show_drag_and_drop_info: bool
- property asset_library/use_threads: bool
- property interface/editor/accept_dialog_cancel_ok_buttons: int
- property interface/editor/automatically_open_screenshots: bool
- property interface/editor/bottom_dock_tab_style: int
- property interface/editor/code_font: String
- property interface/editor/code_font_contextual_ligatures: int
- property interface/editor/code_font_custom_opentype_features: String
- property interface/editor/code_font_custom_variations: String
- property interface/editor/code_font_size: int
- property interface/editor/collapse_main_menu: bool
- property interface/editor/custom_display_scale: float
- property interface/editor/display_scale: int
- property interface/editor/dock_tab_style: int
- property interface/editor/dragging_hover_wait_seconds: float
- property interface/editor/editor_language: String
- property interface/editor/editor_screen: int
- property interface/editor/expand_to_title: bool
- property interface/editor/font_allow_msdf: bool
- property interface/editor/font_antialiasing: int
- property interface/editor/font_disable_embedded_bitmaps: bool
- property interface/editor/font_hinting: int
- property interface/editor/font_subpixel_positioning: int
- property interface/editor/import_resources_when_unfocused: bool
- property interface/editor/keep_screen_on: bool
- property interface/editor/localize_settings: bool
- property interface/editor/low_processor_mode_sleep_usec: int
- property interface/editor/main_font: String
- property interface/editor/main_font_bold: String
- property interface/editor/main_font_custom_opentype_features: String
- property interface/editor/main_font_size: int
- property interface/editor/mouse_extra_buttons_navigate_history: bool
- property interface/editor/project_manager_screen: int
- property interface/editor/save_each_scene_on_quit: bool
- property interface/editor/save_on_focus_loss: bool
- property interface/editor/separate_distraction_mode: bool
- property interface/editor/show_internal_errors_in_toast_notifications: int
- property interface/editor/show_update_spinner: int
- property interface/editor/single_window_mode: bool
- property interface/editor/tablet_driver: int
- property interface/editor/ui_layout_direction: int
- property interface/editor/unfocused_low_processor_mode_sleep_usec: int
- property interface/editor/update_continuously: bool
- property interface/editor/use_embedded_menu: bool
- property interface/editor/use_native_file_dialogs: bool
- property interface/editor/vsync_mode: int
- property interface/editors/show_scene_tree_root_selection: bool

EditorSpinSlider

+ property deferred_drag_mode: bool = false

EditorTranslationParserPlugin

+ method _customize_strings(strings: PackedStringArray[]) -> PackedStringArray[] virtual const

EditorVCSInterface

+ method _allow_amends() -> bool virtual
~ method _commit(msg: String) -> void virtual required  →  _commit(msg: String, amend: bool) -> void virtual

FileDialog

+ property option_{index}/default: int = 0
+ property option_{index}/name: String = ""
+ property option_{index}/values: PackedStringArray = PackedStringArray()

Font

~ method find_variation(variation_coordinates: Dictionary, face_index: int = 0, strength: float = 0.0, transform: Transform2D = Transform2D(1, 0, 0, 1, 0, 0), spacing_top: int = 0, spacing_bottom: int = 0, spacing_space: int = 0, spacing_glyph: int = 0, baseline_offset: float = 0.0) -> RID const  →  find_variation(variation_coordinates: Dictionary, face_index: int = 0, strength: float = 0.0, transform: Transform2D = Transform2D(1, 0, 0, 1, 0, 0), spacing_top: int = 0, spacing_bottom: int = 0, spacing_space: int = 0, spacing_glyph: int = 0, baseline_offset: float = 0.0, palette_index: int = 0, custom_colors: PackedColorArray = PackedColorArray()) -> RID const
+ method get_palette_colors(index: int) -> PackedColorArray const
+ method get_palette_count() -> int const
+ method get_palette_name(index: int) -> String const

FontVariation

+ property palette_custom_colors: PackedColorArray = PackedColorArray()
+ property palette_index: int = 0

GLTFDocument

+ property texture_map_mode: int = 1
+ constant ImportFlags.IMPORT_FLAG_DISCARD_MESHES_AND_MATERIALS = 32
+ constant ImportFlags.IMPORT_FLAG_FORCE_DISABLE_MESH_COMPRESSION = 64
+ constant ImportFlags.IMPORT_FLAG_GENERATE_TANGENT_ARRAYS = 8
+ constant ImportFlags.IMPORT_FLAG_USE_NAMED_SKIN_BINDS = 16
+ constant TextureMapMode.TEXTURE_MAP_MODE_DO_NOT_REMAP = 0
+ constant TextureMapMode.TEXTURE_MAP_MODE_REMAP_TO_STANDARD_MATERIAL = 1

GLTFDocumentExtension

+ method _export_get_property_list(root_node: Node) -> Dictionary[] virtual

GLTFPhysicsBody

! property inertia_tensor deprecated: no replacement given

GPUParticles2D

~ method request_particles_process(process_time: float) -> void  →  request_particles_process(process_time: float, process_time_residual: float = 0) -> void

GPUParticles3D

~ method request_particles_process(process_time: float) -> void  →  request_particles_process(process_time: float, process_time_residual: float = 0.0) -> void
+ property transform_align_axis: int
+ property transform_align_channel_filter: int
+ constant TransformAlign.TRANSFORM_ALIGN_LOCAL_BILLBOARD = 4

GradientTexture2D

+ constant Fill.FILL_CONIC = 3

GridMap

+ method get_octant_coords_from_cell_coords(cell_coords: Vector3i) -> Vector3i const
+ method get_octants_in_bounds(bounds: AABB) -> Vector3i[] const
+ method get_used_cells_in_octant(octant_coords: Vector3i) -> Vector3i[] const
+ method get_used_cells_in_octant_by_item(octant_coords: Vector3i, item: int) -> Vector3i[] const
+ method get_used_octants() -> Vector3i[] const
+ method get_used_octants_by_item(item: int) -> Vector3i[] const
+ method get_used_octants_in_bounds(bounds: AABB) -> Vector3i[] const
+ property collision_visibility_mode: int = 0
+ constant DebugVisibilityMode.DEBUG_VISIBILITY_MODE_DEFAULT = 0
+ constant DebugVisibilityMode.DEBUG_VISIBILITY_MODE_FORCE_HIDE = 2
+ constant DebugVisibilityMode.DEBUG_VISIBILITY_MODE_FORCE_SHOW = 1

Image

~ method save_exr(path: String, grayscale: bool = false) -> int const  →  save_exr(path: String, grayscale: bool = false, color_image: bool = false, max_linear_value: float = -1.0) -> int const
~ method save_exr_to_buffer(grayscale: bool = false) -> PackedByteArray const  →  save_exr_to_buffer(grayscale: bool = false, color_image: bool = false, max_linear_value: float = -1.0) -> PackedByteArray const

ImageTexture

- method get_format() -> int const

ImporterMesh

+ method merge_importer_meshes(importer_meshes: ImporterMesh[], relative_transforms: Transform3D[], deduplicate_surfaces: bool = true) -> ImporterMesh static

Input

+ method clear_joy_motion_sensors_calibration(device: int) -> void
+ method get_joy_accelerometer(device: int) -> Vector3 const
+ method get_joy_gravity(device: int) -> Vector3 const
+ method get_joy_gyroscope(device: int) -> Vector3 const
+ method get_joy_motion_sensors_calibration(device: int) -> Dictionary const
+ method get_joy_motion_sensors_rate(device: int) -> float const
+ method get_joy_vibration_remaining_duration(device: int) -> float
+ method has_joy_motion_sensors(device: int) -> bool const
+ method has_joy_vibration(device: int) -> bool const
+ method is_joy_motion_sensors_calibrated(device: int) -> bool const
+ method is_joy_motion_sensors_calibrating(device: int) -> bool const
+ method is_joy_motion_sensors_enabled(device: int) -> bool const
+ method is_joy_vibrating(device: int) -> bool
+ method set_joy_motion_sensors_calibration(device: int, calibration_info: Dictionary) -> void
+ method set_joy_motion_sensors_enabled(device: int, enable: bool) -> void
+ method start_joy_motion_sensors_calibration(device: int) -> void
+ method stop_joy_motion_sensors_calibration(device: int) -> void
+ property ignore_joypad_on_unfocused_application: bool

InputEvent

+ constant DEVICE_ID_KEYBOARD = 16
+ constant DEVICE_ID_MOUSE = 32

InputEventGesture

+ property device: int = 0

InputEventMouse

+ property device: int = 32

InputEventWithModifiers

+ property device: int = 16

ItemList

+ method center_on_current(center_verically: bool = true, center_horizontally: bool = true) -> void
+ property item_{index}/disabled: bool = false
+ property item_{index}/icon: Texture2D
+ property item_{index}/selectable: bool = true
+ property item_{index}/text: String = ""

JavaClassWrapper

+ method create_proxy(object: Object, interfaces: PackedStringArray) -> JavaObject
+ method create_sam_callback(sam_interface: String, callable: Callable) -> JavaObject

LabelSettings

+ property stacked_outline_{index}/color: Color = Color(0, 0, 0, 1)
+ property stacked_outline_{index}/size: int = 0
+ property stacked_shadow_{index}/color: Color = Color(0, 0, 0, 1)
+ property stacked_shadow_{index}/offset: Vector2 = Vector2(1, 1)
+ property stacked_shadow_{index}/outline_size: int = 0

MainLoop

+ constant NOTIFICATION_APPLICATION_PIP_MODE_ENTERED = 2019
+ constant NOTIFICATION_APPLICATION_PIP_MODE_EXITED = 2020

MenuButton

+ property popup/item_{index}/checkable: int = 0
+ property popup/item_{index}/checked: bool = false
+ property popup/item_{index}/disabled: bool = false
+ property popup/item_{index}/icon: Texture2D
+ property popup/item_{index}/id: int = 0
+ property popup/item_{index}/separator: bool = false
+ property popup/item_{index}/text: String = ""

MeshLibrary

+ method get_item_count() -> int const

MultiplayerPeerExtension

~ method _disconnect_peer(p_peer: int, p_force: bool) -> void virtual required  →  _disconnect_peer(peer: int, force: bool) -> void virtual required
~ method _put_packet(p_buffer: const uint8_t*, p_buffer_size: int) -> int virtual  →  _put_packet(buffer: const uint8_t*, buffer_size: int) -> int virtual
~ method _put_packet_script(p_buffer: PackedByteArray) -> int virtual  →  _put_packet_script(buffer: PackedByteArray) -> int virtual
~ method _set_refuse_new_connections(p_enable: bool) -> void virtual  →  _set_refuse_new_connections(enable: bool) -> void virtual
~ method _set_target_peer(p_peer: int) -> void virtual required  →  _set_target_peer(peer: int) -> void virtual required
~ method _set_transfer_channel(p_channel: int) -> void virtual required  →  _set_transfer_channel(channel: int) -> void virtual required
~ method _set_transfer_mode(p_mode: int) -> void virtual required  →  _set_transfer_mode(mode: int) -> void virtual required

NativeMenu

+ method set_item_index(rid: RID, idx: int, target_idx: int) -> int

Node

+ constant NOTIFICATION_APPLICATION_PIP_MODE_ENTERED = 2019
+ constant NOTIFICATION_APPLICATION_PIP_MODE_EXITED = 2020
+ constant NOTIFICATION_WM_OUTPUT_MAX_LINEAR_VALUE_CHANGED = 1013

Object

~ method is_class(class: String) -> bool const  →  is_class(class: StringName) -> bool const

OpenXRAPIExtension

+ method get_view_configuration() -> int const
+ method get_view_count() -> int const
+ method register_projection_layer_extension(extension: OpenXRExtensionWrapper) -> void
+ method unregister_projection_layer_extension(extension: OpenXRExtensionWrapper) -> void

OpenXRBindingModifierEditor

- property size_flags_horizontal: int = 3

OpenXRCompositionLayer

+ property eye_visibility: int = 0
+ constant EyeVisibility.EYE_VISIBILITY_BOTH = 0
+ constant EyeVisibility.EYE_VISIBILITY_LEFT = 1
+ constant EyeVisibility.EYE_VISIBILITY_RIGHT = 2

OpenXRExtensionWrapper

~ method _on_register_metadata() -> void virtual  →  _on_register_metadata(interaction_profile_metadata: OpenXRInteractionProfileMetadata) -> void virtual
+ method _set_projection_layer_and_get_next_pointer(next_pointer: void*) -> int virtual

OpenXRInteractionProfileEditorBase

- property size_flags_horizontal: int = 3
- property size_flags_vertical: int = 3

OpenXRInterface

+ method is_user_presence_supported() -> bool const
+ method is_user_present() -> bool const
+ property foveation_with_subsampled_images: bool = false
+ signal user_presence_changed(is_user_present: bool)

OpenXRSpatialAnchorCapability

+ method create_default_persistence_context(user_callback: Callable = Callable()) -> OpenXRFutureResult
~ method create_new_anchor(transform: Transform3D, spatial_context: RID = RID()) -> OpenXRAnchorTracker  →  create_new_anchor(transform: Transform3D, spatial_context: RID = RID(), next: OpenXRStructureBase = null) -> OpenXRAnchorTracker
+ method do_entity_update(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next_snapshot_create: OpenXRStructureBase = null, next_snapshot_query: OpenXRStructureBase = null) -> void
+ method start_entity_discovery(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next_snapshot_create: OpenXRStructureBase = null, next_snapshot_query: OpenXRStructureBase = null, user_callback: Callable = Callable()) -> OpenXRFutureResult

OpenXRSpatialCapabilityConfigurationBaseHeader

+ method get_configuration() -> int

OpenXRSpatialComponentData

~ method _get_structure_data(next: int) -> int virtual const  →  _get_structure_data(next: int) -> int virtual
+ method get_component_type() -> int const

OpenXRSpatialContextPersistenceConfig

+ method get_persistence_contexts() -> Array const

OpenXRSpatialEntityExtension

+ method discover_spatial_entities_with_component_data(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next: OpenXRStructureBase = null, user_callback: Callable = Callable()) -> OpenXRFutureResult

OpenXRSpatialEntityTracker

+ method add_next(next: OpenXRStructureBase) -> void
+ method get_next() -> OpenXRStructureBase const
+ method get_spatial_context() -> RID const
+ method remove_next(next: OpenXRStructureBase) -> void
+ method set_spatial_context(spatial_context: RID) -> void
+ signal next_changed()

OpenXRSpatialMarkerTrackingCapability

+ method do_entity_update(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next_snapshot_create: OpenXRStructureBase = null, next_snapshot_query: OpenXRStructureBase = null) -> void
+ method start_entity_discovery(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next_snapshot_create: OpenXRStructureBase = null, next_snapshot_query: OpenXRStructureBase = null, user_callback: Callable = Callable()) -> OpenXRFutureResult

OpenXRSpatialPlaneTrackingCapability

+ method start_entity_discovery(spatial_context: RID, component_data: OpenXRSpatialComponentData[], next_snapshot_create: OpenXRStructureBase = null, next_snapshot_query: OpenXRStructureBase = null, user_callback: Callable = Callable()) -> OpenXRFutureResult

OptimizedTranslation

~ method generate(from: Translation) -> void  →  generate(from: Translation) -> bool

OptionButton

+ property popup/item_{index}/disabled: bool = false
+ property popup/item_{index}/icon: Texture2D
+ property popup/item_{index}/id: int = 0
+ property popup/item_{index}/separator: bool = false
+ property popup/item_{index}/text: String = ""
+ property search_bar_enabled: bool = false
+ property search_bar_fuzzy_search_enabled: bool = true
+ property search_bar_fuzzy_search_max_misses: int = 2
+ property search_bar_min_item_count: int = 0

PCKPacker

+ method add_file_from_buffer(target_path: String, data: PackedByteArray, encrypt: bool = false) -> int

PacketPeerExtension

~ method _put_packet(p_buffer: const uint8_t*, p_buffer_size: int) -> int virtual  →  _put_packet(buffer: const uint8_t*, buffer_size: int) -> int virtual

ParticleProcessMaterial

+ property particle_flag_inherit_emitter_scale: bool = false
+ property rotation_3d_max: Vector3
+ property rotation_3d_min: Vector3
+ property rotation_velocity_3d_curve: Texture2D
+ property rotation_velocity_3d_max: Vector3
+ property rotation_velocity_3d_min: Vector3
+ property scale_3d_max: Vector3
+ property scale_3d_min: Vector3
+ property use_rotation_3d: bool = false
+ property use_rotation_velocity_3d: bool = false
+ property use_scale_3d: bool = false
+ constant ParticleFlags.PARTICLE_FLAG_INHERIT_EMITTER_SCALE = 4
~ constant ParticleFlags.PARTICLE_FLAG_MAX = 4  →  ParticleFlags.PARTICLE_FLAG_MAX = 5

PhysicsDirectSpaceState2DExtension

~ method _cast_motion(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, closest_safe: float*, closest_unsafe: float*) -> bool virtual required  →  _cast_motion(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_closest_safe: float*, r_closest_unsafe: float*) -> bool virtual required
~ method _collide_shape(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, results: void*, max_results: int, result_count: int32_t*) -> bool virtual required  →  _collide_shape(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_results: void*, max_results: int, r_result_count: int32_t*) -> bool virtual required
~ method _intersect_point(position: Vector2, canvas_instance_id: int, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, results: PhysicsServer2DExtensionShapeResult*, max_results: int) -> int virtual required  →  _intersect_point(position: Vector2, canvas_instance_id: int, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_results: PhysicsServer2DExtensionShapeResult*, max_results: int) -> int virtual required
~ method _intersect_ray(from: Vector2, to: Vector2, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, hit_from_inside: bool, result: PhysicsServer2DExtensionRayResult*) -> bool virtual required  →  _intersect_ray(from: Vector2, to: Vector2, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, hit_from_inside: bool, r_result: PhysicsServer2DExtensionRayResult*) -> bool virtual required
~ method _intersect_shape(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, result: PhysicsServer2DExtensionShapeResult*, max_results: int) -> int virtual required  →  _intersect_shape(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_result: PhysicsServer2DExtensionShapeResult*, max_results: int) -> int virtual required
~ method _rest_info(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, rest_info: PhysicsServer2DExtensionShapeRestInfo*) -> bool virtual required  →  _rest_info(shape_rid: RID, transform: Transform2D, motion: Vector2, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_rest_info: PhysicsServer2DExtensionShapeRestInfo*) -> bool virtual required

PhysicsDirectSpaceState3DExtension

~ method _cast_motion(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, closest_safe: float*, closest_unsafe: float*, info: PhysicsServer3DExtensionShapeRestInfo*) -> bool virtual required  →  _cast_motion(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_closest_safe: float*, r_closest_unsafe: float*, r_info: PhysicsServer3DExtensionShapeRestInfo*) -> bool virtual required
~ method _collide_shape(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, results: void*, max_results: int, result_count: int32_t*) -> bool virtual required  →  _collide_shape(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_results: void*, max_results: int, r_result_count: int32_t*) -> bool virtual required
~ method _intersect_point(position: Vector3, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, results: PhysicsServer3DExtensionShapeResult*, max_results: int) -> int virtual required  →  _intersect_point(position: Vector3, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_results: PhysicsServer3DExtensionShapeResult*, max_results: int) -> int virtual required
~ method _intersect_ray(from: Vector3, to: Vector3, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, hit_from_inside: bool, hit_back_faces: bool, pick_ray: bool, result: PhysicsServer3DExtensionRayResult*) -> bool virtual required  →  _intersect_ray(from: Vector3, to: Vector3, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, hit_from_inside: bool, hit_back_faces: bool, pick_ray: bool, r_result: PhysicsServer3DExtensionRayResult*) -> bool virtual required
~ method _intersect_shape(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, result_count: PhysicsServer3DExtensionShapeResult*, max_results: int) -> int virtual required  →  _intersect_shape(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_result_count: PhysicsServer3DExtensionShapeResult*, max_results: int) -> int virtual required
~ method _rest_info(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, rest_info: PhysicsServer3DExtensionShapeRestInfo*) -> bool virtual required  →  _rest_info(shape_rid: RID, transform: Transform3D, motion: Vector3, margin: float, collision_mask: int, collide_with_bodies: bool, collide_with_areas: bool, r_rest_info: PhysicsServer3DExtensionShapeRestInfo*) -> bool virtual required

PhysicsServer2D

~ method body_set_shape_as_one_way_collision(body: RID, shape_idx: int, enable: bool, margin: float) -> void  →  body_set_shape_as_one_way_collision(body: RID, shape_idx: int, enable: bool, margin: float, direction: Vector2 = Vector2(0, 1)) -> void

PhysicsServer2DExtension

~ method _body_collide_shape(body: RID, body_shape: int, shape: RID, shape_xform: Transform2D, motion: Vector2, results: void*, result_max: int, result_count: int32_t*) -> bool virtual required  →  _body_collide_shape(body: RID, body_shape: int, shape: RID, shape_xform: Transform2D, motion: Vector2, r_results: void*, result_max: int, r_result_count: int32_t*) -> bool virtual required
~ method _body_set_shape_as_one_way_collision(body: RID, shape_idx: int, enable: bool, margin: float) -> void virtual required  →  _body_set_shape_as_one_way_collision(body: RID, shape_idx: int, enable: bool, margin: float, direction: Vector2) -> void virtual required
~ method _body_test_motion(body: RID, from: Transform2D, motion: Vector2, margin: float, collide_separation_ray: bool, recovery_as_collision: bool, result: PhysicsServer2DExtensionMotionResult*) -> bool virtual required const  →  _body_test_motion(body: RID, from: Transform2D, motion: Vector2, margin: float, collide_separation_ray: bool, recovery_as_collision: bool, r_result: PhysicsServer2DExtensionMotionResult*) -> bool virtual required const
~ method _shape_collide(shape_A: RID, xform_A: Transform2D, motion_A: Vector2, shape_B: RID, xform_B: Transform2D, motion_B: Vector2, results: void*, result_max: int, result_count: int32_t*) -> bool virtual required  →  _shape_collide(shape_A: RID, xform_A: Transform2D, motion_A: Vector2, shape_B: RID, xform_B: Transform2D, motion_B: Vector2, r_results: void*, result_max: int, r_result_count: int32_t*) -> bool virtual required

PhysicsServer3DExtension

~ method _body_test_motion(body: RID, from: Transform3D, motion: Vector3, margin: float, max_collisions: int, collide_separation_ray: bool, recovery_as_collision: bool, result: PhysicsServer3DExtensionMotionResult*) -> bool virtual required const  →  _body_test_motion(body: RID, from: Transform3D, motion: Vector3, margin: float, max_collisions: int, collide_separation_ray: bool, recovery_as_collision: bool, r_result: PhysicsServer3DExtensionMotionResult*) -> bool virtual required const

PopupMenu

+ method set_item_index(index: int, target_index: int) -> void
+ property canvas_item_default_texture_filter: int = 4
+ property canvas_item_default_texture_repeat: int = 3
+ property item_{index}/checkable: int = 0
+ property item_{index}/checked: bool = false
+ property item_{index}/disabled: bool = false
+ property item_{index}/icon: Texture2D
+ property item_{index}/id: int = 0
+ property item_{index}/separator: bool = false
+ property item_{index}/text: String = ""
+ property search_bar_enabled: bool = false
+ property search_bar_fuzzy_search_enabled: bool = true
+ property search_bar_fuzzy_search_max_misses: int = 2
+ property search_bar_min_item_count: int = 0

PopupPanel

+ property canvas_item_default_texture_filter: int = 4
+ property canvas_item_default_texture_repeat: int = 3

PortableCompressedTexture2D

- method get_format() -> int const

ProjectSettings

+ property accessibility/general/accessibility_driver: String = "accesskit"
+ property animation/warnings/check_invalid_skeleton_modifier_node_paths: bool = true
+ property debug/gdscript/warnings/confusable_temporary_modification: int = 1
+ property display/window/hdr/request_hdr_output: bool = false
+ property input_devices/joypads/ignore_joypad_on_unfocused_application: bool = false
+ property xr/openxr/extensions/user_presence: bool = false
+ property xr/openxr/foveation_eye_tracked: bool = true
+ property xr/openxr/foveation_with_subsampled_images: bool = true

RDShaderSPIRV

+ property bytecode_any_hit: PackedByteArray = PackedByteArray()
+ property bytecode_closest_hit: PackedByteArray = PackedByteArray()
+ property bytecode_intersection: PackedByteArray = PackedByteArray()
+ property bytecode_miss: PackedByteArray = PackedByteArray()
+ property bytecode_raygen: PackedByteArray = PackedByteArray()
+ property compile_error_any_hit: String = ""
+ property compile_error_closest_hit: String = ""
+ property compile_error_intersection: String = ""
+ property compile_error_miss: String = ""
+ property compile_error_raygen: String = ""

RDShaderSource

+ property source_any_hit: String = ""
+ property source_closest_hit: String = ""
+ property source_intersection: String = ""
+ property source_miss: String = ""
+ property source_raygen: String = ""

RenderingDevice

+ method blas_build(blas: RID) -> int
+ method blas_create(geometries: RDAccelerationStructureGeometry[], flags: int) -> RID
+ method hit_sbt_create(raytracing_pipeline: RID, initial_hit_group_capacity: int) -> RID
+ method hit_sbt_range_alloc(hit_sbt: RID, hit_group_count: int) -> int
+ method hit_sbt_range_free(hit_sbt: RID, range: int) -> int
+ method hit_sbt_range_update(hit_sbt: RID, range: int, offset: int, hit_group_indices: PackedInt32Array) -> int
+ method hit_sbt_set_pipeline(hit_sbt: RID, raytracing_pipeline: RID) -> int
+ method raytracing_list_begin() -> int
+ method raytracing_list_bind_raytracing_pipeline(raytracing_list: int, raytracing_pipeline: RID) -> void
+ method raytracing_list_bind_uniform_set(raytracing_list: int, uniform_set: RID, set_index: int) -> void
+ method raytracing_list_end() -> void
+ method raytracing_list_set_push_constant(raytracing_list: int, buffer: PackedByteArray, size_bytes: int) -> void
+ method raytracing_list_trace_rays(raytracing_list: int, raygen_shader_index: int, hit_sbt: RID, width: int, height: int, depth: int) -> void
+ method raytracing_pipeline_create(raygen_shaders: RDPipelineShader[], miss_shaders: RDPipelineShader[], hit_groups: RDHitGroup[], max_trace_recursion_depth: int) -> RID
+ method raytracing_pipeline_is_valid(raytracing_pipeline: RID) -> bool
+ method tlas_build(tlas: RID, instances: RDAccelerationStructureInstance[]) -> int
+ method tlas_create(max_instance_count: int, flags: int) -> RID
+ constant AccelerationStructureFlagBits.ACCELERATION_STRUCTURE_ALLOW_COMPACTION_BIT = 2
+ constant AccelerationStructureFlagBits.ACCELERATION_STRUCTURE_ALLOW_UPDATE_BIT = 1
+ constant AccelerationStructureGeometryFlagBits.ACCELERATION_STRUCTURE_GEOMETRY_NO_DUPLICATE_ANY_HIT_INVOCATION_BIT = 2
+ constant AccelerationStructureGeometryFlagBits.ACCELERATION_STRUCTURE_GEOMETRY_OPAQUE_BIT = 1
+ constant AccelerationStructureInstanceFlagBits.ACCELERATION_STRUCTURE_INSTANCE_FORCE_NO_OPAQUE_BIT = 8
+ constant AccelerationStructureInstanceFlagBits.ACCELERATION_STRUCTURE_INSTANCE_FORCE_OPAQUE_BIT = 4
+ constant AccelerationStructureInstanceFlagBits.ACCELERATION_STRUCTURE_INSTANCE_TRIANGLE_FACING_CULL_DISABLE_BIT = 1
+ constant AccelerationStructureInstanceFlagBits.ACCELERATION_STRUCTURE_INSTANCE_TRIANGLE_FLIP_FACING_BIT = 2
+ constant AccelerationStructureFlagBits.ACCELERATION_STRUCTURE_LOW_MEMORY_BIT = 16
+ constant AccelerationStructureFlagBits.ACCELERATION_STRUCTURE_PREFER_FAST_BUILD_BIT = 8
+ constant AccelerationStructureFlagBits.ACCELERATION_STRUCTURE_PREFER_FAST_TRACE_BIT = 4
+ constant BufferCreationBits.BUFFER_CREATION_ACCELERATION_STRUCTURE_BUILD_INPUT_READ_ONLY_BIT = 8
+ constant ShaderStage.SHADER_STAGE_ANY_HIT = 6
+ constant ShaderStage.SHADER_STAGE_ANY_HIT_BIT = 64
+ constant ShaderStage.SHADER_STAGE_CLOSEST_HIT = 7
+ constant ShaderStage.SHADER_STAGE_CLOSEST_HIT_BIT = 128
+ constant ShaderStage.SHADER_STAGE_INTERSECTION = 9
+ constant ShaderStage.SHADER_STAGE_INTERSECTION_BIT = 512
~ constant ShaderStage.SHADER_STAGE_MAX = 5  →  ShaderStage.SHADER_STAGE_MAX = 10
+ constant ShaderStage.SHADER_STAGE_MISS = 8
+ constant ShaderStage.SHADER_STAGE_MISS_BIT = 256
+ constant ShaderStage.SHADER_STAGE_RAYGEN = 5
+ constant ShaderStage.SHADER_STAGE_RAYGEN_BIT = 32
+ constant Features.SUPPORTS_HDR_OUTPUT = 13
+ constant Features.SUPPORTS_RAYTRACING_PIPELINE = 12
+ constant Features.SUPPORTS_RAY_QUERY = 11
+ constant UniformType.UNIFORM_TYPE_ACCELERATION_STRUCTURE = 12
~ constant UniformType.UNIFORM_TYPE_MAX = 12  →  UniformType.UNIFORM_TYPE_MAX = 13

RenderingServer

+ method area_light_create() -> RID
~ method environment_set_volumetric_fog(env: RID, enable: bool, density: float, albedo: Color, emission: Color, emission_energy: float, anisotropy: float, length: float, p_detail_spread: float, gi_inject: float, temporal_reprojection: bool, temporal_reprojection_amount: float, ambient_inject: float, sky_affect: float) -> void  →  environment_set_volumetric_fog(env: RID, enable: bool, density: float, albedo: Color, emission: Color, emission_energy: float, anisotropy: float, length: float, detail_spread: float, gi_inject: float, temporal_reprojection: bool, temporal_reprojection_amount: float, ambient_inject: float, sky_affect: float) -> void
+ method light_area_set_normalize_energy(light: RID, enable: bool) -> void
+ method light_area_set_size(light: RID, size: Vector2) -> void
~ method particles_request_process_time(particles: RID, time: float) -> void  →  particles_request_process_time(particles: RID, process_time: float, process_time_residual: float = 0.0) -> void
+ method particles_set_transform_align_axis(particles: RID, rotation_axis: int) -> void
+ method particles_set_transform_align_channel_filter(particles: RID, channel_filter: int) -> void
+ method texture_drawable_blit_rect(textures: RID[], rect: Rect2i, material: RID, modulate: Color, source_textures: RID[], to_mipmap: int = 0) -> void
+ method texture_drawable_create(width: int, height: int, format: int, color: Color = Color(1, 1, 1, 1), with_mipmaps: bool = false) -> RID
+ method texture_drawable_generate_mipmaps(texture: RID) -> void
+ method texture_drawable_get_default_material() -> RID const
~ method viewport_set_size(viewport: RID, width: int, height: int) -> void  →  viewport_set_size(viewport: RID, width: int, height: int, view_count: int = 1) -> void
+ constant LightType.LIGHT_AREA = 3
+ constant ParticlesTransformAlignAxis.PARTICLES_ALIGN_AXIS_X = 0
+ constant ParticlesTransformAlignAxis.PARTICLES_ALIGN_AXIS_Y = 1
+ constant ParticlesTransformAlignCustomSrc.PARTICLES_ALIGN_CHANNEL_FILTER_DISABLED = 0
+ constant ParticlesTransformAlignCustomSrc.PARTICLES_ALIGN_CHANNEL_FILTER_W = 4
+ constant ParticlesTransformAlignCustomSrc.PARTICLES_ALIGN_CHANNEL_FILTER_X = 1
+ constant ParticlesTransformAlignCustomSrc.PARTICLES_ALIGN_CHANNEL_FILTER_Y = 2
+ constant ParticlesTransformAlignCustomSrc.PARTICLES_ALIGN_CHANNEL_FILTER_Z = 3
+ constant ParticlesTransformAlign.PARTICLES_TRANSFORM_ALIGN_LOCAL_BILLBOARD = 4
~ constant ShaderMode.SHADER_MAX = 5  →  ShaderMode.SHADER_MAX = 6
+ constant ShaderMode.SHADER_TEXTURE_BLIT = 5
+ constant TextureDrawableFormat.TEXTURE_DRAWABLE_FORMAT_RGBA8 = 0
+ constant TextureDrawableFormat.TEXTURE_DRAWABLE_FORMAT_RGBA8_SRGB = 1
+ constant TextureDrawableFormat.TEXTURE_DRAWABLE_FORMAT_RGBAF = 3
+ constant TextureDrawableFormat.TEXTURE_DRAWABLE_FORMAT_RGBAH = 2
~ constant ViewportScaling3DMode.VIEWPORT_SCALING_3D_MODE_MAX = 5  →  ViewportScaling3DMode.VIEWPORT_SCALING_3D_MODE_MAX = 6
+ constant ViewportScaling3DMode.VIEWPORT_SCALING_3D_MODE_NEAREST = 5

Resource

+ method copy_from_resource(resource: Resource) -> int

ResourceImporterDynamicFont

~ property hinting: int = 1  →  hinting: int = 3

ResourceImporterSVG

+ property fix_alpha_border: bool = false
+ property premult_alpha: bool = false

ResourceImporterScene

+ property array_mesh/deduplicate_surfaces: bool = true
+ property mesh_library/use_node_names_as_mesh_names: bool = false

RichTextLabel

~ method add_image(image: Texture2D, width: int = 0, height: int = 0, color: Color = Color(1, 1, 1, 1), inline_align: int = 5, region: Rect2 = Rect2(0, 0, 0, 0), key: Variant = null, pad: bool = false, tooltip: String = "", width_in_percent: bool = false, height_in_percent: bool = false, alt_text: String = "") -> void  →  add_image(image: Texture2D, width: float = 0, height: float = 0, color: Color = Color(1, 1, 1, 1), inline_align: int = 5, region: Rect2 = Rect2(0, 0, 0, 0), key: Variant = null, pad: bool = false, tooltip: String = "", width_unit: int = 0, height_unit: int = 0, alt_text: String = "") -> void
~ method update_image(key: Variant, mask: int, image: Texture2D, width: int = 0, height: int = 0, color: Color = Color(1, 1, 1, 1), inline_align: int = 5, region: Rect2 = Rect2(0, 0, 0, 0), pad: bool = false, tooltip: String = "", width_in_percent: bool = false, height_in_percent: bool = false) -> void  →  update_image(key: Variant, mask: int, image: Texture2D, width: float = 0, height: float = 0, color: Color = Color(1, 1, 1, 1), inline_align: int = 5, region: Rect2 = Rect2(0, 0, 0, 0), pad: bool = false, tooltip: String = "", width_unit: int = 0, height_unit: int = 0) -> void
+ constant ImageUnit.IMAGE_UNIT_EM = 2
+ constant ImageUnit.IMAGE_UNIT_PERCENT = 1
+ constant ImageUnit.IMAGE_UNIT_PIXEL = 0
+ constant ImageUpdateMask.UPDATE_WIDTH_UNIT = 128
- constant ImageUpdateMask.UPDATE_WIDTH_IN_PERCENT = 128

Script

+ method has_script_method(method_name: StringName) -> bool const
! method instance_has deprecated: Compare this script with Object.get_script() instead.

ScriptEditor

+ method close_file(path: String) -> int
+ method get_unsaved_files() -> PackedStringArray const
+ method reload_open_files() -> void
+ method save_all_scripts() -> void

ScriptExtension

~ method _instance_has(object: Object) -> bool virtual required const  →  _instance_has(object: Object) -> bool virtual const
! method _instance_has deprecated: This method is not called by the engine.

ScriptLanguageExtension

~ method _create_script() -> Object virtual required const  →  _create_script() -> Object virtual const
! method _create_script deprecated: This method is not called by the engine.
+ constant CodeCompletionKind.CODE_COMPLETION_KIND_KEYWORD = 10
~ constant CodeCompletionKind.CODE_COMPLETION_KIND_MAX = 10  →  CodeCompletionKind.CODE_COMPLETION_KIND_MAX = 11
! constant LOOKUP_RESULT_CLASS_TBD_GLOBALSCOPE deprecated: no replacement given

ScrollContainer

+ property propagate_maximum_size: bool = false
+ property scroll_horizontal_by_default: bool = false
+ constant ScrollMode.SCROLL_MODE_MAXIMIZE_FIRST = 5

Shader

+ constant Mode.MODE_TEXTURE_BLIT = 5

Skeleton3D

! method clear_bones_global_pose_override deprecated: no replacement given
! method get_bone_global_pose_no_override deprecated: no replacement given
! method get_bone_global_pose_override deprecated: no replacement given
! method physical_bones_add_collision_exception deprecated: no replacement given
! method physical_bones_remove_collision_exception deprecated: no replacement given
! method physical_bones_start_simulation deprecated: no replacement given
! method physical_bones_stop_simulation deprecated: no replacement given
! method set_bone_global_pose_override deprecated: no replacement given
! property animate_physical_bones deprecated: no replacement given

SkeletonModification2DJiggle

+ method reset() -> void

SplitContainer

+ property drag_nested_intersections: bool = false

SpriteFrames

! method get_animation_loop deprecated: Use get_animation_loop_mode() instead.
+ method get_animation_loop_mode(anim: StringName) -> int const
! method set_animation_loop deprecated: Use set_animation_loop_mode() instead.
+ method set_animation_loop_mode(anim: StringName, loop_mode: int) -> void
+ constant LoopMode.LOOP_LINEAR = 1
+ constant LoopMode.LOOP_NONE = 0
+ constant LoopMode.LOOP_PINGPONG = 2

StreamPeerExtension

~ method _put_data(p_data: const uint8_t*, p_bytes: int, r_sent: int32_t*) -> int virtual  →  _put_data(data: const uint8_t*, bytes: int, r_sent: int32_t*) -> int virtual
~ method _put_partial_data(p_data: const uint8_t*, p_bytes: int, r_sent: int32_t*) -> int virtual  →  _put_partial_data(data: const uint8_t*, bytes: int, r_sent: int32_t*) -> int virtual

SubViewport

+ property view_count: int = 1

TabBar

+ property tab_{index}/disabled: bool = false
+ property tab_{index}/icon: Texture2D
+ property tab_{index}/title: String = ""
+ property tab_{index}/tooltip: String = ""

TabContainer

~ property all_tabs_in_front: bool = false  →  all_tabs_in_front: bool
! property all_tabs_in_front deprecated: Due to internal changes this doesn't do anything anymore, as they're always in front.
+ property tab_{index}/disabled: bool = false
+ property tab_{index}/hidden: bool = false
+ property tab_{index}/icon: Texture2D
+ property tab_{index}/title: String = ""

TextEdit

+ method is_line_in_viewport(line: int) -> bool const

TextServer

+ method font_get_palette_colors(font_rid: RID, index: int) -> PackedColorArray const
+ method font_get_palette_count(font_rid: RID) -> int const
+ method font_get_palette_custom_colors(font_rid: RID) -> PackedColorArray const
+ method font_get_palette_name(font_rid: RID, index: int) -> String const
+ method font_get_used_palette(font_rid: RID) -> int const
~ method font_set_modulate_color_glyphs(font_rid: RID, force_autohinter: bool) -> void  →  font_set_modulate_color_glyphs(font_rid: RID, modulate: bool) -> void
+ method font_set_palette_custom_colors(font_rid: RID, colors: PackedColorArray) -> void
+ method font_set_used_palette(font_rid: RID, index: int) -> void

TextServerExtension

+ method _font_get_palette_colors(font_rid: RID, index: int) -> PackedColorArray virtual const
+ method _font_get_palette_count(font_rid: RID) -> int virtual const
+ method _font_get_palette_custom_colors(font_rid: RID) -> PackedColorArray virtual const
+ method _font_get_palette_name(font_rid: RID, index: int) -> String virtual const
+ method _font_get_used_palette(font_rid: RID) -> int virtual const
+ method _font_set_palette_custom_colors(font_rid: RID, colors: PackedColorArray) -> void virtual
+ method _font_set_used_palette(font_rid: RID, index: int) -> void virtual
~ method _shaped_text_get_carets(shaped: RID, position: int, caret: CaretInfo*) -> void virtual const  →  _shaped_text_get_carets(shaped: RID, position: int, r_caret: CaretInfo*) -> void virtual const

Texture2D

+ method _get_format() -> int virtual const
+ method _get_image() -> Image virtual const
+ method _get_mipmap_count() -> int virtual const
+ method _has_mipmaps() -> bool virtual const
+ method get_format() -> int const
+ method get_mipmap_count() -> int const
+ method has_mipmaps() -> bool const

TileSet

+ method clear_terrains(terrain_set: int) -> void
~ method set_coords_level_tile_proxy(p_source_from: int, coords_from: Vector2i, source_to: int, coords_to: Vector2i) -> void  →  set_coords_level_tile_proxy(source_from: int, coords_from: Vector2i, source_to: int, coords_to: Vector2i) -> void

Tree

+ method get_custom_drawing_canvas_item() -> RID const

TreeItem

+ method get_autowrap_trim_flags(column: int) -> int const
+ method is_accepting_children() -> bool const
~ method select(column: int) -> void  →  select(column: int, set_as_cursor: bool = true) -> void
+ method set_accept_children(allowed: bool) -> void
+ method set_autowrap_trim_flags(column: int, flags: int) -> void

Tween

+ method has_tweeners() -> bool const
+ method tween_await(signal: Signal) -> AwaitTweener

Viewport

+ constant DebugDraw.DEBUG_DRAW_AREA_LIGHT_ATLAS = 28
+ constant DebugDraw.DEBUG_DRAW_CLUSTER_AREA_LIGHTS = 27
~ constant DefaultCanvasItemTextureFilter.DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_MAX = 4  →  DefaultCanvasItemTextureFilter.DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_MAX = 5
+ constant DefaultCanvasItemTextureFilter.DEFAULT_CANVAS_ITEM_TEXTURE_FILTER_PARENT_NODE = 4
~ constant DefaultCanvasItemTextureRepeat.DEFAULT_CANVAS_ITEM_TEXTURE_REPEAT_MAX = 3  →  DefaultCanvasItemTextureRepeat.DEFAULT_CANVAS_ITEM_TEXTURE_REPEAT_MAX = 4
+ constant DefaultCanvasItemTextureRepeat.DEFAULT_CANVAS_ITEM_TEXTURE_REPEAT_PARENT_NODE = 3
~ constant Scaling3DMode.SCALING_3D_MODE_MAX = 5  →  Scaling3DMode.SCALING_3D_MODE_MAX = 6
+ constant Scaling3DMode.SCALING_3D_MODE_NEAREST = 5

VisualShader

~ constant Type.TYPE_MAX = 10  →  Type.TYPE_MAX = 11
+ constant Type.TYPE_TEXTURE_BLIT = 10

WebRTCDataChannelExtension

~ method _put_packet(p_buffer: const uint8_t*, p_buffer_size: int) -> int virtual  →  _put_packet(buffer: const uint8_t*, buffer_size: int) -> int virtual
~ method _set_write_mode(p_write_mode: int) -> void virtual required  →  _set_write_mode(write_mode: int) -> void virtual required

WebRTCPeerConnectionExtension

~ method _add_ice_candidate(p_sdp_mid_name: String, p_sdp_mline_index: int, p_sdp_name: String) -> int virtual required  →  _add_ice_candidate(sdp_mid_name: String, sdp_mline_index: int, sdp_name: String) -> int virtual required
~ method _create_data_channel(p_label: String, p_config: Dictionary) -> WebRTCDataChannel virtual required  →  _create_data_channel(label: String, config: Dictionary) -> WebRTCDataChannel virtual required
~ method _initialize(p_config: Dictionary) -> int virtual required  →  _initialize(config: Dictionary) -> int virtual required
~ method _set_local_description(p_type: String, p_sdp: String) -> int virtual required  →  _set_local_description(type: String, sdp: String) -> int virtual required
~ method _set_remote_description(p_type: String, p_sdp: String) -> int virtual required  →  _set_remote_description(type: String, sdp: String) -> int virtual required

Window

+ method get_output_max_linear_value() -> float const
+ method set_taskbar_progress_state(state: int) -> void
+ method set_taskbar_progress_value(value: float) -> void
+ property hdr_output_requested: bool = false
+ signal output_max_linear_value_changed(output_max_linear_value: float)

XRController3D

~ signal button_pressed(name: String)  →  button_pressed(action_name: String)
~ signal button_released(name: String)  →  button_released(action_name: String)
~ signal input_float_changed(name: String, value: float)  →  input_float_changed(action_name: String, value: float)
~ signal input_vector2_changed(name: String, value: Vector2)  →  input_vector2_changed(action_name: String, value: Vector2)

XRPositionalTracker

~ signal button_pressed(name: String)  →  button_pressed(action_name: String)
~ signal button_released(name: String)  →  button_released(action_name: String)
~ signal input_float_changed(name: String, value: float)  →  input_float_changed(action_name: String, value: float)
~ signal input_vector2_changed(name: String, vector: Vector2)  →  input_vector2_changed(action_name: String, vector: Vector2)

XRServer

+ signal world_origin_changed()

ZIPPacker

+ method add_directory(path: String, permissions: int = 493, modified_time: int = 0) -> int
~ method start_file(path: String) -> int  →  start_file(path: String, permissions: int = 420, modified_time: int = 0) -> int

How this list was made

It is a comparison of the class reference XML in Godot's repository at the tags [4.6.3-stable](https://github.com/godotengine/godot/tree/4.6.3-stable/doc/classes) and [4.7.2-stable](https://github.com/godotengine/godot/tree/4.7.2-stable/doc/classes), core classes and module classes together, matched by class name. It covers the scripting API the class reference documents; editor-only behaviour and engine internals that the reference does not describe are not in it.

Generated on 2026-10-06 by scripts/godot-answers/api-diff.mjs. Godot 4.7.2 is the engine the Flockbay app ships.

Questions

What changed in Godot 4.7 for GDScript code?
For existing code, the lines marked - and ~ are the ones that can break it: 54 removals and 105 signature, type or default changes across 141 classes. Deprecated members (!) still work in 4.7.