Free and open source 2D and 3D game engine for Windows PC

Godot Engine (32-bit)

Godot Engine (32-bit)

  -  77.4 MB  -  Open Source
Godot Engine 32bit is an advanced, feature-packed, multi-platform 2D and 3D open-source game engine for Windows PC! Godot provides a huge set of common tools, so you can just focus on making your game without reinventing the wheel.



Godot Engine is completely free and open-source under the very permissive MIT license. No strings attached, no royalties, nothing. Your game is yours, down to the last line of engine code.

Features and Highlights

An extremely efficient paradigm for designing games
  • Visual editor, full of mature tools.
  • Uncluttered UI, with context-sensitive editors.
  • Amazing scene system, supporting instancing and inheritance.
  • Friendly content creation interfaces for artists, level designers, animators, …
  • Visual shader editing for 2D and 3D.
  • Persistent live editing (changes are not lost after stopping the game). Live to edit on mobile devices!
Create any kind of complex 2D games
  • Fully dedicated 2D engine, no hacks.
  • Work in pixels as your units, but scale to any screen size and ratio.
  • Custom 2D physics engine that works in pixel coordinates.
  • Flexible kinematic controller for collision without physics.
  • Blit 3D models as sprites into 2D.
Create great-looking 3D games
  • Import 3D models from 3DS Max, Maya, Blender, and more with full animation.
  • Skeleton deforms and blend shapes.
  • Several light types, with shadow mapping.
  • Render with HDR, anti-aliasing, and linear color modes.
  • Post-process fog, glow, bloom, color adjustment, …
  • Support for Physically-Based Rendering planned for the end of 2016.
Most flexible animation system for games
  • Animate 2D or 3D. Visual animation editor with the timeline.
  • Frame-based or cut-out animation for sprites and rigs.
  • Any property of any object can be animated, even function calls.
  • Use custom transition curves and tweens.
  • Helpers to animate 2D rigs, with skeletons and IK.
  • Efficient optimizer to pack imported 3D animations.
  • Animation Tree support for fluid character animation.
Add behaviors to objects with a built-in scripting
  • A python-like scripting language, designed to make games with zero hassle.
  • Built-in editor with syntax highlighting, real-time parser, and code completion.
  • Powerful integrated debugger and profilers. It can debug a game running on mobile devices.
  • Integrated class documentation browser.
  • Friendly C++ API to optimize parts of the game or extend any part of the engine.
Deploy games everywhere!
  • Mobile platforms: iOS, Android, BlackBerry OS
  • Desktop platforms: Windows, macOS, Linux, *BSD, Haiku
  • Web Platforms: HTML5 (via Emscripten)
  • One-click deploy & export to most platforms. Easy to create custom builds too.
Requirements
  • Recommended: Vulkan 1.0 compatible hardware
  • Minimal: OpenGL 3.3 / OpenGL ES 3.0 compatible hardware
Additional requirements for the .NET version: .NET SDK

Alternatives

Unreal Engine - High-fidelity graphics, real-time 3D creation.

Unity - Powerful 3D and 2D gaming development software for Windows.

CryEngine - Advanced graphics and real-time rendering tools.

GameMaker Studio - Simple 2D development with drag-and-drop system.

Cocos Creator - Open-source framework focused on mobile games.

Construct 3 - Beginner-friendly drag-and-drop 2D game engine.

RPG Maker: Tailored for creating role-playing games, this software provides specialized tools and a simple interface for RPG development.

PROS
  • Open-Source and Free
  • Node-Based Architecture
  • Cross-Platform Export
  • Lightweight and Fast
  • Active Community Support
CONS
  • Limited 3D Features
  • Smaller Asset Marketplace
  • GDScript Learning Curve
  • Less Industry Adoption
  • Lacks Native Support for VR
Also Available: Godot Engine (64-bit) and Godot Engine for Mac

Why is this app published on FileHorse? (More info)
  • Godot Engine 4.6 (32-bit) Screenshots

    The images below have been resized. Click on them to view the screenshots in full size.

    Godot Engine 4.6 (32-bit) Screenshot 1
  • Godot Engine 4.6 (32-bit) Screenshot 2
  • Godot Engine 4.6 (32-bit) Screenshot 3

What's new in this version:

2D:
- Fix Atlas Merge Tool crash
- Fix smart snapping lines to disappear after using the pivot tool
- Add "Use Local Space" option to the 2D editor
- Fade TileMap editor overlay when zoomed out
- Fix: Tilemap tools not overriding main editor tools
- Highlight points on hover in the Polygon2D editor
- Reduce TileMapLayerEditor's undo/redo memory usage
- Add support for rotating scene tiles in TileMapLayer
- Avoid unnecessary updates in TileMapLayer
- Fix redundant calls of CanvasItemEditor::_update_lock_and_group_button on SceneTreeEditor node selection
- Improve tile source tooltips
- Fix nested TileMapLayers highlight rendering in editor
- Fix snap Polygon2D editor
- Fix game Camera2D override from editor and 2D debug templates building
- Add zoom to fit functionality to SpriteFramesEditor
- Fix rotation/scale order in CanvasItem::draw_set_transform
- Fix Camera2D limit checks for inverted boundaries
- Fix "Match Corners" not correctly updating cells when erasing
- Fix Polygon2D editor undo crash
- Check for tiles outside texture on TileSet atlas settings changes
- Fix TileSet editor crash on terrain pick in paint mode
- Change TileSetScenesCollectionSource raw pointers in the TileSet editor to ref
- Prevent translating custom data layers
- Fix TileMapLayer transformations for Node2D scene tiles
- FTI: - Camera2D accepts resets only after entering tree
- Fix display_placeholder not persisting
- Enable Vertical orientation for TileMap Dock
- Fix TileMap Dock button placement and errors
- Fix get_scene_tile_display_placeholder erroring for transformed scene tiles
- Fix incorrect error message placement in TileMap Dock
- Fix undo/redo for adding scene tiles
- Fix pattern corruption in TileMapLayer
- Geometry2D: Remove arc_tolerance scaling and the comment related to that

3D:
- Commit transforms done with editor gizmo on tool mode switch
- Fix 3D editor Emulate Numpad setting having no effect when previewing a camera
- Get Node3D.global_rotation from orthonormalized global basis
- Rename Select Mode to Transform Mode, and create a new Select Mode without transform gizmo
- Fix viewport rotation gizmo aligned axis reversing
- Move editor viewport gizmos visibility logic out of process notification
- Remove redundant line when toggling cinematic preview
- Condition editor viewport nav modifier checks on freelook / mouse is captured
- TextureEditors: Compile shader/material only once
- GridMap: fix cell scale not applying to the cursor mesh
- Add Bresenham Line Algorithm to GridMap Drawing
- Fix ghost collisions in segment_intersects_convex()
- Change snap settings to not use LineEdits
- Always use a dark background for 3D editor overlays even with light theme
- Visual feedback update for viewport rotation gizmo
- Do not require editor restart when changing Path 3d Tilt Disk Size setting
- Do not require editor restart when changing manipulator gizmo opacity setting
- Create a rotation arc showing accumulated rotation when using transform gizmo
- Make rotation gizmo white outline a 4th handle that rotates around the camera's view-axis
- Fix jump when cutting a selection in Gridmap
- Remove spurious Curve3D changed signals
- Move Lock View Rotation label logic out of process notification
- Remove unused editor setting editors/grid_map/palette_min_width
- GLTF export: use ORM texture for occlusion/metallicRoughnessTexture if it exists
- Fix GridMap Move Action Undo/Redo/Cancel
- Fix numpad emulation in 3d navigation shortcuts
- Remove pixel_size precision limit in Sprite3D
- Implement orbit snapping in 3D viewport
- Improve Transform dialog
- Fix the material preview sphere model
- Fix CollisionPolygon3D debug shape rendering
- Fix GridMap cursor_instance transparency error spam
- Remove undefined method Skeleton3D::remove_bone
- Don't redraw Sprite3D/AnimatedSprite3D outside the tree
- Add MeshInstance3D upgrade code
- Fix wrong AABB when selecting Node3D gizmo in editor
- Fix preview CSG interfering with itself during drag and drop
- Default the 3D editor to Transform mode to restore 4.5 behavior
- Prevent BonePropertiesEditor crash due to skeleton use-after-release
- Node3DEditorViewport: Prevent crash while handling input
- Debugger: Fix 3D disabled builds
- Fix sorting_offset property flags for Decal
- Fix rotation gizmo line position
- Fix crash when selecting SplineIK3D
- Keep other parts of transform gizmo visible when rotating in local mode
- Fix Sprite3D modulate propagation on reparenting

Animation:
- Fix animation loop import hints becoming lost
- Add tests for AnimationPlayer
- Use LocalVector in Animation
- Minor Animation Player workflow enhancements
- Fix issue of AnimationPlayer hiding bezier editor when re-selecting it
- Add interpolate_via_rest() static func to Animation class
- Display AnimationTree editor warnings when the node is disabled
- Add toggle for inserting keys/markers at current time vs mouse cursor's position
- Add ability to copy and paste animations in SpriteFrames
- Add "Go to Next/Previous Keyframe" to Animation Edit menu
- Propagate Tween.kill() to subtweens
- Fix missing shortcuts for play buttons in SpriteFrames Editor
- Allow reconnecting AnimationNodeStateMachine transitions
- Correctly reset StateMachine opacity when a node is played or renamed
- Make BlendSpace selection tool consistent with StateMachine/BlendTree functionality
- Double-click BlendSpace points to open their editor
- Expose get_fading_... methods for AnimationNodeStateMachinePlayback
- Add SkeletonModifier3D IKs as IKModifier3D
- Improve deselection in AnimationTree editors and inspector
- Trim -loop & -cycle from animations during Godot 3 to 4 conversion
- Fix Skeleton2D TwoBoneIK and LookAt mirroring
- Add option to BoneConstraint3D to make reference target allow to set Node3D
- Add option to keying modified transform by SkeletonModifier3D
- Fix _validate_property() in RetargetModifier3D
- Optimize Animation::_track_update_hash
- Fix read-only state for Skeleton and Inspector
- Change AnimationLibrary serialization to avoid using Dictionary
- Fix Reset on Save corrupt poses if scene has multiple Skeletons
- Ensure the AnimationPlayer emits animation_finished for every animation
- Fix imported animation warning labeled as Imported Scene
- Allow resizing the length of animations by dragging the timeline
- Change list of Tweeners from Vector to LocalVector
- Show marker lines/sections in the animation bezier editor
- Fix AnimationPlayer to use StringName instead of String in the exposed API
- Add solo/hide/lock/delete buttons to node groups in bezier track editor
- Fix backward/pingpong root motion in AnimationTree
- Make extended SkeletonModifiers retrieve interpolated global transform
- Expose is_valid() from AnimationPlayer to make detecting paused animations possible
- Add LimitAngularVelocityModifier3D
- Fix incorrect AnimationNodeAnimation timeline_length description
- Make StateMachinePlayback set Start state as default in constructor
- Add relative option to LookAt/AimModifier3D
- Change Vector to LocalVector in SpringBoneSimulator3D
- Set step before set value, to fix animation length issue
- Fix crash when rearranging filtered animation tracks
- Seek to beginning of section if current playback position is after its end
- Fix unwanted blend position movement
- Allow Spring / IK to set mutable bone axes
- Improve validation for adding transition in StateMachine
- Remember animation snapping state
- Separate branching ping-pong time and delta
- Add "Abort on Reset" property to AnimationNodeOneShot
- Track groups in Animation tab hover highlight
- Improve Bezier Default Mode button in Animation dock
- Remove default skeleton path in MeshInstance3D
- Fix NodeOneShot doesn't reset correctly
- Add Deterministic option to IterateIK3D
- Fix custom audio track blend flag on reimport
- Move the line of calling animation_finished signal to ensure stopping
- Fix JacobianIK to apply gradient correctly
- Make AnimationLibrary use RBMap instead of HashMap
- Fix error in BlendSpace2D when selecting blend position tool
- Move the line of importing JointLimitation3D to 3D from Physics3D
- Add an argument p_reset to SpringBoneSimulator3D::_make_joints_dirty()
- Fix AHashMap realloc cause AnimationPlayer crash (reverted)
- Fix mutable bone axes process in TwoBoneIK3D
- Fix AnimationMixer error spam by respecting cache validity on invalid root_node
- Fix empty 2D skeleton modification keeps printing error messages
- Revert: Fix AHashMap realloc cause AnimationPlayer crash
- Add BoneTwistDisperser3D to propagate IK target's twist
- Remove is_penetrated check from IK as role overlap/excessive behavior
- Add shortcuts in tooltips to the animation editor's play/pause buttons
- Use physical key shortcuts for the animation editor's play/pause buttons
- Fix truncation of node name in bezier animation editor
- Fix Animation Editor erroring when animating SpriteAnimation3D frame but not animation
- Fix the clipping of keys when moving keys
- Fix Marker Name covered by AnimationPlayer track backgrounds
- Return at invalid skeleton in ChainIK3D before updating mutable info
- Fix AnimationMixer handling disabled track in RESET
- Fix setter for readonly bone name in the joint array and add null check in IKModifier3D
- Change radius_range to angle to indicate hole size of JointLimitationCone3D
- Fix IKModifier/JointLimitation gizmo on root bone and dirty handling
- Ensure clear_animation_instances() after blending frame result
- Fix AnimationPlayerEditor failed to fetch AnimationTree's libraries
- Fix discrete key is not processed by advance_on_start in AnimationNode
- Make base_height_adjustment apply to global position & Fix false warning Animated extra bone between mapped bones detected
- Tweak SkeletonModifier3D document for _process_modification_with_delta() and JacobianIK3D icon
- Hide animation library properties in inspector
- Fix animation editor sometimes not processing on scene change
- Fix Skeleton3D edit mode usability issues
- Fix animation library serialization compatibility for 4.5 projects
- Remove dead definition get_animation_libraries() from AnimationMixer
- Fix wrong play position for the AnimationMarkerEdit
- Allow ONE_SHOT_REQUEST_FIRE to override OneShot abortion
- Tweak IKModifier3D docs and comment

Assetlib:
- Fix author names not showing up in the AssetLib
- Fix extra spacing in author names when opening the asset dialog

Audio:
- Replace minimp3 with dr_mp3
- Change the random pitch on the audio stream randomizer to be in semitones, not a frequency multiplier
- Pause audio when game is paused
- Ignore changes in "Master" bus while in the Audio Importer
- Use 64-bit offset/loop points in AudioStreamWAV
- AudioStreamOggVorbis: only show invalid comment warning in Editor builds
- Add one padding frame to QOA buffer for short streams
- Fix AudioStreamPolyphonic to honor AudioStreamPlayer.pitch_scale
- Vorbis: Add details to warning about invalid comment header
- macOS: Fix microphone issue
- Statically protect Object::cast_to for unrelated Object types
- Fix CoreAudio driver crash when starting input with uninitialized device
- AudioServer to have function to access microphone buffer directly
- Check if on tree before calling can_process()

Buildsystem:
- SCons: Integrate annotations where relevant
- Add profiler_path option to SCons builds, with support for tracy and perfetto
- Reduce cross project includes by rewriting HashMapHasherDefault
- Add STATIC_ASSERT_INCOMPLETE_TYPE to enforce include minimality
- Replace iOS/visionOS Xcode templates by new Apple embedded template
- CI: Generate debug build for Android
- SCons: Ensure CPPDEFINES is properly utilized
- Add a Swappy installation script for easier Android builds
- SwiftUI lifecycle for Apple embedded platforms
- make_rst.py: Add missing rst-class to annotation descriptions
- Improve the CPP dialect selection for Rider, when MSVC is not used (reverted)
- Linux: Allow unbundling libjpeg-turbo to use system package
- Editor: Generate translation data in separate cpp files
- CI: Bump Ruff version (0.12.0 → 0.13.1)
- SCons: Fix Windows silence_msvc logfile encoding
- Fix HashMap/HashSet in natvis after member renames
- Revert "Replace many uses of is_class with derives_from."
- Windows: Migrate godot.manifest to platform/windows, include as dependency
- CI: Bump clang-format and clang-tidy versions
- Fix unreachable code warning in double-precision builds
- CI: Add pre-commit hook for XML linting
- Fix compiling SDL without DBus under Linux
- System-provided ENet warning
- CI: Fix CODEOWNERS inconsistencies
- Replace std::size usage with std_size to avoid <iterator> include
- CI: Bump SCons version [4.9.0→4.10.0]
- Fix 2D debug templates linking
- Remove Array include from dictionary.h and ustring.h
- Make BasisUniversal basisu_astc_hdr_6x6_enc.h non-executable
- Remove rw_lock.h and rb_map.h includes from object.h
- Build: Fix container build path for swift
- macOS: Move includes inside #ifdef so OpenGL can be disabled
- Revert "SCons: Add CPPEXTPATH for external includes"
- Scons: Remove system includes
- Add max() to Span, replacing <algorithm> include from rendering_device_commons.h
- Windows: Fix MinGW build
- Fix Steam time tracker build
- Remove compositor.h include from world_3d.h
- Remove transitive rendering includes from node.h
- SCons: Don't activate fast_unsafe automatically on dev_build
- Remove circular unneeded debug_adapter_protocol.h include from debug_adapter_parser.h
- Remove extraneous includes from texture.h
- Fix 2D builds (again)
- SCons: Enable MinGW big objects universally
- Fix use of outdated macros in ObjectDBProfiler
- Remove display_server.h transitive include from node.h
- Fix some compilation errors
- Remove callable_bind.h from object.h
- Fix missing includes in headers
- SCons: Remove transitive includes in libc++
- Build: Update to Xcode 26.0.1 for Apple builds
- SCons: Clean up hardcoded D3D12 driver workarounds
- MSVC: Check catalog_productSemanticVersion instead of catalog_productDisplayVersion
- Fix broken screenshot link in Appstream metadata
- Add some keywords to desktop entry
- Use pkg-config for recast flags
- macOS: Update clang version check
- Windows: Use separate resource files for export templates
- [macOS/iOS] Fix build with Xcode older than 26
- Update Android build tools to version 35.0.1
- Add workflow_dispatch triggers to platform CI
- Fix tracy implementation when no callstack sampling is desired
- Fix GodotProfileZone with tracy backend failing with shadowed variable name warnings
- CI: Remove cache clean action
- CI: Build Windows without D3D12 if install fails
- SCons: Fix logic when passing optimize=auto explicitly from command-line
- CODEOWNERS: Add 2D skeleton resources to the Animation team
- Include xkb-compose in wayland_thread.h
- Replace usage of Zstandard advanced API
- Revert "Improve the CPP dialect selection for Rider, when MSVC is not used"
- Web: Bump js-yaml from 4.1.0 to 4.1.1
- Fix Android build regression
- CI: Bump SCons version [4.10.0→4.10.1]
- CI: Bump Ruff version (0.13.1 → 0.14.7)
- Fix sprite_frames_editor_plugin compilation with deprecated=no
- Move Multiplayer icons to the module
- Check for unprefixed compilers when building on Windows
- Fix build errors and warnings with LLVM-21
- Thirdparty: Make GH PR references URLs
- Fix compiling Godot for Linux failing with profiler_sample_callstack=yes
- CI: Fix executable perms for various files
- Add missing cstdlib include for EXIT_SUCCESS and free
- gitignore: Ignore GNU patch .orig and .rej backup files
- Add Mesa version check
- RequiredPtr: Fix template conditional for MSVC
- Make Godot compile with 3D physics disabled again, again
- BasisUniversal: Disable strict aliasing to fix GCC optimization issue
- Avoid warning when compiling on visionOS 26 SDK
- Windows: Add missing extern "C" for hidsdi.h on MinGW < 12.0.0

C#:
- Add documentation for Interfaces and Attributes
- Add C# translation parser support
- Fix array span constructors in C#
- Fix loading correct solution file for projects in subdirectories
- Improve performance of CSharpLanguage::reload_assemblies
- Add ReadOnlySpan<Variant> overload for Callable.Call
- Remove EFS update on reloading assemblies
- Fix various errors in bindings generator
- Fix enum from/to Variant conversion
- Use explicit public access modifier in C# code
- Improve IsNormalized() in C#
- Update GodotTools .NET version from 6.0 to 8.0
- Fix IsStaticallyResolvable
- Update Godot.SourceGenerators packages
- Fix source generation of statically imported members
- Fix dotnet class lookup returning modified names instead of engine names
- Add compat method for DisplayServer.TtsSpeak
- Prevent C# source generators from fully qualifying members assigned to within an object initializer
- Fix StringExtensions.SplitFloats incorrect float parsing
- Ensure .NET editor supports Visual Studio 2026
- Change MSBuildPanel to EditorDock
- Fix FileAccess::create_temp() not using FileAccess::ModeFlags
- Hide signals prefixed by underscore

Codestyle:
- Improve usage of String.split() vs get_slice()
- Move server files into their subfolders
- Misc script editor code cleanup
- Add Memory::get_aligned_address to simplify data offset constants
- Add is_instance() helper method to Node
- Delete VariantGetInternalPtr and VariantImplicitConvert, replace with VariantInternalAccessor
- Don't hard-code hsplit count
- Rename internal fields and variables in AHashMap, HashMap and HashSet
- Rename server free functions to free_rid to match exposed API
- Remove implicit conversions between LocalVector and Vector
- Remove dependency of variant.h in print_string.h
- Remove unused methods in ResourceLoader
- Core: Handle disabled class detection in ClassDB
- Replace repetitive meta/ctrl condition with a method
- Remove empty constructors and destructors from core/
- Remove unnecessary cpp files after cleanup
- Reduce code duplication in material conversion
- Copyright: Fix spelling of license
- Refactor _edit_current() script check
- Core: Integrate semantic constants in math structs
- Fix inconsistent internal name of get_resource_filesystem
- Misc cleanup in EditorExportPlatform
- Remove overrun code duplication
- Skip copying values constructed immediately before returning
- Use const ref parameters in the Web modules
- Remove unused import_path member from Node
- Change Memory from a class into a namespace
- Group together 2D camera override functions
- Refactor Array iterators to be trivially copyable
- Store ThemeOwner owner directly as Node*
- Remove timer.h include from control.h
- Remove file_access.h and script_backtrace.h includes from logger.h
- Core: Clean up headers in core/config, forward-declare MainLoop in OS
- Remove VariantHasher and VariantComparator in favor of specializing HashMapHasherDefault and HashMapComparatorDefault
- Clean up hashfuncs.h
- Fix wrong EditorSettings usage in 3D editor
- Improvements to ProjectManager's _update_theme()
- Use American spelling of "favorite" in Project Manager code for consistency
- Remove unused private variables in godot/scene
- Remove unused private variables in expression.h
- Apply codespell to CHANGELOG.md
- Fix wording in TileSet collision polygon error message

Core:
- Add DUPLICATE_INTERNAL_STATE flag
- Fix resource shared when duplicating an instanced scene
- Supplement the case of scene instantiation for "Editable Children"
- Initialize Quaternion variant with identity
- Add change_scene_to_node()
- Change how ImageTexture's image is defined
- Clean up String::find and similar functions to remove duplicate code, and speed up comparison
- Add Image.load_exr_from_buffer
- Round AtlasTexture size
- Remove load_steps from resource_format_text.cpp
- Optimize vformat by using Span in sprintf
- Add Span equality (== and !=) operators
- Add 'Find Sequence' to Spans, and consolidate negative indexing behavior
- Fix non-tool script check when emitting signals
- Expose missing String encoding conversion functions
- Add recording_signals to MissingNode, and rename MTVIRTUAL to DEBUG_VIRTUAL
- Make MissingNode/MissingResource non-virtual and hide from dialogs
- Add initial architecture for first-class Object types. Optimize is_class
- Add reserve function to Array, Vector, and String
- Add reserve_exact to CowData, and change growth factor to 1.5x
- Fix Dictionary::operator[] from C++ accidentally modifying const dictionaries
- Add unique Node IDs to support base and instantiated scene refactorings
- Fix FixedVector move and copy semantics
- Add Node::iterate_children as a fast way to iterate a node's children
- Use LocalVector for Node3D and CanvasItem children
- Provide quick access to Object ancestry
- Improve error message when UID main scene is not found
- Simplify varray
- Avoid unnecessary copy in ClassDB::get_property_list
- Optimize scene tree groups
- Simplify ScriptServer::get_global_class_list
- Optimize and clean up HashSet::clear
- Add project setting and build option to disable override.cfg and related CLI arguments
- Use num_scientific (Grisu2) when stringifying JSON with full precision
- Handle NaN and Infinity in JSON stringify function (reverted)
- Do not zero elements and perform fast clear in HashMap
- Ensure all MovieWriter frames have the same resolution as the first frame
- Make getting a path from UID cache slightly faster
- Round gradient colors
- Add has_extension() method to String
- Fix FileAccess::create_temp() default args error
- Geometry2D minor optimization
- Make Node::orphan_node_count thread-safe
- Perform per-line or per-rect blits in blit_rect
- Optimize data flushing for FileAccessCompressed and FileAccessEncrypted
- Remove unused parameter in __constant_get_enum_name/__constant_get_bitfield_name
- Image: Support generating mipmaps for all uncompressed formats
- Image: Optimize manual format conversion
- Fix duplicate minus in print output
- Prevent JNI Variant conversion stack overflow
- Add reverse UID cache
- Optimize NodePath to String by using cached path
- Avoid repeated _copy_on_write() calls in Array::resize()
- Check for NUL characters in string parsing functions
- Improve Node::get_children performance
- Apply rtos_fix hack for handling 32-bit floats on all calls to rtos_fix
- X11 input: prevent non-printable keys from producing empty strings
- Optimize children cache updates and refine special-case handling
- Add GDSOFTCLASS to NetSocket
- Add ability to get list of Project Settings changed, similar to Editor Settings functionality
- Add GDSOFTCLASS to six inheritors of Object
- Use AncestralClass to speed up Object::cast_to when possible
- Change "reserve called with a capacity smaller than the current size" error message to a verbose message
- Replace many uses of is_class with derives_from. (reverted)
- Add GDSOFTCLASS to deeper inheritors of Object
- Add comments to String::size to lead people to length() and explain the difference
- Remove unused multiplayer member from Node
- Make CowData::reserve warn message when new capacity < size verbose, like other reserve methods
- Optimize initial Node::get_path call by avoiding Vector::reverse
- Speed up Node::is_greater_than by avoiding alloca
- Remove hash_map.h include from a_hash_map.h, and remove cross conversion operators
- Remove unused members from Viewport
- Improve type registration order in register_core_types.cpp
- Remove Object::script
- Simplify gdvirtual.gen.inc _get_method_info arguments with a helper function
- Abstract Object virtual pointer init into a method instead of duplicating it across gdvirtual.gen.inc
- Bitpack more Object booleans
- Assert that dictionary.h does not include String, and that neither of the fundamental containers include Object
- Register core singleton types before instantiating them
- Fix load_threaded_get returning null when used with CACHE_MODE_IGNORE
- Reorder registration of types, to register supertypes before subtypes
- Revert "Handle NaN and Infinity in JSON stringify function"
- Handle NaN and Infinity in JSON stringify function
- Fix missing includes in type_info.h
- Add missing initialization for bitpacked object members
- Consolidate typed container logic with type_info.h
- Fix false positive warning with FixedVector array bounds in gcc
- Sidestep GCC false-positive
- Fix buffer over-read in FileAccessMemory::get_buffer
- Improve determinism of UIDs
- Disable some unsafe CLI arguments in template builds by default
- Fix memnew_placement with char * arguments
- Fix duplicating node references of custom node type properties
- Main: Fix typo in --gpu-profile CLI argument
- ClassDB: Use AHashMap for property_setget and constant/signal_map
- Explain Dictionary.set() return value in docs
- Add warning when node name is invalid (reverted)
- Revert "Add warning when node name is invalid"
- Avoid extra copy in Vector/CowData push_back/insert
- Switch RID_Alloc::owns to lock-free (reverted)
- Add a const version of List::find
- Add memory profiling macros for tracy profiler option
- Fix scene argument parsing
- Add some comments in the profiling.h header
- Add permissions/manage_media to Android export options
- Add error message when trying to load project from CWD
- Include key in Dictionary::operator[] error message
- Fix bug where optional argument is not validated before use
- Correctly mark frame start for profilers (Tracy/Perfetto) on Linux
- Fix String::rfindn for strings with only one character
- Only call GodotProfileAlloc when the allocation actually happened
- Fix a thread warning
- Allow override.cfg to add autoloads to the front of the list
- Ensure paths in autoload info
- ResourceLoader: Fix potential infinite recursion in progress reporting
- Skip ResourceLoader's progress query if not requested
- Reuse/optimize common OperatorEvaluator*::evaluate logic
- Fix memory alignment on 32-bit Windows
- Add back I/O error-handling to FileAccessPack constructor
- Do not attempt deleting local cache in Resource::_teardown_duplicate_from_variant
- Make Variant::get_type_by_name HashMap initialization thread-safe
- Mention the called function name in thread group error messages
- Fix loading old-style translation files
- Add Apple Instruments support
- Android: Add method to take persistable URI permission
- Optimize NodePath
- Fix crash in command_queue_mt due to destruction of wrong object
- Make !configured checks in profiling.cpp soft checks instead of crashing
- Unix: Remove leading .. from absolute paths and apply simplify_path to Unix current directory path
- Add support for profiling system calls from GDScript with the tracy integration
- CommandQueueMT: Make re-entrant again + Fix multiple flushers case
- Make memory profiling optional
- Fix building with Perfetto profiler
- macOS: Remove duplicate profiler init call
- Vector4: Fix loss of precision with division
- Remove underscore from parameter name in FileAccess::set_extended_attribute_string
- Fix potential DAP crash at startup
- Add inline documentation to Vector::reserve and Vector::reserve_exact
- Fix description for resize_uninitialized
- Auto-release static GDTypes at exit
- Revert "Core: Switch RID_alloc::owns to lock-free"
- Restore period in loaded node paths

Documentation:
- Document RIDs that will be freed automatically when freeing their deps
- Fix ItemList docs for the focus Stylebox's draw order
- Update color encoding documentation
- Update EditorImportPlugin docs and clarify which methods are required
- Add notes about InputEventKey property usage
- Fix typeof example in @GlobalScope docs
- Document typed dictionaries and arrays in the class reference
- Improve Texture*RD, RenderData and LightmapperRD class documentation
- Fix miscellaneous oddities around the class reference (part 6)
- Web: Add notice about issues with setting custom cursor shape every frame
- Add missing required qualifier for various classes
- Docs: Fix typo in Object.get_signal_list
- Add documentation about logging from Logger not being supported
- Clarify truncation behavior in file open modes
- OpenXRExtensionWrapper: Document how to safely work when rendering with "Separate" thread model
- Fix typos and link tutorial in WebRTCPeerConnection docs
- Clarify that velocity doesn't need delta multiplication in CharacterBody documentation
- Image: Improve AlphaMode documentation
- Document PhysicsServer3D shapes
- Fix minor grammar error in CollisionPolygon2D, CollisionPolygon3D, CollisionShape2D, and CollisionShape3D docs
- Document the interaction between Light3D cull mask and GI/volumetric fog
- Fix Basis.determinant() doc: uniform scale determinant is scale^3
- Improve docs for pitch and volume variation in AudioStreamRandomizer
- Fix documentation for embed_subwindows project setting
- Fix typo in control node _make_custom_tooltip description
- Document Label performance caveats with huge amounts of text
- Add accordion and details search keywords to FoldableContainer
- Document TileMapLayer.get_coords_for_body_rid() precision depending on quadrant size
- Rephrase Logger documentation to be more explicit about thread-safety
- Document CanvasItem visibility layers not being inherited from parent nodes
- Fix and improve Node2D.move_local_{x,y}() description
- Fix /tutorial added twice in offline docs
- Document compress() not being supported in exported builds in Image
- Fix description about CharacterBody velocity and delta
- Drop the experimental label for the Jolt Physics integration
- Fix typo "blocker" to "block" in AESContext
- Document link between Node2D.look_at() and Node2D.get_angle_to()
- Fix incorrect docs example in Dictionary.set description
- Add "Ragdoll System" Tutorial to PhysicalBone3D
- Update tutorial link for calling Javascript from script
- Improve documentation for the Environment glow effect
- Document relationship between refresh rate and V-Sync in DisplayServer
- Replace deprecated Color8
- Add note for some usages of Plane in APIs
- Fix text_editor/script_list/show_members_overview editor setting docs/tooltip
- Fix description of Viewport::set_input_as_handled
- Fix typo in mutex documentation
- Update documentation for Engine.physics_ticks_per_second and its project setting
- Update note for rendering/rendering_device/vsync/swapchain_image_count
- Improve Window content scale documentation
- Correct Array remove_at() class reference
- Add multilevel notes to methods
- TileSetAtlasSource: Fix and/an docstring typo
- Fix NOTIFICATION_OS_IME_UPDATE docs on platform availability
- Document color format caveats in Image.set_pixel()
- Document TextMesh performance caveats
- Document popups being invisible by default
- Fix copyright documentation oversights
- Fix typo in ResourceImporterImageFont docs
- Improve PROPERTY_USAGE_ARRAY description
- Add search keywords for project settings
- Improve HeightMapShape3D documentation
- Improve documentation for Vector2's angle-related methods
- Document CharacterBody.get_last_slide_collision() returning null with no collision
- Fix StringName not documented for enum hint
- Mention that SSAO is supported in the Compatibility renderer
- Fix OS.get_cmdline_args documentation
- Fix GDScript code sample for @GlobalScope.instance_from_id()
- Document Object.connect() not supporting persistent connections with lambda functions
- Clarify notification call order
- Tweak CanvasGroup description to be more explicit about its purpose
- Fix typo in Array docs
- Fix typo in MouseBehaviorRecursive enum description in Control class
- Clarify that Node.duplicate() duplicates entire subtree recursively
- Fix incorrect equivalent method reference in screen-space transform methods doc
- Fix display/window/size/initial_position_type project setting description
- Fix SkeletonProfileHumanoid bone count documentation
- Update docs to describe new use_hdr_2d behavior with Mobile renderer
- Fix documentation typos and broken links
- Clarify the purpose of MeshInstance2D and MultiMeshInstance2D
- Add better clarification for accelerator support on Popup Menu
- Fix miscellaneous oddities around the class reference (part 7)
- Docs: Fix ParticleProcessMaterial code snippet in alpha_curve description
- Doc: Add missing func keyword to EditorDock._update_layout example
- Fix typos in VectorNi docs (float division examples)
- Update documentation for DisplayServer::FEATURE_ICON
- Update EditorDock shortcut documentation
- Rename hinting mode 'Full' to 'Normal' to keep consistency
- Add "Threaded Loading Demo" link to ResourceLoader tutorials
- Document suffix hint in PROPERTY_HINT_RANGE
- Fix outdated comment in CanvasItem.draw_string() code sample
- Add Link to the Owner Tutorial
- Document RegEx.create_from_string() in RegEx class description
- Add missing method reference in ShaderMaterial.set_shader_parameter documentation
- Document runtime alternative to Default Theme Scale project setting
- Clarify using local variables with drawing methods
- Clarify align() behavior regarding force_update_scroll()
- Fix EditorDock documentation code example
- Specify units for angles in the LookAtModifier3D documentation
- README: Minor tweaks and remove broken badge
- Remove link for consoles in EditorExportPlatform

Editor:
- Show a warning toast when saving a large text-based scene
- Add a border to tooltips when using the Draw Extra Borders editor setting
- Add Ctrl + A and Ctrl + Shift + A to (de)select all projects in project manager
- Rework icons of noise-related classes
- Add icons to some editor classes
- Allow editing editor settings from project manager
- Move script name to top
- Allow rearranging translation list via drag and drop
- Refactor SceneTreeDock context menu separators
- Store script states for built-in scripts
- Add EditorResourcePreviewGenerator::request_draw_and_wait
- Add an ObjectDB Profiling Tool
- Fix various editor easing property issues
- Fix scripts panel state not being saved when toggle button is used
- Fix ProjectManager import dialog error
- Remove prompt to restart editor after changing custom theme
- Show file when FileSystem is searched with UID
- Condense Inspector layout for Arrays
- Add switch on hover to TabBar
- Fix Color precision error in the documentation generated on M4 macOS
- Support keeping results in results of Find in Files and Replace in Files
- Fix pressed keys reset when hiding a window on Windows
- Fix inspector spacing issues
- Optimize the callback argument of popup_create_dialog()
- Fix editing resources in the inspector when inside an array or dictionary
- Refactor editor EditorBottomPanel to be a TabContainer
- Add drag and drop export variables
- Rework editor docks
- Add "Distraction Free Mode" button to EditorBottomPanel when bottom panel is expanded
- Allow Quick Open dialog to preview change in scene
- Fix the extra arguments of type NodePath in the connection dialog do not work
- Allow closing all scene tabs via shortcut
- Make drag-and-dropped resources unique when holding Ctrl/Cmd in the editor
- Add game speed controls to the embedded game window
- Expose the signal when user select a file/folder in the FileSystemDock
- Fix TabContainer Editor theming and remove Debugger style hacks
- ShaderCompiler: Optimize compilation error printing
- Show "No Translations Configured" message for empty translation preview menu
- Add "Set as Main Scene" option to EditorSceneTabs context menu
- Add checkbox for blender's "GPU Instances" option for exporting GLTF
- Fix setting remote properties that take objects not working
- Show description for editor setting overrides
- Improve editor settings override display
- Simplify Node Filter's placeholder in Scene dock
- Replace Inspector pending stack usage with loop
- Clean up numeric EditorProperty setup() methods
- Add tab menu button to list currently opened scenes
- Replace spaces and use lowercase automatically for project manager tags
- Carry editor pseudolocalization CLI option across restarts
- Change preview methods to take Callable
- Allow moving nodes when they have different parents in SceneTreeDock
- Use create script dialog for script-type resources
- Hide property groups from the "Members" section in the remote inspector
- EditorFileSystem: Simplify resource loading logic on startup
- Add more PROPERTY_HINT_GROUP_ENABLE uses
- Automatically open newly created script
- Remove unused member variables in EditorInspector
- Add expression history to evaluator
- Remove unnecessary newlines from key tooltip
- Make file part of errors/warnings clickable in Output panel
- Make editor property clipboard static
- Update Breeze dark theme colors
- Improve Paste as Unique option
- Do not require editor restart when changing editor inspector settings
- Make bottom panel into available dock slot
- Add hint range and capitalization for Path3D Tilt Disk Size editor setting
- Do not poll for system theme changes
- Allow concurrent unbinding and binding of signal arguments in editor
- Move Material3D conversion editor plugins to their own folder
- Fix bad text contrast on readonly EditorPropertyArray/Dict/Res
- Reduce icon size in editor inspector NodePath properties to match design size
- Add suffix to EditorSpinSlider tooltips
- Clean up EditorPluginList
- Add confirmation dialog to filesystem dock when moving or copying files
- Remove unused member variables in EditorNode
- View resource signals in the Connections Dock
- Add a documentation link to the renderer selection dialog
- Use a fixed-width font for the expression evaluator
- Correct the order of Diagonal Mode in Add Property
- Add Shortcut tooltip to Editor Main Screen Plugins
- ThemeEditor: Reorganize/fix UI to make it fit in editor (at its minimum size in single-window mode) better
- Improve EditorRunBar shortcut tooltips to be more informative
- Deprecate get_scene() in EditorScript class
- Add icon & clear button to Select Method dialog search bar
- ProfilerAutostartWarning svg icon cleanup
- Add indicator to linked resources
- Fix scrolling to bottom panel selected button
- Speed up deletion via the Scene Tree Dock in large trees
- Miscellaneous editor optimizations for large scenes
- Speed up large selections in the editor
- Speed up signal disconnects in the editor
- Show symlink target in the resource tooltip
- Fix the text editor confusing resource files of class JSON with json files
- Replace "local" Vector with LocalVector
- Make FileSystemDock navigate to currently selected scene tab
- Extend DAP to allow debugging main/current/specific scene/secondary editor and command-line arguments
- Improve and reduce Game window sizing
- FindInFiles: Allow replacing individual results
- Update POT files when a file is moved or deleted
- Add Make_Unique_Recursive option for Resources with Arrays and Dictionaries
- Assign shortcuts to prev/next script buttons
- Fix typos in BlendSpace2D editor's axis labels' accessibility names
- Fix Audio bottom panel going under the taskbar on small displays
- Show simple dialog when there are no Resources to duplicate
- Refactor debugging on a device with DAP - now possible with all device types
- Add column boundary check in the autocompletion
- Fix folder color in FileSystem Dock when using light theme
- Differentiate the suspend button in the Game tab with the Pause button in the editor run bar
- Emit scene_changed event when opening a scene from an empty tab list
- Fix ScriptEditor::edit() not jumping to the first line
- Fix Clear option not visible when a Resource's @export-ed property is a Script
- Fix ScriptEditor::edit() ignoring column parameter
- Fix editor crash caused by EditorFileSystem::get_singleton access in theme initialization path
- Properly inspect old remote selection
- Add name info to EditorAutoloadSettings invalid name message
- Defer checking for rendering device support until the new project dialog is opened
- Enable objects stored as dictionary keys to be selected in inspector
- Fix vertical alignment of Inspector category titles
- Improve dependency editor warning
- Open translation CSV in the text editor instead of printing errors
- Set language encoding flag when using Pack Project as ZIP
- Fix Open Editor Data/Settings Folder menu in self-contained mode
- Fix favorite folders that are outside of the project being displayed in FileSystemDock's file list
- Fix crash due to null pointer dereference when moving/renaming folders in FileSystemDock
- Fix AudioBus editor not updating layout path
- Fix lost connections when saving branch as scene
- Allow custom debug monitors to select desired type
- Improve look of some buttons inside the inspector
- Allow to use sliders for integers in EditorSpinSlider
- Improve editor language selector
- Optimize PNG assets
- Fix the project file was not updated when some files were removed
- Fix wrong color for timeline indicator in the light theme
- Tweak the enum visual order for Sort Scripts By editor setting
- Add Create Resource Hotkey
- Expand LineEdit with metadata name in AddMetadataDialog
- Fix DPITexture editor icon name
- Keep shortcut selected when clearing filter
- Don't emit scene_changed when restoring scenes
- Fix selection of remote tree using the keyboard
- FindInFiles: Show the number of matches for each file
- Tweak macOS notarization export message in the editor
- Ignore main scene UID error in editor
- Cache editor setting queried in hot path in 2D editor
- Fix regression with min size on nested inspectors
- ProjectManager: Change favorite button tooltip to toggle
- Fix "Region Editor" stuck in drag state when closing
- Fix region folding not loading properly
- GUI: Fix nullptr deref in TextServer
- Fix editor log search ignoring BBCode formatting in messages
- Move file filter when filesystem dock is in the bottom panel
- Delete "Activate now?" button
- Add splitter to "Create New Node" dialog
- Fix Clear Inheritance issues
- Fix incorrect usage of Color::from_hsv() exposed by newer compilers
- Fix Quick Open history
- Add a new editor theme
- Fix enum strings losing space
- Set correct saved history after clearing
- Use Inter as the default editor font, features enabled
- Fix switching back to local SceneTree
- Remove side menu functionality in EditorFileDialog
- Reset found version before checking again
- Ensure correct metadata for enum items
- Android Editor: Update suspend button icon in GameMenuBar
- Project Manager: Prohibit duplicating a project into itself
- Android Editor: Add game speed control options in game menu bar
- Fix 'More Info…' link in Export/Encryption
- Should expand root when auto_expand is on
- Add source lines to file locations on POT generation
- Use Title Case for shortcut names in SpriteFramesEditorPlugin
- Enable maximize button for Editor/Project settings dialogs
- Enable script templates by default
- Fix some dragging operations in the editor breaking when tabbing out
- Keep the bottom panel size separate
- Fix editor inline color display of color from Color.from_rgba8
- Allow keyboard echo for ScriptEditor tab manipulation events
- Fix error when editing multifield values inside arrays and dictionaries
- Don't show exported script variables twice in the remote inspector
- Add "Show in File Manager" button to sidebar of Project Manager
- Fix opening found lines in built-in scripts
- Make remote debug elements ignore the canvas scaling
- Enable Gradle builds on the Android editor via a dedicated build app
- Add "with" stop word to the editor property name processor
- Game View Plugin: Fix signal connected too early causing theme warning
- Add OpenType feature settings to Main Font
- Save editor settings when modified from code
- Open source code errors in external editor
- Fix switch to GameView when closing game window
- Fix autoset of text_editor/external/exec_flags not working properly
- Add Zed to External Editor exec flags autofill
- Use ObjectID to store nodes in the editor selection
- EditorRun: Load override.cfg to get window configuration for embedded mode
- Change Go to Line default shortcut to Ctrl+G
- Use EditorSpinSlider in the theme editor
- Make editor remember the translation preview locale
- Fix FindInFiles crash when changing language
- Add donate button to project manager
- Fix file duplication making random UID
- Fix verbose running message
- Fix FileSystem file list mode button visibility
- Save project metadata less often
- Improve error message when _EDITOR_GET fails
- Fix missing setting error when starting the editor
- Improve editing EditorDock node
- Update documentation pages when switching themes
- Allow reloading empty scenes
- Fix layers property editor last bit value in tooltip
- Allow drag setting flags in layers property editor
- Stretch inline buttons & center text to full property header height
- Allow fixing indirect missing dependencies manually
- Fix error spam when dragging text in the script editor
- Autoloads with UIDs
- Fix FileSystem item color not updated after changing main scene
- Fix hover state for game speed button in game window
- Modern Style: Use a style box for Input Map actions
- Modern style: switch to classic renderer name colors
- Fix resource picker button style
- Persist fullscreen setting on Android Editor
- Fix canvas editor getting stuck on drag operations
- Fix GraphEdit contrast in modern theme
- Fix incorrect category size in EditorInspector on style switch
- Fix contrast for light color presets in the classic theme
- Fix warnings and error panel font not updating
- Fix 2D viewport scrollbar contrast in modern theme
- Fix EditorSpinSlider ignoring step
- Make EditorInspectorCategory's theme update happen via signal
- Improve visibility of separators in modern theme
- Add a style option button to quick settings
- Fix visual shader items not applying the correct theme components (reverted)
- Fix transparent panel in Tilset polygon editor using Classic theme
- Fix cannot edit property material for new Instance PackedScene
- Fix crash for classes without an icon
- Scene Dock: Simplify Filter Nodes related UI
- Enhance contrast on Modern theme
- Modern Style: Use a StyleBox in signals and groups
- Allow previewing DPITexture in Inspector
- Revert "Fix visual shader items not applying the correct theme components"
- Validate Resource type when pasting property
- Fix crash on queue free scene node in editor
- Add extra panels to some areas of the editor
- Fix overbrightened GraphEdit overlays in light version of modern theme
- Reduce outer inspector margins
- Prevent emitting signals when previewing resource
- [Android editor] Fix editor crash on exit
- Add error message to Quick Open dialog if callback is invalid
- Fix crash during POT generation due to scene dependency issues
- Correctly handle discarding of saved redo
- FileSystem dock: Use plural prompt message when moving/copying files
- Fix issues with property height in the inspector
- Change prev/next button theme variation to FlatButton for FileSystem and Inspector dock
- Fix incorrect bottom panel theming
- Add missing warning about copying packed arrays to EditorHelpBit
- Fix 2D ruler visibility in modern theme
- ScriptEditor::reload_scripts: Only call deferred if not main thread
- Remove padding columns from plugin settings
- Remove unnecessary theme settings when constructing FindInFilesContainer
- Fix ProjectManager UI going below window
- Fix error when changing language in FindInFilesPanel
- Fix find in files auto search when changing theme
- Allow editing groups on multiple nodes
- Add a right click menu to the project manager
- Android Editor: Adjust script editor size for virtual keyboard
- Don't expose underscored signals
- Fix not being able to set project path
- Don't save editor settings on startup
- Fix modified editor shortcuts being erased
- Fix modifying shortcuts in project manager causing crash
- Fix crash in EditorFileDialog by checking for null pointer
- Android Editor: Fix padding for display cutout in fullscreen mode
- Hide mouse focus from project list
- Fix input map editor (action map editor) items unable to be renamed
- Fix Scene > Export As... being incorrectly disabled
- Assign explicit ID to Export As menu
- Fix compilation errors with deprecated=no
- DAP: Enable showing errors to users
- Move History dock to the bottom left by default
- Fix visual glitch in the quick settings on the classic theme
- Add dedicated icon for Quick Load
- Add "Undo Close" & "Close All" options for EditorSceneTabs out-of-tabs context menu
- Fully hide preset settings when no preset is found in the export dialog
- Use new dock system for TileMap and TileSet
- Add bottom dock tab style setting
- Remove extra NOTIFICATION_VISIBILITY_CHANGED notifications in docks
- Always enable Make Unique for previewed overrides
- Fix the returned controls of EditorHelpBitTooltip::show_tooltip() were not freed in ScriptTextEditor
- Change Theme to EditorDock and add closable property
- Use new dock system for Debugger
- Fix "ERROR: Cannot get class" on scripts without class_name
- Update dock tabs on setting change
- Fix error message when closing the project manager on Wayland
- Resize right panel back to previous width
- Fix initial dock tabs
- PopupMenu: Fix redundant attempts to connect popup hidden signal on submenu
- Fix bottom dock offsets and change Audio to EditorDock
- Fix stale error highlighting when navigating script history
- Use new dock system for Animation and AnimationTree dock
- Improvements to ResourcePreloader editor
- Fix Editor Docks not updating tab styles when loading layout
- Disable embedded mode, if --headless is in the main instance argument list
- Use new dock system for SpriteFrames Dock
- Assign layout key to Debugger
- Fix dock opening focus
- Fix various problems with the credits roll
- MacOS: Fix focus grab warning on macOS when running game in embedded mode
- Fix infinite appending of docks without slots to config
- Use EditorDock for Polygon2D editor
- Fix bottom panel dock layout popup position
- Add missing icons to QuickOpen context menu
- Prevent double counting and cyclical error when gathering Resources
- Fix missing trailing dots in script editor search menu
- Fix GameStateSnapshots not being freed
- Improve accessibility in Create New Project dialog
- Unassign scene root before freeing
- Fix crash when capturing ObjectDB snapshot
- Fix MovieWriter checking wrong directory for disk space
- EmbeddedProcess: Fix invalid deferred call
- Use Unicode arrow symbols throughout the editor
- Expand Hide button in EditorHelp search
- EditorHelp: Scroll to the only result found every time
- Use EditorDock for Search Results
- Make OpenXRActionMapEditor into EditorDock
- Allow maximizing sprite related dialogs
- Hide "Open documentation" context menu button in project manager
- Disable "Override for Project" in project manager
- Fix DistractionFreeMode and BottomPanel
- Fix CreateDialog returning wrong type
- Make dock tabs switch on button release
- Remove "None" option in Version Control Editor
- Fix unexpected name when favoriting nodes from keyword matches
- VCS: Properly use IDs for OptionButton after #113522
- Fix signal order for direc