mirror of
https://github.com/godotengine/godot.git
synced 2026-02-07 19:32:36 +00:00
232 KiB
232 KiB
Changelog
This file lists all changes made between the current feature branch and the previous feature release. It is equivalent to the listings on our interactive changelog.
Changelogs for earlier feature releases are available in their respective Git branches, and linked at the end of this file.
4.6 - 2026-01-26
Table of contents:
- 2D
- 3D
- Animation
- Assetlib
- Audio
- Buildsystem
- C#
- Codestyle
- Core
- Documentation
- Editor
- Export
- GDExtension
- GDScript
- GUI
- I18n
- Import
- Input
- Multiplayer
- Navigation
- Network
- Particles
- Physics
- Platforms
- Plugin
- Rendering
- Shaders
- Tests
- Thirdparty
- XR
2D
- Fix Atlas Merge Tool crash (GH-101407).
- Fix smart snapping lines to disappear after using the pivot tool (GH-105203).
- Add "Use Local Space" option to the 2D editor (GH-107264).
- Fade TileMap editor overlay when zoomed out (GH-107573).
- Fix: Tilemap tools not overriding main editor tools (GH-107843).
- Highlight points on hover in the Polygon2D editor (GH-107890).
- Reduce TileMapLayerEditor's undo/redo memory usage (GH-107969).
- Add support for rotating scene tiles in TileMapLayer (GH-108010).
- Avoid unnecessary updates in
TileMapLayer(GH-109243). - Fix redundant calls of
CanvasItemEditor::_update_lock_and_group_buttononSceneTreeEditornode selection (GH-110320). - Improve tile source tooltips (GH-110328).
- Fix nested TileMapLayers highlight rendering in editor (GH-110768).
- Fix snap Polygon2D editor (GH-110989).
- Fix game
Camera2Doverride from editor and 2D debug templates building (GH-111149). - Add zoom to fit functionality to
SpriteFramesEditor(GH-111471). - Fix rotation/scale order in
CanvasItem::draw_set_transform(GH-111476). - Fix Camera2D limit checks for inverted boundaries (GH-111651).
- Fix "Match Corners" not correctly updating cells when erasing (GH-112145).
- Fix Polygon2D editor undo crash (GH-112241).
- Check for tiles outside texture on TileSet atlas settings changes (GH-112271).
- Fix TileSet editor crash on terrain pick in paint mode (GH-112349).
- Change
TileSetScenesCollectionSourceraw pointers in the TileSet editor to ref (GH-112739). - Prevent translating custom data layers (GH-112769).
- Fix
TileMapLayertransformations forNode2Dscene tiles (GH-112790). - FTI: -
Camera2Daccepts resets only after entering tree (GH-112810). - Fix
display_placeholdernot persisting (GH-112828). - Enable Vertical orientation for TileMap Dock (GH-113128).
- Fix TileMap Dock button placement and errors (GH-113594).
- Fix
get_scene_tile_display_placeholdererroring for transformed scene tiles (GH-113856). - Fix incorrect error message placement in TileMap Dock (GH-113870).
- Fix undo/redo for adding scene tiles (GH-114604).
- Fix pattern corruption in
TileMapLayer(GH-114653). - Geometry2D: Remove
arc_tolerancescaling and the comment related to that (GH-115293).
3D
- Commit transforms done with editor gizmo on tool mode switch (GH-86930).
- Fix 3D editor Emulate Numpad setting having no effect when previewing a camera (GH-93724).
- Get
Node3D.global_rotationfrom orthonormalized global basis (GH-95075). - Rename Select Mode to Transform Mode, and create a new Select Mode without transform gizmo (GH-101168).
- Fix viewport rotation gizmo aligned axis reversing (GH-101209).
- Move editor viewport gizmos visibility logic out of process notification (GH-102020).
- Remove redundant line when toggling cinematic preview (GH-102021).
- Condition editor viewport nav modifier checks on freelook / mouse is captured (GH-102055).
- TextureEditors: Compile shader/material only once (GH-104488).
- GridMap: fix cell scale not applying to the cursor mesh (GH-104510).
- Add Bresenham Line Algorithm to GridMap Drawing (GH-105292).
- Fix ghost collisions in
segment_intersects_convex()(GH-106084). - Change snap settings to not use LineEdits (GH-106684).
- Always use a dark background for 3D editor overlays even with light theme (GH-107154).
- Visual feedback update for viewport rotation gizmo (GH-107343).
- Do not require editor restart when changing Path 3d Tilt Disk Size setting (GH-108546).
- Do not require editor restart when changing manipulator gizmo opacity setting (GH-108549).
- Create a rotation arc showing accumulated rotation when using transform gizmo (GH-108576).
- Make rotation gizmo white outline a 4th handle that rotates around the camera's view-axis (GH-108608).
- Fix jump when cutting a selection in Gridmap (GH-108743).
- Remove spurious
Curve3Dchangedsignals (GH-109220). - Move
Lock View Rotationlabel logic out of process notification (GH-109490). - Remove unused editor setting
editors/grid_map/palette_min_width(GH-109582). - GLTF export: use ORM texture for occlusion/metallicRoughnessTexture if it exists (GH-109845).
- Fix
GridMapMove Action Undo/Redo/Cancel (GH-109878). - Fix numpad emulation in 3d navigation shortcuts (GH-110428).
- Remove
pixel_sizeprecision limit in Sprite3D (GH-111491). - Implement orbit snapping in 3D viewport (GH-111509).
- Improve Transform dialog (GH-111600).
- Fix the material preview sphere model (GH-112046).
- Fix
CollisionPolygon3Ddebug shape rendering (GH-112285). - Fix GridMap
cursor_instancetransparency error spam (GH-112301). - Remove undefined method
Skeleton3D::remove_bone(GH-112402). - Don't redraw
Sprite3D/AnimatedSprite3Doutside the tree (GH-112593). - Add MeshInstance3D upgrade code (GH-112607).
- Fix wrong AABB when selecting Node3D gizmo in editor (GH-112666).
- Fix preview CSG interfering with itself during drag and drop (GH-112861).
- Default the 3D editor to Transform mode to restore 4.5 behavior (GH-113458).
- Prevent BonePropertiesEditor crash due to skeleton use-after-release (GH-113631).
- Node3DEditorViewport: Prevent crash while handling input (GH-113895).
- Debugger: Fix 3D disabled builds (GH-113962).
- Fix
sorting_offsetproperty flags forDecal(GH-114335). - Fix rotation gizmo line position (GH-114408).
- Fix crash when selecting SplineIK3D (GH-114668).
- Keep other parts of transform gizmo visible when rotating in local mode (GH-114714).
- Fix
Sprite3Dmodulate propagation on reparenting (GH-115037).
Animation
- Fix animation loop import hints becoming lost (GH-91634).
- Add tests for
AnimationPlayer(GH-92649). - Use
LocalVectorinAnimation(GH-101285). - Minor Animation Player workflow enhancements (GH-103416).
- Fix issue of
AnimationPlayerhiding bezier editor when re-selecting it (GH-104371). - Add
interpolate_via_rest()static func to Animation class (GH-107423). - Display AnimationTree editor warnings when the node is disabled (GH-107468).
- Add toggle for inserting keys/markers at current time vs mouse cursor's position (GH-107511).
- Add ability to copy and paste animations in SpriteFrames (GH-107887).
- Add "Go to Next/Previous Keyframe" to Animation Edit menu (GH-107959).
- Propagate
Tween.kill()to subtweens (GH-108227). - Fix missing shortcuts for play buttons in SpriteFrames Editor (GH-109422).
- Allow reconnecting AnimationNodeStateMachine transitions (GH-109534).
- Correctly reset StateMachine opacity when a node is played or renamed (GH-109605).
- Make BlendSpace selection tool consistent with StateMachine/BlendTree functionality (GH-109792).
- Double-click BlendSpace points to open their editor (GH-109839).
- Expose
get_fading_...methods forAnimationNodeStateMachinePlayback(GH-109986). - Add
SkeletonModifier3DIKs asIKModifier3D(GH-110120). - Improve deselection in AnimationTree editors and inspector (GH-110131).
- Trim -loop & -cycle from animations during Godot 3 to 4 conversion (GH-110188).
- Fix Skeleton2D TwoBoneIK and LookAt mirroring (GH-110298).
- Add option to
BoneConstraint3Dto make reference target allow to setNode3D(GH-110336). - Add option to keying modified transform by
SkeletonModifier3D(GH-110376). - Fix
_validate_property()inRetargetModifier3D(GH-110380). - Optimize
Animation::_track_update_hash(GH-110400). - Fix read-only state for Skeleton and Inspector (GH-110487).
- Change AnimationLibrary serialization to avoid using Dictionary (GH-110502).
- Fix Reset on Save corrupt poses if scene has multiple Skeletons (GH-110506).
- Ensure the AnimationPlayer emits
animation_finishedfor every animation (GH-110508). - Fix imported animation warning labeled as Imported Scene (GH-110619).
- Allow resizing the length of animations by dragging the timeline (GH-110623).
- Change list of Tweeners from Vector to LocalVector (GH-110656).
- Show marker lines/sections in the animation bezier editor (GH-110676).
- Fix AnimationPlayer to use StringName instead of String in the exposed API (GH-110767).
- Add solo/hide/lock/delete buttons to node groups in bezier track editor (GH-110866).
- Fix backward/pingpong root motion in AnimationTree (GH-110982).
- Make extended SkeletonModifiers retrieve interpolated global transform (GH-110987).
- Expose
is_valid()fromAnimationPlayerto make detecting paused animations possible (GH-111178). - Add LimitAngularVelocityModifier3D (GH-111184).
- Fix incorrect AnimationNodeAnimation
timeline_lengthdescription (GH-111251). - Make StateMachinePlayback set
Startstate as default in constructor (GH-111325). - Add relative option to LookAt/AimModifier3D (GH-111367).
- Change Vector to LocalVector in SpringBoneSimulator3D (GH-111378).
- Set step before set value, to fix animation length issue (GH-111398).
- Fix crash when rearranging filtered animation tracks (GH-111427).
- Seek to beginning of section if current playback position is after its end (GH-111517).
- Fix unwanted blend position movement (GH-111803).
- Allow Spring / IK to set mutable bone axes (GH-111815).
- Improve validation for adding transition in StateMachine (GH-111935).
- Remember animation snapping state (GH-111952).
- Separate branching ping-pong time and delta (GH-112047).
- Add "Abort on Reset" property to AnimationNodeOneShot (GH-112054).
- Track groups in Animation tab hover highlight (GH-112148).
- Improve Bezier Default Mode button in Animation dock (GH-112231).
- Remove default skeleton path in MeshInstance3D (GH-112267).
- Fix NodeOneShot doesn't reset correctly (GH-112450).
- Add Deterministic option to IterateIK3D (GH-112524).
- Fix custom audio track blend flag on reimport (GH-112563).
- Move the line of calling
animation_finishedsignal to ensure stopping (GH-112571). - Fix JacobianIK to apply gradient correctly (GH-112573).
- Make AnimationLibrary use RBMap instead of HashMap (GH-112692).
- Fix error in
BlendSpace2Dwhen selecting blend position tool (GH-112710). - Move the line of importing JointLimitation3D to 3D from Physics3D (GH-112856).
- Add an argument
p_resettoSpringBoneSimulator3D::_make_joints_dirty()(GH-112867). - Fix mutable bone axes process in TwoBoneIK3D (GH-113055).
- Fix AnimationMixer error spam by respecting cache validity on invalid
root_node(GH-113140). - Fix empty 2D skeleton modification keeps printing error messages (GH-113176).
- Add BoneTwistDisperser3D to propagate IK target's twist (GH-113284).
- Remove
is_penetratedcheck from IK as role overlap/excessive behavior (GH-113285). - Add shortcuts in tooltips to the animation editor's play/pause buttons (GH-113415).
- Use physical key shortcuts for the animation editor's play/pause buttons (GH-113416).
- Fix truncation of node name in bezier animation editor (GH-113500).
- Fix Animation Editor erroring when animating SpriteAnimation3D
framebut notanimation(GH-113786). - Fix the clipping of keys when moving keys (GH-113903).
- Fix Marker Name covered by AnimationPlayer track backgrounds (GH-114056).
- Return at invalid skeleton in ChainIK3D before updating mutable info (GH-114062).
- Fix AnimationMixer handling disabled track in RESET (GH-114176).
- Fix setter for readonly bone name in the joint array and add null check in IKModifier3D (GH-114240).
- Change
radius_rangetoangleto indicate hole size ofJointLimitationCone3D(GH-114395). - Fix IKModifier/JointLimitation gizmo on root bone and dirty handling (GH-114431).
- Ensure
clear_animation_instances()after blending frame result (GH-114458). - Fix AnimationPlayerEditor failed to fetch AnimationTree's libraries (GH-114482).
- Fix discrete key is not processed by
advance_on_startin AnimationNode (GH-114487). - Make
base_height_adjustmentapply to global position & Fix false warningAnimated extra bone between mapped bones detected(GH-114543). - Tweak
SkeletonModifier3Ddocument for_process_modification_with_delta()andJacobianIK3Dicon (GH-114580). - Hide animation library properties in inspector (GH-114582).
- Fix animation editor sometimes not processing on scene change (GH-114603).
- Fix Skeleton3D edit mode usability issues (GH-114752).
- Fix animation library serialization compatibility for 4.5 projects (GH-114844).
- Remove dead definition
get_animation_libraries()from AnimationMixer (GH-114897). - Fix wrong play position for the
AnimationMarkerEdit(GH-114935). - Allow
ONE_SHOT_REQUEST_FIREto override OneShot abortion (GH-115175). - Tweak IKModifier3D docs and comment (GH-115303).
Assetlib
- Fix author names not showing up in the AssetLib (GH-112208).
- Fix extra spacing in author names when opening the asset dialog (GH-113017).
Audio
- Replace
minimp3withdr_mp3(GH-96547). - Change the random pitch on the audio stream randomizer to be in semitones, not a frequency multiplier (GH-103742).
- Pause audio when game is paused (GH-104420).
- Ignore changes in "Master" bus while in the Audio Importer (GH-106415).
- Use 64-bit offset/loop points in
AudioStreamWAV(GH-107596). - AudioStreamOggVorbis: only show invalid comment warning in Editor builds (GH-109844).
- Add one padding frame to QOA buffer for short streams (GH-110515).
- Fix AudioStreamPolyphonic to honor
AudioStreamPlayer.pitch_scale(GH-110525). - Vorbis: Add details to warning about invalid comment header (GH-110652).
- macOS: Fix microphone issue (GH-111691).
- Statically protect
Object::cast_tofor unrelatedObjecttypes (GH-111967). - Fix CoreAudio driver crash when starting input with uninitialized device (GH-112404).
- AudioServer to have function to access microphone buffer directly (GH-113288).
- Check if on tree before calling
can_process()(GH-114966).
Buildsystem
- SCons: Integrate
annotationswhere relevant (GH-99640). - Add
profiler_pathoption toSConsbuilds, with support fortracyandperfetto(GH-104851). - Reduce cross project includes by rewriting
HashMapHasherDefault(GH-106434). - Add
STATIC_ASSERT_INCOMPLETE_TYPEto enforce include minimality (GH-107587). - Replace iOS/visionOS Xcode templates by new Apple embedded template (GH-107789).
- CI: Generate debug build for Android (GH-108468).
- SCons: Ensure
CPPDEFINESis properly utilized (GH-108613). - Add a Swappy installation script for easier Android builds (GH-108674).
- SwiftUI lifecycle for Apple embedded platforms (GH-109974).
- make_rst.py: Add missing rst-class to annotation descriptions (GH-110276).
- Linux: Allow unbundling libjpeg-turbo to use system package (GH-110540).
- Editor: Generate translation data in separate cpp files (GH-110618).
- CI: Bump Ruff version (0.12.0 → 0.13.1) (GH-110664).
- SCons: Fix Windows
silence_msvclogfile encoding (GH-110691). - Fix HashMap/HashSet in natvis after member renames (GH-110882).
- Windows: Migrate
godot.manifesttoplatform/windows, include as dependency (GH-110897). - CI: Bump
clang-formatandclang-tidyversions (GH-110968). - Fix unreachable code warning in double-precision builds (GH-111018).
- CI: Add pre-commit hook for XML linting (GH-111052).
- Fix compiling SDL without DBus under Linux (GH-111146).
- System-provided ENet warning (GH-111211).
- CI: Fix
CODEOWNERSinconsistencies (GH-111222). - Replace
std::sizeusage withstd_sizeto avoid<iterator>include (GH-111223). - CI: Bump SCons version [4.9.0→4.10.0] (GH-111224).
- Fix 2D debug templates linking (GH-111242).
- Remove
Arrayinclude fromdictionary.handustring.h(GH-111244). - Make BasisUniversal
basisu_astc_hdr_6x6_enc.hnon-executable (GH-111253). - Remove
rw_lock.handrb_map.hincludes fromobject.h(GH-111254). - Build: Fix container build path for swift (GH-111299).
- macOS: Move includes inside
#ifdefso OpenGL can be disabled (GH-111301). - Revert "SCons: Add
CPPEXTPATHfor external includes" (GH-111331). - Scons: Remove system includes (GH-111346).
- Add
max()toSpan, replacing<algorithm>include fromrendering_device_commons.h(GH-111347). - Windows: Fix MinGW build (GH-111368).
- Fix Steam time tracker build (GH-111396).
- Remove
compositor.hinclude fromworld_3d.h(GH-111402). - Remove transitive rendering includes from
node.h(GH-111405). - SCons: Don't activate
fast_unsafeautomatically ondev_build(GH-111411). - Remove circular unneeded
debug_adapter_protocol.hinclude fromdebug_adapter_parser.h(GH-111470). - Remove extraneous includes from
texture.h(GH-111481). - Fix 2D builds (again) (GH-111487).
- SCons: Enable MinGW big objects universally (GH-111566).
- Fix use of outdated macros in ObjectDBProfiler (GH-111601).
- Remove
display_server.htransitive include fromnode.h(GH-111620). - Fix some compilation errors (GH-111621).
- Remove
callable_bind.hfromobject.h(GH-111633). - Fix missing includes in headers (GH-111696).
- SCons: Remove transitive includes in
libc++(GH-111767). - Build: Update to Xcode 26.0.1 for Apple builds (GH-111799).
- SCons: Clean up hardcoded D3D12 driver workarounds (GH-111800).
- MSVC: Check
catalog_productSemanticVersioninstead ofcatalog_productDisplayVersion(GH-111918). - Fix broken screenshot link in Appstream metadata (GH-112004).
- Add some keywords to desktop entry (GH-112005).
- Use pkg-config for recast flags (GH-112030).
- macOS: Update clang version check (GH-112034).
- Windows: Use separate resource files for export templates (GH-112116).
- macOS/iOS: Fix build with Xcode older than 26 (GH-112185).
- Update Android build tools to version 35.0.1 (GH-112437).
- Add
workflow_dispatchtriggers to platform CI (GH-112594). - Fix tracy implementation when no callstack sampling is desired (GH-112685).
- Fix
GodotProfileZonewith tracy backend failing with shadowed variable name warnings (GH-112823). - CI: Remove cache clean action (GH-112924).
- CI: Build Windows without D3D12 if install fails (GH-113112).
- SCons: Fix logic when passing
optimize=autoexplicitly from command-line (GH-113120). - CODEOWNERS: Add 2D skeleton resources to the Animation team (GH-113190).
- Include xkb-compose in
wayland_thread.h(GH-113195). - Replace usage of Zstandard advanced API (GH-113234).
- Web: Bump js-yaml from 4.1.0 to 4.1.1 (GH-113253).
- Fix Android build regression (GH-113388).
- CI: Bump SCons version [4.10.0→4.10.1] (GH-113403).
- CI: Bump Ruff version (0.13.1 → 0.14.7) (GH-113470).
- Fix
sprite_frames_editor_plugincompilation withdeprecated=no(GH-113527). - Move Multiplayer icons to the module (GH-113723).
- Check for unprefixed compilers when building on Windows (GH-113814).
- Fix build errors and warnings with LLVM-21 (GH-113857).
- Thirdparty: Make GH PR references URLs (GH-113926).
- Fix compiling Godot for Linux failing with
profiler_sample_callstack=yes(GH-114001). - CI: Fix executable perms for various files (GH-114047).
- Add missing
cstdlibinclude forEXIT_SUCCESSandfree(GH-114072). - gitignore: Ignore GNU
patch.orig and .rej backup files (GH-114105). - Add Mesa version check (GH-114142).
- RequiredPtr: Fix template conditional for MSVC (GH-114222).
- Make Godot compile with 3D physics disabled again, again (GH-114453).
- BasisUniversal: Disable strict aliasing to fix GCC optimization issue (GH-114839).
- Avoid warning when compiling on visionOS 26 SDK (GH-114904).
- Windows: Add missing
extern "C"forhidsdi.hon MinGW < 12.0.0 (GH-115010).
C#
- Add documentation for Interfaces and Attributes (GH-81701).
- Add c# translation parser support (GH-99195).
- Fix array span constructors in C# (GH-105950).
- Fix loading correct solution file for projects in subdirectories (GH-106031).
- Improve performance of
CSharpLanguage::reload_assemblies(GH-106299). - Add
ReadOnlySpan<Variant>overload forCallable.Call(GH-107800). - Remove EFS update on reloading assemblies (GH-108487).
- Fix various errors in bindings generator (GH-108489).
- Fix enum from/to Variant conversion (GH-108527).
- Use explicit public access modifier in C# code (GH-108885).
- Improve
IsNormalized()in C# (GH-108974). - Update GodotTools .NET version from 6.0 to 8.0 (GH-110799).
- Fix
IsStaticallyResolvable(GH-111523). - Update Godot.SourceGenerators packages (GH-111524).
- Fix source generation of statically imported members (GH-111570).
- Fix dotnet class lookup returning modified names instead of engine names (GH-112023).
- Add compat method for
DisplayServer.TtsSpeak(GH-112798). - Prevent C# source generators from fully qualifying members assigned to within an object initializer (GH-112874).
- Fix StringExtensions.SplitFloats incorrect float parsing (GH-112897).
- Ensure .NET editor supports Visual Studio 2026 (GH-112961).
- Change MSBuildPanel to EditorDock (GH-113115).
- Fix
FileAccess::create_temp()not usingFileAccess::ModeFlags(GH-114053). - Hide signals prefixed by underscore (GH-115199).
Codestyle
- Improve usage of
String.split()vsget_slice()(GH-62083). - Move server files into their subfolders (GH-89409).
- Misc script editor code cleanup (GH-94013).
- Add
Memory::get_aligned_addressto simplify data offset constants (GH-100145). - Add
is_instance()helper method to Node (GH-100437). - Delete
VariantGetInternalPtrandVariantImplicitConvert, replace withVariantInternalAccessor(GH-105254). - Don't hard-code hsplit count (GH-106849).
- Rename internal fields and variables in
AHashMap,HashMapandHashSet(GH-107045). - Rename server
freefunctions tofree_ridto match exposed API (GH-107139). - Remove implicit conversions between
LocalVectorandVector(GH-107469). - Remove dependency of
variant.hinprint_string.h(GH-107721). - Remove unused methods in
ResourceLoader(GH-108076). - Core: Handle disabled class detection in
ClassDB(GH-108121). - Replace repetitive meta/ctrl condition with a method (GH-108314).
- Remove empty constructors and destructors from
core/(GH-108340). - Remove unnecessary cpp files after cleanup (GH-108516).
- Reduce code duplication in material conversion (GH-108672).
- Copyright: Fix spelling of license (GH-109339).
- Refactor
_edit_current()script check (GH-109649). - Core: Integrate semantic constants in math structs (GH-109744).
- Fix inconsistent internal name of
get_resource_filesystem(GH-110156). - Misc cleanup in EditorExportPlatform (GH-110248).
- Remove overrun code duplication (GH-110819).
- Skip copying values constructed immediately before returning (GH-110952).
- Use const ref parameters in the Web modules (GH-110977).
- Remove unused
import_pathmember fromNode(GH-111043). - Change
Memoryfrom a class into a namespace (GH-111066). - Group together 2D camera override functions (GH-111106).
- Refactor
Arrayiterators to be trivially copyable (GH-111158). - Store
ThemeOwnerowner directly asNode*(GH-111249). - Remove
timer.hinclude fromcontrol.h(GH-111270). - Remove
file_access.handscript_backtrace.hincludes fromlogger.h(GH-111274). - Core: Clean up headers in
core/config, forward-declareMainLoopinOS(GH-111297). - Remove
VariantHasherandVariantComparatorin favor of specializingHashMapHasherDefaultandHashMapComparatorDefault(GH-111358). - Clean up
hashfuncs.h(GH-111361). - Fix wrong EditorSettings usage in 3D editor (GH-111589).
- Improvements to ProjectManager's
_update_theme()(GH-111649). - Use American spelling of "favorite" in Project Manager code for consistency (GH-112787).
- Remove unused private variables in
godot/scene(GH-113709). - Remove unused private variables in
expression.h(GH-113730). - Apply codespell to CHANGELOG.md (GH-114051).
- Fix wording in TileSet collision polygon error message (GH-114385).
Core
- Add
DUPLICATE_INTERNAL_STATEflag (GH-57121). - Fix resource shared when duplicating an instanced scene (GH-64487).
- Supplement the case of scene instantiation for "Editable Children" (GH-81530).
- Initialize
Quaternionvariant with identity (GH-84658). - Add
change_scene_to_node()(GH-85762). - Change how ImageTexture's image is defined (GH-89983).
- Clean up
String::findand similar functions to remove duplicate code, and speed up comparison (GH-101247). - Add
Image.load_exr_from_buffer(GH-101255). - Round AtlasTexture size (GH-101342).
- Remove
load_stepsfromresource_format_text.cpp(GH-103352). - Optimize
vformatby usingSpaninsprintf(GH-103917). - Add
Spanequality (==and!=) operators (GH-104280). - Add 'Find Sequence' to
Spans, and consolidate negative indexing behavior (GH-104332). - Fix non-tool script check when emitting signals (GH-104340).
- Expose missing
Stringencoding conversion functions (GH-104781). - Add
recording_signalsto MissingNode, and renameMTVIRTUALtoDEBUG_VIRTUAL(GH-105449). - Make
MissingNode/MissingResourcenon-virtual and hide from dialogs (GH-105450). - Add initial architecture for first-class
Objecttypes. Optimizeis_class(GH-105793). - Add
reservefunction toArray,Vector, andString(GH-105928). - Add
reserve_exacttoCowData, and change growth factor to 1.5x (GH-106039). - Fix
Dictionary::operator[]from C++ accidentally modifyingconstdictionaries (GH-106636). - Add unique Node IDs to support base and instantiated scene refactorings (GH-106837).
- Fix
FixedVectormove and copy semantics (GH-106997). - Add
Node::iterate_childrenas a fast way to iterate a node's children (GH-107369). - Use
LocalVectorforNode3DandCanvasItemchildren (GH-107481). - Provide quick access to
Objectancestry (GH-107868). - Improve error message when UID main scene is not found (GH-108075).
- Simplify
varray(GH-108118). - Avoid unnecessary copy in
ClassDB::get_property_list(GH-108504). - Optimize scene tree groups (GH-108507).
- Simplify
ScriptServer::get_global_class_list(GH-108577). - Optimize and clean up
HashSet::clear(GH-108698). - Add project setting and build option to disable
override.cfgand related CLI arguments (GH-108818). - Use
num_scientific(Grisu2) when stringifying JSON with full precision (GH-108836). - Do not zero elements and perform fast clear in
HashMap(GH-108932). - Ensure all MovieWriter frames have the same resolution as the first frame (GH-108954).
- Make getting a path from UID cache slightly faster (GH-108981).
- Round gradient colors (GH-109012).
- Add
has_extension()method to String (GH-109433). - Fix
FileAccess::create_temp()default args error (GH-109843). - Geometry2D minor optimization (GH-109897).
- Make
Node::orphan_node_countthread-safe (GH-109900). - Perform per-line or per-rect blits in
blit_rect(GH-110058). - Optimize data flushing for
FileAccessCompressedandFileAccessEncrypted(GH-110169). - Remove unused parameter in
__constant_get_enum_name/__constant_get_bitfield_name(GH-110206). - Image: Support generating mipmaps for all uncompressed formats (GH-110257).
- Image: Optimize manual format conversion (GH-110271).
- Fix duplicate minus in print output (GH-110354).
- Prevent JNI Variant conversion stack overflow (GH-110452).
- Add reverse UID cache (GH-110464).
- Optimize NodePath to String by using cached path (GH-110478).
- Avoid repeated
_copy_on_write()calls inArray::resize()(GH-110535). - Check for
NULcharacters in string parsing functions (GH-110556). - Improve
Node::get_childrenperformance (GH-110571). - Apply
rtos_fixhack for handling 32-bit floats on all calls tortos_fix(GH-110616). - X11 input: prevent non-printable keys from producing empty strings (GH-110635).
- Optimize children cache updates and refine special-case handling (GH-110650).
- Add
GDSOFTCLASStoNetSocket(GH-110694). - Add ability to get list of Project Settings changed, similar to Editor Settings functionality (GH-110748).
- Add
GDSOFTCLASSto six inheritors ofObject(GH-110752). - Use
AncestralClassto speed upObject::cast_towhen possible (GH-110763). - Change "reserve called with a capacity smaller than the current size" error message to a verbose message (GH-110826).
- Add
GDSOFTCLASSto deeper inheritors ofObject(GH-110837). - Add comments to
String::sizeto lead people tolength()and explain the difference (GH-110932). - Remove unused
multiplayermember fromNode(GH-111067). - Make
CowData::reservewarn message when new capacity < size verbose, like otherreservemethods (GH-111084). - Optimize initial
Node::get_pathcall by avoidingVector::reverse(GH-111126). - Speed up
Node::is_greater_thanby avoidingalloca(GH-111163). - Remove
hash_map.hinclude froma_hash_map.h, and remove cross conversion operators (GH-111221). - Remove unused members from
Viewport(GH-111304). - Improve type registration order in
register_core_types.cpp(GH-111318). - Remove
Object::script(GH-111323). - Simplify
gdvirtual.gen.inc_get_method_infoarguments with a helper function (GH-111327). - Abstract
Objectvirtual pointer init into a method instead of duplicating it acrossgdvirtual.gen.inc(GH-111337). - Bitpack more
Objectbooleans (GH-111339). - Assert that
dictionary.hdoes not includeString, and that neither of the fundamental containers includeObject(GH-111342). - Register core singleton types before instantiating them (GH-111383).
- Fix
load_threaded_getreturningnullwhen used withCACHE_MODE_IGNORE(GH-111387). - Reorder registration of types, to register supertypes before subtypes (GH-111431).
- Handle NaN and Infinity in JSON stringify function (GH-111498).
- Fix missing includes in
type_info.h(GH-111561). - Add missing initialization for bitpacked object members (GH-111617).
- Consolidate typed container logic with
type_info.h(GH-111661). - Fix false positive warning with
FixedVectorarray bounds in gcc (GH-111761). - Sidestep GCC false-positive (GH-111771).
- Fix buffer over-read in
FileAccessMemory::get_buffer(GH-111772). - Improve determinism of UIDs (GH-111858).
- Disable some unsafe CLI arguments in template builds by default (GH-111909).
- Fix
memnew_placementwithchar *arguments (GH-112033). - Fix duplicating node references of custom node type properties (GH-112076).
- Main: Fix typo in
--gpu-profileCLI argument (GH-112113). - ClassDB: Use
AHashMapforproperty_setgetandconstant/signal_map(GH-112129). - Explain
Dictionary.set()return value in docs (GH-112261). - Avoid extra copy in
Vector/CowDatapush_back/insert(GH-112630). - Add a const version of
List::find(GH-112660). - Add memory profiling macros for tracy profiler option (GH-112702).
- Fix scene argument parsing (GH-112716).
- Add some comments in the
profiling.hheader (GH-112725). - Add
permissions/manage_mediato Android export options (GH-112819). - Add error message when trying to load project from CWD (GH-112844).
- Include key in
Dictionary::operator[]error message (GH-112853). - Fix bug where optional argument is not validated before use (GH-112969).
- Correctly mark frame start for profilers (Tracy/Perfetto) on Linux (GH-113023).
- Fix
String::rfindnfor strings with only one character (GH-113044). - Only call
GodotProfileAllocwhen the allocation actually happened (GH-113061). - Fix a thread warning (GH-113064).
- Allow
override.cfgto add autoloads to the front of the list (GH-113078). - Ensure paths in autoload info (GH-113088).
- ResourceLoader: Fix potential infinite recursion in progress reporting (GH-113114).
- Skip ResourceLoader's progress query if not requested (GH-113117).
- Reuse/optimize common
OperatorEvaluator*::evaluatelogic (GH-113132). - Fix memory alignment on 32-bit Windows (GH-113145).
- Add back I/O error-handling to
FileAccessPackconstructor (GH-113150). - Do not attempt deleting local cache in
Resource::_teardown_duplicate_from_variant(GH-113179). - Make
Variant::get_type_by_nameHashMapinitialization thread-safe (GH-113211). - Mention the called function name in thread group error messages (GH-113218).
- Fix loading old-style translation files (GH-113322).
- Add Apple Instruments support (GH-113342).
- Android: Add method to take persistable URI permission (GH-113367).
- Optimize NodePath (GH-113447).
- Fix crash in
command_queue_mtdue to destruction of wrong object (GH-113525). - Make
!configuredchecks inprofiling.cppsoft checks instead of crashing (GH-113526). - Unix: Remove leading
..from absolute paths and applysimplify_pathto Unix current directory path (GH-113575). - Add support for profiling system calls from GDScript with the tracy integration (GH-113632).
- CommandQueueMT: Make re-entrant again + Fix multiple flushers case (GH-113802).
- Make memory profiling optional (GH-113807).
- Fix building with Perfetto profiler (GH-113812).
- macOS: Remove duplicate profiler init call (GH-113813).
- Vector4: Fix loss of precision with division (GH-113848).
- Remove underscore from parameter name in
FileAccess::set_extended_attribute_string(GH-113934). - Fix potential DAP crash at startup (GH-114196).
- Add inline documentation to
Vector::reserveandVector::reserve_exact(GH-114563). - Fix description for
resize_uninitialized(GH-114688). - Auto-release static GDTypes at exit (GH-114790).
- Restore period in loaded node paths (GH-115231).
Documentation
- Document RIDs that will be freed automatically when freeing their deps (GH-103113).
- Fix ItemList docs for the focus Stylebox's draw order (GH-103672).
- Update color encoding documentation (GH-104666).
- Update EditorImportPlugin docs and clarify which methods are required (GH-104740).
- Add notes about
InputEventKeyproperty usage (GH-105366). - Fix
typeofexample in @GlobalScope docs (GH-106768). - Document typed dictionaries and arrays in the class reference (GH-107071).
- Improve Texture*RD, RenderData and LightmapperRD class documentation (GH-107326).
- Fix miscellaneous oddities around the class reference (part 6) (GH-107536).
- Web: Add notice about issues with setting custom cursor shape every frame (GH-107586).
- Add missing required qualifier for various classes (GH-107989).
- Docs: Fix typo in
Object.get_signal_list(GH-108417). - Add documentation about logging from
Loggernot being supported (GH-109174). - Clarify truncation behavior in file open modes (GH-109632).
- OpenXRExtensionWrapper: Document how to safely work when rendering with "Separate" thread model (GH-109753).
- Fix typos and link tutorial in WebRTCPeerConnection docs (GH-109907).
- Clarify that velocity doesn't need delta multiplication in CharacterBody documentation (GH-109925).
- Image: Improve
AlphaModedocumentation (GH-110213). - Document
PhysicsServer3Dshapes (GH-110223). - Fix minor grammar error in CollisionPolygon2D, CollisionPolygon3D, CollisionShape2D, and CollisionShape3D docs (GH-110370).
- Document the interaction between Light3D cull mask and GI/volumetric fog (GH-110423).
- Fix
Basis.determinant()doc: uniform scale determinant isscale^3(GH-110424). - Improve docs for pitch and volume variation in AudioStreamRandomizer (GH-110435).
- Fix documentation for
embed_subwindowsproject setting (GH-110448). - Fix typo in control node
_make_custom_tooltipdescription (GH-110504). - Document Label performance caveats with huge amounts of text (GH-110533).
- Add
accordionanddetailssearch keywords to FoldableContainer (GH-110572). - Document
TileMapLayer.get_coords_for_body_rid()precision depending on quadrant size (GH-110575). - Rephrase
Loggerdocumentation to be more explicit about thread-safety (GH-110614). - Document CanvasItem visibility layers not being inherited from parent nodes (GH-110705).
- Fix and improve
Node2D.move_local_{x,y}()description (GH-110878). - Fix
/tutorialadded twice in offline docs (GH-110881). - Document
compress()not being supported in exported builds in Image (GH-111004). - Fix description about CharacterBody velocity and delta (GH-111102).
- Drop the experimental label for the Jolt Physics integration (GH-111115).
- Fix typo "blocker" to "block" in AESContext (GH-111133).
- Document link between
Node2D.look_at()andNode2D.get_angle_to()(GH-111139). - Fix incorrect docs example in
Dictionary.setdescription (GH-111216). - Add "Ragdoll System" Tutorial to
PhysicalBone3D(GH-111267). - Update tutorial link for calling Javascript from script (GH-111310).
- Improve documentation for the
Environmentglow effect (GH-111332). - Document relationship between refresh rate and V-Sync in DisplayServer (GH-111334).
- Replace deprecated
Color8(GH-111426). - Add note for some usages of Plane in APIs (GH-111459).
- Fix
text_editor/script_list/show_members_overvieweditor setting docs/tooltip (GH-111556). - Fix description of
Viewport::set_input_as_handled(GH-111591). - Fix typo in mutex documentation (GH-111672).
- Update documentation for
Engine.physics_ticks_per_secondand its project setting (GH-111774). - Update note for
rendering/rendering_device/vsync/swapchain_image_count(GH-111782). - Improve Window content scale documentation (GH-111804).
- Correct Array
remove_at()class reference (GH-111817). - Add multilevel notes to methods (GH-111830).
- TileSetAtlasSource: Fix and/an docstring typo (GH-111852).
- Fix
NOTIFICATION_OS_IME_UPDATEdocs on platform availability (GH-111863). - Document color format caveats in
Image.set_pixel()(GH-111896). - Document TextMesh performance caveats (GH-111962).
- Document popups being invisible by default (GH-111963).
- Fix copyright documentation oversights (GH-112006).
- Fix typo in ResourceImporterImageFont docs (GH-112063).
- Improve
PROPERTY_USAGE_ARRAYdescription (GH-112066). - Add search keywords for project settings (GH-112107).
- Improve HeightMapShape3D documentation (GH-112120).
- Improve documentation for Vector2's angle-related methods (GH-112140).
- Document
CharacterBody.get_last_slide_collision()returningnullwith no collision (GH-112180). - Fix
StringNamenot documented for enum hint (GH-112318). - Mention that SSAO is supported in the Compatibility renderer (GH-112451).
- Fix
OS.get_cmdline_argsdocumentation (GH-112466). - Fix GDScript code sample for
@GlobalScope.instance_from_id()(GH-112486). - Document
Object.connect()not supporting persistent connections with lambda functions (GH-112487). - Clarify notification call order (GH-112642).
- Tweak CanvasGroup description to be more explicit about its purpose (GH-112693).
- Fix typo in
Arraydocs (GH-112708). - Fix typo in
MouseBehaviorRecursiveenum description in Control class (GH-112714). - Clarify that
Node.duplicate()duplicates entire subtree recursively (GH-112907). - Fix incorrect equivalent method reference in screen-space transform methods doc (GH-112952).
- Fix
display/window/size/initial_position_typeproject setting description (GH-112962). - Fix SkeletonProfileHumanoid bone count documentation (GH-112986).
- Update docs to describe new
use_hdr_2dbehavior with Mobile renderer (GH-112990). - Fix documentation typos and broken links (GH-113073).
- Clarify the purpose of MeshInstance2D and MultiMeshInstance2D (GH-113122).
- Add better clarification for accelerator support on Popup Menu (GH-113197).
- Fix miscellaneous oddities around the class reference (part 7) (GH-113261).
- Docs: Fix ParticleProcessMaterial code snippet in
alpha_curvedescription (GH-113268). - Doc: Add missing
funckeyword toEditorDock._update_layoutexample (GH-113381). - Fix typos in VectorNi docs (float division examples) (GH-113782).
- Update documentation for
DisplayServer::FEATURE_ICON(GH-113875). - Update EditorDock shortcut documentation (GH-113888).
- Rename hinting mode 'Full' to 'Normal' to keep consistency (GH-113927).
- Add "Threaded Loading Demo" link to
ResourceLoadertutorials (GH-114087). - Document suffix hint in
PROPERTY_HINT_RANGE(GH-114116). - Fix outdated comment in
CanvasItem.draw_string()code sample (GH-114225). - Add Link to the Owner Tutorial (GH-114243).
- Document
RegEx.create_from_string()in RegEx class description (GH-114253). - Add missing method reference in
ShaderMaterial.set_shader_parameterdocumentation (GH-114262). - Document runtime alternative to Default Theme Scale project setting (GH-114291).
- Clarify using local variables with drawing methods (GH-114551).
- Clarify
align()behavior regardingforce_update_scroll()(GH-114638). - Fix
EditorDockdocumentation code example (GH-114706). - Specify units for angles in the LookAtModifier3D documentation (GH-114774).
- README: Minor tweaks and remove broken badge (GH-114960).
- Remove link for consoles in EditorExportPlatform (GH-114979).
Editor
- Show a warning toast when saving a large text-based scene (GH-53679).
- Add a border to tooltips when using the Draw Extra Borders editor setting (GH-76267).
- Add Ctrl + A and Ctrl + Shift + A to (de)select all projects in project manager (GH-77292).
- Rework icons of noise-related classes (GH-80427).
- Add icons to some editor classes (GH-82121).
- Allow editing editor settings from project manager (GH-82212).
- Move script name to top (GH-86468).
- Allow rearranging translation list via drag and drop (GH-89367).
- Refactor SceneTreeDock context menu separators (GH-92390).
- Store script states for built-in scripts (GH-93713).
- Add
EditorResourcePreviewGenerator::request_draw_and_wait(GH-96897). - Add an ObjectDB Profiling Tool (GH-97210).
- Fix various editor easing property issues (GH-97753).
- Fix scripts panel state not being saved when toggle button is used (GH-98936).
- Fix ProjectManager import dialog error (GH-100197).
- Remove prompt to restart editor after changing custom theme (GH-100876).
- Show file when FileSystem is searched with UID (GH-102789).
- Condense Inspector layout for Arrays (GH-103257).
- Add switch on hover to TabBar (GH-103478).
- Fix
Colorprecision error in the documentation generated on M4 macOS (GH-104112). - Support keeping results in results of
Find in FilesandReplace in Files(GH-104676). - Fix pressed keys reset when hiding a window on Windows (GH-104802).
- Fix inspector spacing issues (GH-105773).
- Optimize the
callbackargument ofpopup_create_dialog()(GH-106071). - Fix editing resources in the inspector when inside an array or dictionary (GH-106099).
- Refactor editor
EditorBottomPanelto be aTabContainer(GH-106164). - Add drag and drop export variables (GH-106341).
- Rework editor docks (GH-106503).
- Add "Distraction Free Mode" button to
EditorBottomPanelwhen bottom panel is expanded (GH-106780). - Allow Quick Open dialog to preview change in scene (GH-106947).
- Fix the extra arguments of type
NodePathin the connection dialog do not work (GH-107013). - Allow closing all scene tabs via shortcut (GH-107065).
- Make drag-and-dropped resources unique when holding Ctrl/Cmd in the editor (GH-107237).
- Add game speed controls to the embedded game window (GH-107273).
- Expose the signal when user select a file/folder in the FileSystemDock (GH-107275).
- Fix TabContainer Editor theming and remove Debugger style hacks (GH-107395).
- ShaderCompiler: Optimize compilation error printing (GH-107547).
- Show "No Translations Configured" message for empty translation preview menu (GH-107649).
- Add "Set as Main Scene" option to EditorSceneTabs context menu (GH-107652).
- Add checkbox for blender's "GPU Instances" option for exporting GLTF (GH-107672).
- Fix setting remote properties that take objects not working (GH-107687).
- Show description for editor setting overrides (GH-107692).
- Improve editor settings override display (GH-107765).
- Simplify Node Filter's placeholder in Scene dock (GH-107942).
- Replace Inspector
pendingstack usage with loop (GH-107947). - Clean up numeric EditorProperty
setup()methods (GH-108065). - Add tab menu button to list currently opened scenes (GH-108079).
- Replace spaces and use lowercase automatically for project manager tags (GH-108125).
- Carry editor pseudolocalization CLI option across restarts (GH-108129).
- Change preview methods to take Callable (GH-108162).
- Allow moving nodes when they have different parents in SceneTreeDock (GH-108168).
- Use create script dialog for script-type resources (GH-108180).
- Hide property groups from the "Members" section in the remote inspector (GH-108213).
- EditorFileSystem: Simplify resource loading logic on startup (GH-108236).
- Add more
PROPERTY_HINT_GROUP_ENABLEuses (GH-108254). - Automatically open newly created script (GH-108342).
- Remove unused member variables in
EditorInspector(GH-108379). - Add expression history to evaluator (GH-108391).
- Remove unnecessary newlines from key tooltip (GH-108404).
- Make file part of errors/warnings clickable in Output panel (GH-108473).
- Make editor property clipboard static (GH-108479).
- Update Breeze dark theme colors (GH-108534).
- Improve Paste as Unique option (GH-108551).
- Do not require editor restart when changing editor inspector settings (GH-108554).
- Make bottom panel into available dock slot (GH-108647).
- Add hint range and capitalization for Path3D Tilt Disk Size editor setting (GH-108677).
- Do not poll for system theme changes (GH-108705).
- Allow concurrent unbinding and binding of signal arguments in editor (GH-108741).
- Move Material3D conversion editor plugins to their own folder (GH-108766).
- Fix bad text contrast on readonly EditorPropertyArray/Dict/Res (GH-108872).
- Reduce icon size in editor inspector NodePath properties to match design size (GH-108882).
- Add suffix to EditorSpinSlider tooltips (GH-108929).
- Clean up
EditorPluginList(GH-108987). - Add confirmation dialog to filesystem dock when moving or copying files (GH-109017).
- Remove unused member variables in EditorNode (GH-109027).
- View resource signals in the Connections Dock (GH-109043).
- Add a documentation link to the renderer selection dialog (GH-109101).
- Use a fixed-width font for the expression evaluator (GH-109166).
- Correct the order of Diagonal Mode in Add Property (GH-109214).
- Add Shortcut tooltip to Editor Main Screen Plugins (GH-109234).
- ThemeEditor: Reorganize/fix UI to make it fit in editor (at its minimum size in single-window mode) better (GH-109237).
- Improve EditorRunBar shortcut tooltips to be more informative (GH-109306).
- Deprecate
get_scene()inEditorScriptclass (GH-109331). - Add icon & clear button to Select Method dialog search bar (GH-109384).
- ProfilerAutostartWarning svg icon cleanup (GH-109413).
- Add indicator to linked resources (GH-109458).
- Fix scrolling to bottom panel selected button (GH-109502).
- Speed up deletion via the Scene Tree Dock in large trees (GH-109511).
- Miscellaneous editor optimizations for large scenes (GH-109513).
- Speed up large selections in the editor (GH-109515).
- Speed up signal disconnects in the editor (GH-109517).
- Show symlink target in the resource tooltip (GH-109525).
- Fix the text editor confusing resource files of class JSON with json files (GH-109549).
- Replace "local"
VectorwithLocalVector(GH-109562). - Make FileSystemDock navigate to currently selected scene tab (GH-109587).
- Extend DAP to allow debugging main/current/specific scene/secondary editor and command-line arguments (GH-109637).
- Improve and reduce Game window sizing (GH-109701).
- FindInFiles: Allow replacing individual results (GH-109727).
- Update POT files when a file is moved or deleted (GH-109802).
- Add
Make_Unique_Recursiveoption forResourceswithArraysandDictionaries(GH-109816). - Assign shortcuts to prev/next script buttons (GH-109842).
- Fix typos in BlendSpace2D editor's axis labels' accessibility names (GH-109847).
- Fix Audio bottom panel going under the taskbar on small displays (GH-109915).
- Show simple dialog when there are no Resources to duplicate (GH-109919).
- Refactor debugging on a device with DAP - now possible with all device types (GH-109987).
- Add column boundary check in the autocompletion (GH-110017).
- Fix folder color in FileSystem Dock when using light theme (GH-110066).
- Differentiate the suspend button in the Game tab with the Pause button in the editor run bar (GH-110108).
- Emit
scene_changedevent when opening a scene from an empty tab list (GH-110135). - Fix
ScriptEditor::edit()not jumping to the first line (GH-110137). - Fix Clear option not visible when a Resource's
@export-ed property is a Script (GH-110189). - Fix
ScriptEditor::edit()ignoring column parameter (GH-110225). - Fix editor crash caused by
EditorFileSystem::get_singletonaccess in theme initialization path (GH-110242). - Properly inspect old remote selection (GH-110251).
- Add name info to EditorAutoloadSettings invalid name message (GH-110259).
- Defer checking for rendering device support until the new project dialog is opened (GH-110269).
- Enable objects stored as dictionary keys to be selected in inspector (GH-110291).
- Fix vertical alignment of Inspector category titles (GH-110303).
- Improve dependency editor warning (GH-110307).
- Open translation CSV in the text editor instead of printing errors (GH-110323).
- Set language encoding flag when using Pack Project as ZIP (GH-110387).
- Fix Open Editor Data/Settings Folder menu in self-contained mode (GH-110413).
- Fix favorite folders that are outside of the project being displayed in
FileSystemDock's file list (GH-110415). - Fix crash due to null pointer dereference when moving/renaming folders in
FileSystemDock(GH-110420). - Fix AudioBus editor not updating layout path (GH-110422).
- Fix lost connections when saving branch as scene (GH-110432).
- Allow custom debug monitors to select desired type (GH-110433).
- Improve look of some buttons inside the inspector (GH-110434).
- Allow to use sliders for integers in
EditorSpinSlider(GH-110459). - Improve editor language selector (GH-110492).
- Optimize PNG assets (GH-110566).
- Fix the project file was not updated when some files were removed (GH-110576).
- Fix wrong color for timeline indicator in the light theme (GH-110593).
- Tweak the enum visual order for Sort Scripts By editor setting (GH-110602).
- Add Create Resource Hotkey (GH-110641).
- Expand
LineEditwith metadata name inAddMetadataDialog(GH-110647). - Fix DPITexture editor icon name (GH-110661).
- Keep shortcut selected when clearing filter (GH-110690).
- Don't emit
scene_changedwhen restoring scenes (GH-110731). - Fix selection of remote tree using the keyboard (GH-110738).
- FindInFiles: Show the number of matches for each file (GH-110770).
- Tweak macOS notarization export message in the editor (GH-110793).
- Ignore main scene UID error in editor (GH-110810).
- Cache editor setting queried in hot path in 2D editor (GH-110814).
- Fix regression with min size on nested inspectors (GH-110827).
- ProjectManager: Change favorite button tooltip to toggle (GH-110855).
- Fix "Region Editor" stuck in drag state when closing (GH-110910).
- Fix region folding not loading properly (GH-110946).
- GUI: Fix
nullptrderef in TextServer (GH-110970). - Fix editor log search ignoring BBCode formatting in messages (GH-110972).
- Move file filter when filesystem dock is in the bottom panel (GH-111000).
- Delete "Activate now?" button (GH-111012).
- Add splitter to "Create New Node" dialog (GH-111017).
- Fix Clear Inheritance issues (GH-111025).
- Fix incorrect usage of
Color::from_hsv()exposed by newer compilers (GH-111050). - Fix Quick Open history (GH-111068).
- Add a new editor theme (GH-111118).
- Fix enum strings losing space (GH-111134).
- Set correct saved history after clearing (GH-111136).
- Use Inter as the default editor font, features enabled (GH-111140).
- Fix switching back to local SceneTree (GH-111150).
- Remove side menu functionality in
EditorFileDialog(GH-111162). - Reset found version before checking again (GH-111166).
- Ensure correct metadata for enum items (GH-111201).
- Android Editor: Update suspend button icon in GameMenuBar (GH-111204).
- Project Manager: Prohibit duplicating a project into itself (GH-111273).
- Android Editor: Add game speed control options in game menu bar (GH-111296).
- Fix 'More Info…' link in Export/Encryption (GH-111302).
- Should expand root when
auto_expandis on (GH-111393). - Add source lines to file locations on POT generation (GH-111419).
- Use Title Case for shortcut names in SpriteFramesEditorPlugin (GH-111448).
- Enable maximize button for Editor/Project settings dialogs (GH-111449).
- Enable script templates by default (GH-111454).
- Fix some dragging operations in the editor breaking when tabbing out (GH-111456).
- Keep the bottom panel size separate (GH-111499).
- Fix editor inline color display of color from
Color.from_rgba8(GH-111527). - Allow keyboard echo for ScriptEditor tab manipulation events (GH-111542).
- Fix error when editing multifield values inside arrays and dictionaries (GH-111606).
- Don't show exported script variables twice in the remote inspector (GH-111622).
- Add "Show in File Manager" button to sidebar of Project Manager (GH-111624).
- Fix opening found lines in built-in scripts (GH-111641).
- Make remote debug elements ignore the canvas scaling (GH-111700).
- Enable Gradle builds on the Android editor via a dedicated build app (GH-111732).
- Add "with" stop word to the editor property name processor (GH-111742).
- Game View Plugin: Fix signal connected too early causing theme warning (GH-111755).
- Add OpenType feature settings to Main Font (GH-111773).
- Save editor settings when modified from code (GH-111791).
- Open source code errors in external editor (GH-111805).
- Fix switch to GameView when closing game window (GH-111811).
- Fix autoset of
text_editor/external/exec_flagsnot working properly (GH-111820). - Add Zed to External Editor exec flags autofill (GH-111821).
- Use ObjectID to store nodes in the editor selection (GH-111837).
- EditorRun: Load
override.cfgto get window configuration for embedded mode (GH-111847). - Change
Go to Linedefault shortcut toCtrl+G(GH-111901). - Use
EditorSpinSliderin the theme editor (GH-111913). - Make editor remember the translation preview locale (GH-111919).
- Fix FindInFiles crash when changing language (GH-111934).
- Add donate button to project manager (GH-111969).
- Fix file duplication making random UID (GH-112015).
- Fix verbose running message (GH-112016).
- Fix FileSystem file list mode button visibility (GH-112052).
- Save project metadata less often (GH-112064).
- Improve error message when
_EDITOR_GETfails (GH-112069). - Fix missing setting error when starting the editor (GH-112070).
- Improve editing EditorDock node (GH-112087).
- Update documentation pages when switching themes (GH-112141).
- Allow reloading empty scenes (GH-112156).
- Fix layers property editor last bit value in tooltip (GH-112173).
- Allow drag setting flags in layers property editor (GH-112174).
- Stretch inline buttons & center text to full property header height (GH-112176).
- Allow fixing indirect missing dependencies manually (GH-112187).
- Fix error spam when dragging text in the script editor (GH-112190).
- Autoloads with UIDs (GH-112193).
- Fix FileSystem item color not updated after changing main scene (GH-112201).
- Fix hover state for game speed button in game window (GH-112210).
- Modern Style: Use a style box for Input Map actions (GH-112233).
- Modern style: switch to classic renderer name colors (GH-112242).
- Fix resource picker button style (GH-112243).
- Persist fullscreen setting on Android Editor (GH-112246).
- Fix canvas editor getting stuck on drag operations (GH-112249).
- Fix GraphEdit contrast in modern theme (GH-112260).
- Fix incorrect category size in
EditorInspectoron style switch (GH-112264). - Fix contrast for light color presets in the classic theme (GH-112268).
- Fix warnings and error panel font not updating (GH-112291).
- Fix 2D viewport scrollbar contrast in modern theme (GH-112296).
- Fix EditorSpinSlider ignoring step (GH-112298).
- Make
EditorInspectorCategory's theme update happen via signal (GH-112299). - Improve visibility of separators in modern theme (GH-112313).
- Add a style option button to quick settings (GH-112316).
- Fix transparent panel in Tilset polygon editor using Classic theme (GH-112333).
- Fix cannot edit property material for new Instance PackedScene (GH-112334).
- Fix crash for classes without an icon (GH-112339).
- Scene Dock: Simplify Filter Nodes related UI (GH-112343).
- Enhance contrast on Modern theme (GH-112350).
- Modern Style: Use a StyleBox in signals and groups (GH-112360).
- Allow previewing DPITexture in Inspector (GH-112375).
- Validate Resource type when pasting property (GH-112386).
- Fix crash on queue free scene node in editor (GH-112401).
- Add extra panels to some areas of the editor (GH-112448).
- Fix overbrightened GraphEdit overlays in light version of modern theme (GH-112499).
- Reduce outer inspector margins (GH-112504).
- Prevent emitting signals when previewing resource (GH-112547).
- Android editor: Fix editor crash on exit (GH-112556).
- Add error message to Quick Open dialog if callback is invalid (GH-112559).
- Fix crash during POT generation due to scene dependency issues (GH-112587).
- Correctly handle discarding of saved redo (GH-112597).
- FileSystem dock: Use plural prompt message when moving/copying files (GH-112600).
- Fix issues with property height in the inspector (GH-112615).
- Change prev/next button theme variation to FlatButton for FileSystem and Inspector dock (GH-112621).
- Fix incorrect bottom panel theming (GH-112627).
- Add missing warning about copying packed arrays to
EditorHelpBit(GH-112638). - Fix 2D ruler visibility in modern theme (GH-112659).
ScriptEditor::reload_scripts: Only call deferred if not main thread (GH-112663).- Remove padding columns from plugin settings (GH-112691).
- Remove unnecessary theme settings when constructing FindInFilesContainer (GH-112704).
- Fix
ProjectManagerUI going below window (GH-112717). - Fix error when changing language in
FindInFilesPanel(GH-112719). - Fix find in files auto search when changing theme (GH-112728).
- Allow editing groups on multiple nodes (GH-112729).
- Add a right click menu to the project manager (GH-112733).
- Android Editor: Adjust script editor size for virtual keyboard (GH-112766).
- Don't expose underscored signals (GH-112770).
- Fix not being able to set project path (GH-112824).
- Don't save editor settings on startup (GH-112825).
- Fix modified editor shortcuts being erased (GH-112831).
- Fix modifying shortcuts in project manager causing crash (GH-112857).
- Fix crash in
EditorFileDialogby checking for null pointer (GH-112859). - Android Editor: Fix padding for display cutout in fullscreen mode (GH-112881).
- Hide mouse focus from project list (GH-112895).
- Fix input map editor (action map editor) items unable to be renamed (GH-112903).
- Fix
Scene > Export As...being incorrectly disabled (GH-112904). - Assign explicit ID to Export As menu (GH-112912).
- Fix compilation errors with
deprecated=no(GH-112953). - DAP: Enable showing errors to users (GH-112972).
- Move History dock to the bottom left by default (GH-112996).
- Fix visual glitch in the quick settings on the classic theme (GH-112997).
- Add dedicated icon for Quick Load (GH-112999).
- Add "Undo Close" & "Close All" options for
EditorSceneTabsout-of-tabs context menu (GH-113014). - Fully hide preset settings when no preset is found in the export dialog (GH-113026).
- Use new dock system for TileMap and TileSet (GH-113034).
- Add bottom dock tab style setting (GH-113065).
- Remove extra
NOTIFICATION_VISIBILITY_CHANGEDnotifications in docks (GH-113070). - Always enable Make Unique for previewed overrides (GH-113075).
- Fix the returned controls of
EditorHelpBitTooltip::show_tooltip()were not freed inScriptTextEditor(GH-113080). - Change Theme to EditorDock and add
closableproperty (GH-113108). - Use new dock system for Debugger (GH-113133).
- Fix "ERROR: Cannot get class" on scripts without
class_name(GH-113160). - Update dock tabs on setting change (GH-113167).
- Fix error message when closing the project manager on Wayland (GH-113193).
- Resize right panel back to previous width (GH-113221).
- Fix initial dock tabs (GH-113232).
- PopupMenu: Fix redundant attempts to connect popup hidden signal on submenu (GH-113237).
- Fix bottom dock offsets and change Audio to EditorDock (GH-113241).
- Fix stale error highlighting when navigating script history (GH-113246).
- Use new dock system for Animation and AnimationTree dock (GH-113255).
- Improvements to ResourcePreloader editor (GH-113257).
- Fix Editor Docks not updating tab styles when loading layout (GH-113262).
- Disable embedded mode, if
--headlessis in the main instance argument list (GH-113269). - Use new dock system for SpriteFrames Dock (GH-113275).
- Assign layout key to Debugger (GH-113293).
- Fix dock opening focus (GH-113296).
- Fix various problems with the credits roll (GH-113298).
- MacOS: Fix focus grab warning on macOS when running game in embedded mode (GH-113300).
- Fix infinite appending of docks without slots to config (GH-113306).
- Use EditorDock for Polygon2D editor (GH-113338).
- Fix bottom panel dock layout popup position (GH-113339).
- Add missing icons to QuickOpen context menu (GH-113352).
- Prevent double counting and cyclical error when gathering Resources (GH-113353).
- Fix missing trailing dots in script editor search menu (GH-113365).
- Fix
GameStateSnapshots not being freed (GH-113366). - Improve accessibility in Create New Project dialog (GH-113392).
- Unassign scene root before freeing (GH-113393).
- Fix crash when capturing ObjectDB snapshot (GH-113395).
- Fix MovieWriter checking wrong directory for disk space (GH-113398).
- EmbeddedProcess: Fix invalid deferred call (GH-113407).
- Use Unicode arrow symbols throughout the editor (GH-113420).
- Expand Hide button in
EditorHelpsearch (GH-113430). - EditorHelp: Scroll to the only result found every time (GH-113433).
- Use EditorDock for Search Results (GH-113450).
- Make OpenXRActionMapEditor into EditorDock (GH-113457).
- Allow maximizing sprite related dialogs (GH-113464).
- Hide "Open documentation" context menu button in project manager (GH-113477).
- Disable "Override for Project" in project manager (GH-113492).
- Fix DistractionFreeMode and BottomPanel (GH-113494).
- Fix CreateDialog returning wrong type (GH-113510).
- Make dock tabs switch on button release (GH-113521).
- Remove "None" option in Version Control Editor (GH-113522).
- Fix unexpected name when favoriting nodes from keyword matches (GH-113546).
- VCS: Properly use IDs for OptionButton after #113522 (GH-113554).
- Fix signal order for directory selection in
file_dialog(GH-113564). - Increase PopupMenu vertical separation to improve touch usability (GH-113587).
- Fix built-in script live reloading (GH-113598).
- Fix property height in the inspector for control layout (GH-113601).
- Fix missing "+" in the bunch of tooltips (GH-113611).
- Fix center buttons offset (GH-113612).
- EditorHelpBit: Open online documentation if script editor is not available (GH-113615).
- Use new dock system for ShaderFile Dock (GH-113616).
- Ensure correct unlocking of script editor history (GH-113619).
- Fix enable/disable for Close Tabs Below in Script editor's File menu (GH-113626).
- Fix properties for container sizing not clipping in the inspector (GH-113630).
- Make movie mode button be dark when enabled on the modern theme (GH-113633).
- Prevent ObjectDB snapshots being overwritten (GH-113637).
- Use ObjectID in ProgressDialog Window list (GH-113642).
- Make Output dock global (GH-113643).
- Fix
EditorSpinSlideroverriding the custom minimum size (GH-113649). - Increase Tree vertical separation to improve touch usability (GH-113666).
- Improve style changed signal in EditorDock (GH-113690).
- Defer updating dock tabs (GH-113692).
- Fix Debugger Dock not opening and unused BottomPanel code (GH-113701).
- Codestyle: Remove unused private variables in
godot/editor(GH-113706). - Fix project tags check for empty strings (GH-113711).
- Fix "Make Unique" button only working with left mouse click (GH-113740).
- Fix unique button for
EditorAudioStreamPicker(GH-113753). - Fix opening errors from built-in scripts (GH-113773).
- Make indirectly inherited
EditorScripts appear in the command palette (GH-113774). - Fix bottom panel pinning (GH-113775).
- Fix broken state of bottom panel on the right-to-left layout (GH-113776).
- Use
ObjectIDinSceneTreeEditorto compare the old and new scene roots (GH-113789). - Propagate errors from
EditorFileSystem::_copy_filethroughEditorFileSystem::copy_file(GH-113790). - Fix broken VisualShader icons (GH-113801).
- Fix wrong size for "File" button in the shader editor (GH-113804).
- Clean up editor inspector plugins when closing Project Manager (GH-113815).
- Add leftover scroll hints, and panels for scrollables without hints (GH-113816).
- Add shortcuts to dock tooltips (GH-113818).
- Fix distraction-free mode changing split offsets (GH-113822).
- Show actual class name in resource picker tooltips (GH-113828).
- Fix crash on quit when
settings_changedsignal is emitted during exit (GH-113830). - Add missing hover indication to movie maker button (GH-113835).
- Fix non-scene Resources "Save as" (GH-113859).
- Fix blurry icons in the editor inspector (GH-113871).
- Fix cutoff root creation buttons in new scenes (GH-113890).
- Improve EditorDock shortcut property (GH-113896).
- Half icon saturation when using the light color preset (GH-113912).
- Prevent locked and child nodes of selection groups from being selected in the Game view (GH-113915).
- Fix shader editor minimum size (GH-113916).
- Tweak Quick Settings dialog to ensure labels and dropdowns are aligned (GH-113917).
- Fix incorrect bottom panel theming (GH-113922).
- Add null verification to avoid background theme error in texture shader properties (GH-113939).
- Disable tool button for multiple nodes (GH-113944).
- Enable scroll hints and background panel in the AssetLib (GH-113957).
- Don't use selection list as reference (GH-113986).
- Fix editor settings parsing regression on Android (GH-114032).
- Add and adjust more scroll hints in the editor (GH-114054).
- Fix different separations across different code editors (GH-114079).
- Make
display_serverenums non-editable (GH-114084). - Fix
nullvalue when picking the empty item on editable enums (GH-114086). - Fix object icon in the resource picker not being visible when it should (GH-114091).
- Accessibility: Fix
LinkButtonname processing (GH-114141). - Touch-up the Owners dialog (GH-114159).
- Finalize colors of modern theme (GH-114162).
- Fix incorrect corner radii in EditorHelpBitTitle in modern theme (GH-114163).
- macOS: Fix editor settings shortcut with global menu (GH-114167).
- Fix icon resizing for
NodePathproperties not working (GH-114169). - Fix error when break scriptless scene (GH-114190).
- Fix export dialog icon for empty types (GH-114202).
- Fix tree line editor corners (GH-114231).
- Improve editor inspector main container spacing in modern theme (GH-114234).
- Disable native file dialog on Android Editor (GH-114237).
- Make focus visibility when renaming in the scene/file dock consistent (GH-114249).
- Fix docks grabbing too much focus (GH-114252).
- Prevent tooltips from showing in empty space of FileSystem Dock (GH-114266).
- Fix reopening rootless scenes (GH-114315).
- Ensure scene paths in autoload settings (GH-114325).
CONNECT_APPEND_SOURCE_OBJECTon signal emission (GH-114328).- ProjectDialog: Fix invalid button state when selecting renderer with invalid project path (GH-114330).
- Add background panels to the TileSet/Map editors (GH-114348).
- Fix
CreateDialog::get_selected_typed()ignoring the custom types created fromEditorPlugin::add_custom_type()(GH-114364). - Add EditorDock's own DockSlot enum (GH-114366).
- Prevent crash when adding null Shortcut (GH-114425).
- Fix crash after calling
EditorUndoRedoManager.clear_history()and then interacting with history dock entries (GH-114439). - Improve visibility of toaster notifications (GH-114497).
- Fix the UID in the owner file changed when overwriting files in editor (GH-114499).
- Fix folder crash in Project Manager (GH-114507).
- Fix SplitContainer set desired size infinite loop (GH-114541).
- Preserve selections when filtering nodes in scene tree (GH-114569).
- Improve interaction feedback in modern theme (GH-114571).
- Fix switching visual shader type draws focus (GH-114578).
- Don't open new scene when double-clicking tabs (GH-114579).
- Fix crash when selecting "Unwrap UV2 for Lightmap/AO" after undo (GH-114593).
- Fix incorrectly disabled project import confirmation button (GH-114621).
- More scroll hint work around the editor (GH-114634).
- Fix inconsistent MenuButton styles (GH-114635).
- Fix crash when trying to open Favorites externally (GH-114636).
- Fix theming issues with the ObjectDB profiler (GH-114665).
- Prevent the dock from stealing focus when running the project (GH-114680).
- Fix editor toasters on the right-to-left layout (GH-114682).
- Adjust tree cells to account for new inner margins logic (GH-114734).
- Fix codeblocks inside docs not updating with theme changes (GH-114740).
- Reduce opacity of scroll hints in light theme (GH-114753).
- Fix animation track group hover color in modern theme (GH-114759).
- Improve animation player header spacing in modern theme (GH-114770).
- Add type variations for editor help in tooltips (GH-114793).
- Fix incorrect margin variations for group editors (GH-114797).
- Keep the node as an edited object when attaching and detaching scripts through the SceneTree (GH-114802).
- Fix and improve the theme editor (GH-114807).
- Use more specific check for dragging wait setting (GH-114829).
- Fix opening macOS folder in Terminal spawns new process (GH-114838).
- Fix gray bar of embed game window in Windows (GH-114852).
- Fix right clicking on a project draws focus outline (GH-114855).
- Improve spacing in trees showing table data in modern theme (GH-114862).
- Restore accent color text for main screen buttons in the modern theme (GH-114866).
- Fix inspector draws focus on click when editing EditorPropertyTextEnum (GH-114879).
- Fix quick open dialog recursive problem (GH-114881).
- Fix modified editor shortcuts being erased on MacOS (GH-114885).
- Fix sizing problems with
EditorSpinSlider(GH-114886). - Fix Make Unique for external sub-resources (GH-114901).
- Fix Make Unique for built-in scripts (GH-114902).
- Tweak quick open recursion error (GH-114916).
- Minor fixes for the project list item UI (GH-114927).
- Fix speed being reset when it shouldn't in the game editor (GH-114928).
- Fix inner tabs outer panel corners at zero radius (GH-114929).
- Fix dock tab styles not updating when changed in Editor Settings (GH-114932).
- Fix descriptions of custom types in CreateDialog (GH-114934).
- Limit maximum luminance for elevated surfaces in modern theme (GH-114950).
- Remove checkbox icon tint in Create Scene popup (GH-114956).
- Split
EmbeddedProcess::resetto allow stopping timers without full reset (GH-114978). - Fix TileSet dock becoming focused when switching TileMapLayers (GH-114994).
- Fix quick open history not always recorded (GH-115029).
- Fix size issues with inspector editors (GH-115041).
- Add inner tab styling to Manage Theme Items dialog (GH-115067).
- Combine dock focus methods to prevent inconsistencies (GH-115084).
- Fix favorite files handling (GH-115128).
- Fix EditorFileDialog icon scale in list mode (GH-115145).
- Do not update script editor before scene root init (GH-115161).
- Fix colors of code editor in modern theme (GH-115316).
- Fix not being able to remove empty theme overrides in the editor (GH-115348).
Export
- Add a property range hint to
bake_fpsin the scene glTF export dialog (GH-98268). - Fix typo in MacOS and iOS export settings (GH-103953).
- Add "Show Encryption Key" toggle (GH-106146).
- Use ScriptExportMode enum in EditorExportPreset (GH-107167).
- linux/bsd/mac: Use pkill to stop remote instance over SSH (GH-108412).
- EditorExportPlatform: Move initialization to a dedicated method (GH-108658).
- Android: Add export option to use "scrcpy" to run project from editor (GH-108737).
- macOS: Add support for exporting macOS 26 Liquid Glass icons (GH-108794).
- Move advanced toggle state out of export presets (GH-109356).
- Android: Only validate keystore relevant to current export mode (GH-109568).
- Android: Ensure proper cleanup of the fragment (GH-109764).
- Fix iOS/visionOS export plugin crash on exit (GH-110485).
- Metal: Fix Metal compiler version inspection (GH-110873).
- Scons option to enable CVTT and Betsy compression in export templates (GH-111015).
- Automatically include text server data if project includes translations requiring it (GH-111062).
- Renderer: Fix missing
shader_name; use forward declarations (GH-111141). - Windows: Fix application manifest in exported projects with modified resources (GH-111316).
- Update embedded PCK virtual address (GH-111674).
- Fix custom icon in Android export (GH-111688).
- macOS: Prevent error spam when iOS device is paired but sleeping (GH-111758).
- Metal: Stable argument buffers; GPU rendering crashes; visionOS exports (GH-111976).
- Add support for delta encoding to patch PCKs (GH-112011).
- Change API 21 references to API 24 (GH-112036).
- Disable shader baker when exporting as dedicated server (GH-112361).
- Shader Baker: Fix Linux export warning (GH-112465).
- Fix editor preset names not being validated (GH-112698).
- Fix shader baker freezing if there are errors in the shader compilation process (GH-112803).
- Disable Android devices mirroring for the Android editor (GH-113383).
- Android editor: Fix apk install after gradle build (GH-113389).
- Reduce export dialog minimum size (GH-113578).
- macOS/iOS: Escape .plist strings on export (GH-113645).
- iOS: Automatically enable
iphone-ipad-minimum-performance-a12if project is using Forward+/Mobile renderer (GH-114098). - Fix export preset not duplicating selected files (GH-114164).
- Android editor: Fix AAB file not copied to export path (GH-114382).
- Misc Android export fixes (GH-114384).
- Fix Android export with multiple architectures failing when GDExtension includes native dependencies (GH-114483).
- Android/Gradle: Do not ignore asset folders starting with
_(GH-114537).
GDExtension
- Add
RequiredParam<T>andRequiredResult<T>to markObject *arguments and return values as required (GH-86079). - Improve
to_string()and add it to Resource (GH-94047). - Expand
GDTypeto cover GDExtension types as well (GH-106016). - Allow editor plugins to modify run arguments (GH-107671).
- Store source of
gdextension_interface.hin JSON (GH-107845). - Fall back to parent class icon by default for GDExtension (GH-108607).
- Add
mem_alloc2(and friends) so padding can be requested (GH-108725). - Expose
Thread::is_main_thread()(GH-109779). - Update warning about
gdextension_special_compat_hashes.cppto prevent confusion (GH-110537). - Update
GODOT_CPP_BRANCHafter Godot v4.5-stable release (GH-110539). - Fix
--dump-extension-api-with-docsindentation (GH-110557). - LibGodot: Core - Build Godot Engine as a Library (GH-110863).
- Free script and extension instance before object deconstructing (GH-110907).
- Prevent breaking compatibility for unexposed classes that can only be created once (GH-111090).
- Move deprecated
has_named_classesfromScriptLanguagetoScriptLanguageExtension(GH-111289). - Fix LibGodot build errors on Linux (GH-111432).
- Add system for builtin method compatibility (GH-112290).
- Add missing method flag (GH-112351).
- Make
Vectorbsearchmethod const (GH-112539). - iOS: Fix loading of xcframework dynamic libraries (GH-112784).
- Support extension icons in Script Editor (GH-112925).
- Update
libgodot.hto usegdextension_interface.gen.h(GH-113126). - Use
RequiredParam/RequiredResultin some high value places (GH-113282). - Split GDExtension validations files to avoid constant git conflicts (GH-113489).
- Synchronize the names for
RequiredParam<T>arguments in header files (GH-113493). - Unmark
Node::is_editable_instance()parameter as required (GH-113511). - Optimize
RequiredParamto not increase and decrease refcounts on call (GH-113514). - Add special compat methods for EditorFileDialog enum functions (GH-113524).
- Use structured data for "deprecated" in
gdextension_interface.json(GH-113697). - Tweaks to
gdextension_interface.jsonformat (GH-113754). - CI: Ignore
gdextension_interface.json(GH-113851). - Ensure
LIBGODOT_APIis always defined (GH-114626). - Omit
return_valueingdextension_interface.jsonforvoidfunctions (GH-114684). - Core: Don't strip data in
ClassDB::class_get_method_list(GH-114893). - Fix crash when converting
Variantto incompatibleRequiredPtr<T>(GH-115198).
GDScript
- Make check for exposed classes more consistent (GH-91617).
- Add
debug/gdscript/warnings/directory_rulesproject setting (GH-93889). - Optimize
GDScriptInstance::notificationfor better performance (GH-94118). - Add step out to script debugger (GH-97758).
- Remove some unnecessary booleans (GH-98061).
- Autocompletion: Use correct completion type for argument options (GH-101092).
- LSP: Rework management of client owned files (GH-105236).
- Add opt-in GDScript warning for when calling coroutine without
await(GH-107936). - Autocompletion: Remove duplicate code (GH-109298).
- Prevent shallow scripts from leaking into the
ResourceCache(GH-109345). - Add checks for integer vectors for integer division warning (GH-110240).
- Don't reset color if the previous token is a number ending with a dot (GH-110397).
- Add
reserve()toDictionary, apply to constructors on GDScript VM (GH-110709). - Elide unnecessary copies in
CONSTRUCT_TYPED_*opcodes (GH-110717). - Fix drag and drop
@exportvariable assignment when script has errors (GH-110761). - Allow trailing comma in
preload(GH-110775). - Remove unused
GDScript::subclass_count(GH-111172). - Autocompletion: Filter ClassDB argument options (GH-111266).
- LSP: Fix repeated restart attempts (GH-111290).
- Fix GDScript translation parser for
FileDialog.add_filter()two-parameter format (GH-111298). - LSP: Fix goto native declaration (GH-111478).
- Remove raw base pointer from
GDScript(GH-111490). - LSP: Use safe methods to get data from dictionaries (GH-111684).
- Add Variant to type autocompletion (GH-111878).
- LSP: Fix remaining unsafe dict access (GH-112128).
- Add string placeholder syntax highlighting (GH-112575).
- Fix GDScript extends path recursion to itself (GH-112923).
- LSP: Improve insertion algorithm for resolving completion options (GH-113031).
- GDScript LSP: Rework and extend BBCode to markdown docstring conversion (GH-113099).
- Add support for profiling GDScript with tracy (GH-113279).
- Correctly set GDScript internal path for shallow scripts (GH-113580).
- Ensure correct caching of cyclic references (GH-113600).
- Fix incorrect default
transfer_modein@rpcdocumentation (GH-114269). - LSP: Fix infinite recursion in symbol calculation (GH-114401).
- Cache invalid scripts (GH-114695).
- LSP: Reuse stale parsers in request (GH-114791).
- Don't clean up other scripts (GH-114801).
- Core: Fix implicit conversions in
ContainerTypeValidate(GH-114808).
GUI
- Allow customization of TabContainer tabs in editor (GH-58749).
- Add
pivot_offset_ratioproperty to Control (GH-70646). - Allow SplitContainer to have more than two children (GH-90411).
- Use multiple children in dock SplitContainers to make resizing consistent (GH-90439).
- Remove code duplication in Button (GH-93389).
- Fix update order for
exclusivechild window (GH-94488). - Implement dynamic scaling of the LineEdit right icon based on control size and scale factor (GH-95817).
- Fix
ColorPickerButtonclose popup on mouse click (GH-98428). - Improve Project Manager UI navigation (GH-101129).
- Separate Node editor dock (GH-101787).
- Fix preset cache usage in ColorPicker (GH-104496).
- Add auto-scroll behavior when selecting text outside the visible area in RichTextLabel (GH-104715).
- Add support for custom font colors in the TabBar (GH-106263).
- Add support for closing dialog windows with Cmd+W on macOS (GH-107303).
- Allow
tab_rmb_clickedto always work (GH-107440). - Fix
mouse_enteredandmouse_exitedSignals being emitted too early (GH-107955). - Expose methods to access FileDialog's favorite/recent lists (GH-108146).
- Expose FileDialog callbacks for getting custom icons (GH-108147).
- SpinBox: Add a property to set whether
custom_arrow_steprounds value (GH-108335). - macOS: Use "file" icon for bundles in the file dialogs (GH-108804).
- Include
SPACING_SPACEin tab stops calculation (GH-109031). - Fix TextEdit clips children and focus style (GH-109078).
- Add metadata for slots in
GraphNode(GH-109322). - Adjust StyleBoxFlat antialiasing to account for Viewport oversampling (GH-109358).
- Fix LineEdit icon position in right-to-left layout (GH-109363).
- Android: Add method to set root window color at runtime (GH-109491).
- Speed up very large
Trees(GH-109512). - Optimize CPU text shaping (GH-109516).
find_*_valid_focus: Check all tested neighbors to prevent loops (GH-109590).- Remove meta usage in Tree (GH-109938).
- Fix tree to update size with scrollbars disabled (GH-109943).
- Make POT generation use
tooltip_auto_translate_mode(GH-109977). - Clamp menus at the bottom of the screen (GH-109981).
- Reinstate
constparameter inTree'sdraw_item_rect(GH-110012). - Fix child relationship lines not being drawn when selecting cells other than first (GH-110024).
- Add helper methods to convert right-to-left
Rect2iandPoint2iinTree'sdraw_item(GH-110055). - GraphEdit: Do not scale popup menus in the graph elements when zoomed (GH-110080).
- Fix
Treerelationship lines do not applyh_separationanditem_margincorrectly (GH-110089). - Add horizontal scrolling to
TabBar(GH-110151). - Use placeholder instead of value for tooltips of
PROPERTY_HINT_PASSWORDproperties (GH-110164). - TextServer: Shape emojis as separate runs (GH-110194).
- Fix SpinBox value change when held down on separation between buttons (GH-110212).
- Allow all ColorPicker Shapes to expand horizontally (GH-110218).
- Make minimum drag distance configurable for gui elements (GH-110245).
- Hide
Controlfocus when given via mouse input (GH-110250). - PopupMenu: Fix submenu item not popping on mouse enter (GH-110256).
- Redraw shape controls when ColorPicker theme changes (GH-110278).
- TextServer: Check if texture cache is valid when loading glyph (GH-110310).
- TextServer: Do not add extra spacing to zero-width glyphs (GH-110317).
- RTL: Use separate paragraph copy for the partially visible paragraphs (GH-110340).
- Make text-related nodes translation domain aware (GH-110378).
- Move ColorPicker shaders to ColorPickerShape class (GH-110385).
- Shader Editor: Show "File" menu when no shaders are opened (GH-110404).
- TextServer: Use a separate flag to disable min. string length for adding ellipsis (GH-110408).
- RTL: Fix
outline_size=0andfont/otftags with invalid arguments breaking tag stack and spamming errors (GH-110444). - Fix FileDialog's
root_subfolderon Windows (GH-110524). - Fix TextEdit
read_onlydrawing (GH-110527). - Add ThemeCache to EditorProperty (GH-110542).
- Deprecate TextEdit
background_color(GH-110543). - Fix color picker shape minimum size (GH-110581).
- Editor: Do not embolden the Main Font if it's variable (GH-110737).
- ColorPicker: Fix preset button order after calling
add_preset()(GH-110750). - Update SpinBox arrows on constrain change (GH-110817).
- FoldableContainer: Override
has_pointto use title rect when folded (GH-110847). - Reduce repetitive code in FoldableContainer (GH-110871).
- Fix LineEdit's placeholder text being selected when double clicking (GH-110886).
- Fix SpinBox stepper grabbing focus state on mouse input (GH-110894).
- Add setting for when to show the focus state for mouse input (GH-110895).
- Unfold tree items on hover while drag-n-dropping (GH-110904).
- Fix Script editor state types (GH-110942).
- Use const Array ref in
set_structured_text_bidi_override_options(GH-110951). - X11: Fix minimization of maximized windows (GH-110990).
- Fix text servers build with disabled FreeType (GH-111001).
- TextServer: Enforce zero width spaces and joiners to actually be zero width and not fallback to regular space (GH-111014).
- Fix tag name focus (GH-111085).
- Visualize MarginContainer margins when selected (GH-111095).
- Label: Add MSDF pixel range/outline configuration warning (GH-111111).
- Unify FileDialog context menus (GH-111116).
- Fix cases where
LineEditcan still show focus with mouse events (GH-111117). - Fix bottom panel being unintentionally draggable (GH-111121).
- Group
virtual keyboardandword separatorsproperties in the inspector (GH-111156). - Remaining FileDialog changes before unification (GH-111159).
- Add icon color theme items for
TabBarandTabContainer(GH-111169). - Fix LineEdit Unicode code-point/control character insertion failing to emit
text_changed(GH-111190). - Add missing ItemListSecondary and TreeSecondary theme type variations (GH-111194).
- Make EditorFileDialog inherit FileDialog (GH-111212).
- Fix color text's tooltip not being updated when the intensity is more than 0 (GH-111230).
- Check that ColorPickerButton popup is currently open in
_modal_closed()(GH-111248). - Fix RichTextLabel Focus Box (GH-111250).
- RichTextLabel: Fix bullet list font color and formatting issues (GH-111258).
- Fix Tree column title tooltip crash (GH-111292).
- Enforce zero width spaces and joiners with missing font. Do not warn about missing non-visual characters (GH-111355).
- Fix UI focus being shown when it shouldn't (GH-111369).
- Fix incorrect margins in
ScrollContainerwith focus border enabled (GH-111386). - Add MIME argument to the
FileDialog.add_filter(GH-111439). - Rework FileDialog shortcuts (GH-111460).
- Use HarfBuzz to fix variant hinting in
TextServerAdvanced(GH-111461). - Remove unused
Window::debugger_stop_shortcut(GH-111484). - Update OpenSans SemiBold (GH-111516).
- Fix Windows native FileDialog filters not showing descriptions (GH-111529).
- Fix TextEdit selecting when closing popup (GH-111535).
- Fix scrollbar render with RTL scroll following visible enabled (GH-111552).
- Fix favorites icon size in FileSystem dock (GH-111586).
- CodeEdit: Use flag to recalculate characteristics (GH-111597).
- Fix indented line wrap with no spaces (GH-111648).
- PopupMenu: Update global menu shortcuts when shortcut is externally changed (GH-111711).
- TextEdit: Make
wrap_right_offsetadjustable theme constant (GH-111744). - Improve performance of SpinBox creation (GH-111766).
- Allow double-clicking icons of non-editable Tree items (GH-111780).
- Fix scale factor applied twice (GH-111797).
- Make
PopupMenurespectmax_size(GH-111801). - Fix crash when operating on newly created font RIDs (GH-111810).
- TextServer: Do not add empty lines if space trimming flag is set (GH-111839).
- Fix IME input in multiple windows at once (GH-111865).
- Fix
Control.pivot_offsetmissingPROPERTY_USAGE_STORAGEflag (GH-111921). - Show the arrow cursor on disabled
LinkButtons (GH-111926). - TextServer: Fix range for zero-width glyphs extra spacing (GH-111964).
- Add
h/v_separationtheme properties to ScrollContainer (GH-111975). - Add text trimming in
LinkButton(GH-112019). - Fix embedded window frame oversampling, fix DPITexture using uninitialized size in some conditions (GH-112031).
- Move localized number formatting methods to
TranslationServer(GH-112092). - Fix
PopupMenulosing item highlight when hovering submenus (GH-112095). - CodeEdit: Add line number gutter minimum digits (GH-112115).
- Fix error when deleting trailing lines removed breakpoints (GH-112168).
- Make possible to change the ellipsis character in
LinkButton(GH-112220). - Fix MenuButton's PopupMenu is clipped (GH-112239).
- Fix drawing of slot icons in
GraphNodewhen slots are not continuous (GH-112245). - Fix
grab_focusincorrectly handlingFOCUS_ACCESSIBILITY(GH-112251). - Fix LinkButton color in Modern theme (GH-112255).
- Fix icon colors in light color preset of modern theme (GH-112277).
- RTL: Do not apply scroll offset to empty RTL (GH-112295).
- Add custom
StyleBoxtoTreeItem(GH-112371). - PopupMenu: Fix minimum size for items with icons (GH-112377).
- Update VisualShader on theme changes (GH-112382).
- Make ScrollContainer scrollbar margins affect minimum size (GH-112396).
- RTL: Fix meta hover signals not emitted (GH-112428).
- TextServer: Fix
FontPriorityListreturning duplicate fonts (GH-112435). - TextServer: Improve font fallback for emojis (GH-112436).
- Allow to add padding to
ScrollBars (GH-112441). - Modern style: Fix
prop_subsection_styleboxcolor not scaling with luminance (GH-112443). - Modern style: Use stylebox setter for Action Map
TreeItems (GH-112444). - Fix tree item editable area missing icon max width bug (GH-112475).
- Add scroll hints to
ScrollContainerandTree(GH-112491). - PopupMenu: Add theme option for merging icon and checkbox gutters (GH-112545).
- Default preset container to minimum size in Export dialog (GH-112590).
- Label: Account for max visible lines when trimming text (GH-112602).
- Update rect after
_pre_popupinpopup_centered_*(GH-112604). - Fix tree vertical line width bug (GH-112625).
- TextServer: Fix some emoji sequences and add missing ICU emoji property data (GH-112636).
- Improve language selection when shaping text (GH-112661).
- Fix cursor shape in the quick open dialog (GH-112665).
- Fix visual shader error when editing theme settings (GH-112673).
- Fix blurry items on
PopupMenuwhenv_separationhas an odd value (GH-112676). - Stop drawing of MarginContainer margins if not in tree (GH-112687).
- Use event position for mouse over when event come from the same window (GH-112712).
- Fix tree relationship lines are squeezed together (GH-112791).
- Fix bottom panel not being able to resize on startup (GH-112792).
- Fix TreeItem icon overflows column boundary (GH-112805).
- Fix clicking the tree edge is ineffective (GH-112830).
- TextServer: Remove negative offset from the first char when shaping substrings (GH-112858).
- RTL: Fix
line_separationnot being applied between paragraphs (GH-112882). - Fix disabled tabs in TabBar are selectable (GH-112935).
- TextServer: Track emoji subruns separately from parentheses stack (GH-112940).
- Fix error when double-clicking nothing on scene tree (GH-112941).
- Fix cut off columns in the advanced font import dialog (GH-112945).
- PopupMenu: Fix error spam and skip submenu hidden signals on native menus (GH-112967).
- 2D: Fix nine-patch rendering (GH-112978).
- Fix completion popup placement and adjust lines to available space (GH-112991).
- Fix tab bar offset (GH-113084).
- Update native menu icons after Node dock split (GH-113134).
- Fix SplitContainer crash on change type (GH-113164).
- Editor: Simplify native menu icon generation (GH-113252).
- PopupMenu: Fix accelerator incorrect highlighting when mouse moves toward submenu (GH-113320).
- Fix
TextEditdoes not auto scroll properly on certain vertical sizes (GH-113390). - Accessibility: Fix text field character count and line navigation (GH-113459).
- Add non-public
{Line,Text}Edit::_set_text()to fixtext_submittedsignal emission on Web (GH-113461). - Editor: Add accessibility label to project favorite button (GH-113473).
- Editor: Set initial focus for screen reader users (GH-113475).
- Fix
ScrollContainerignoring internal nodes added externally (GH-113503). - Add new monospace related hint strings (GH-113512).
- Round
ProgressBarpercentage instead of truncating (GH-113531). - Accessibility: Re-apply stored name when recreating nodes (GH-113533).
- Fix the issue of no scan after dir creation and/or deletion (GH-113541).
- RTL: Fix relative index getting out of sync (GH-113550).
- Fix wrong file thumbnails icon (GH-113572).
- Fix memory management for ColorPalette in save file dialog (GH-113573).
- Enable scroll hints for several parts of the editor (GH-113574).
- FileDialog: Use base dir instead of ".." when going up (GH-113581).
- Hide arrows when they go past the column titles on
Trees (GH-113591). - FileDialog: Filter drive list when root folder is set (GH-113608).
- Fix SplitContainer incorrect child shrink logic (GH-113648).
- Restore
FileDialog::_popup_base(GH-113742). - Fix native FileDialogs popping up when
use_native_dialogis modified (GH-113746). - Fix scrollbar separation being at the wrong side in
ScrollContainerwith a RTL layout (GH-113755). - Unset submenu index when popup menu is hidden (GH-113794).
- Reorganize editor menu setup, allow switching global menu without restart (GH-113800).
- TextServer: Fix
duplicatedlosing span info, and RID leak (GH-113908). - Fix MSDF batching flag for StyleBoxTexture (GH-113924).
- Fix file thumbnails not using theme scale (GH-113985).
- TextServer: Do not skip non-color font if system fallback is disabled (GH-114027).
- Fix FileDialog icon scale in editor (GH-114035).
- Fix
ScrollContainer's bottom scroll hint ignoring margins (GH-114037). - Fix save dialog clearing filename when navigating folders (GH-114039).
- Fix
TabContainer's minimum size ignoring the popup button (GH-114115). - Fix FileDialog relative paths (GH-114120).
- Revert Tree item drawing changes (GH-114122).
- Fix changing directory in FileDialog (GH-114177).
- Use EditorFileDialog everywhere in the editor (GH-114178).
- Remove leftover print line from
TextServer(GH-114183). - Fix
PopupMenu::_pre_popupcrash outside the tree (GH-114187). - TextServer: Fix line wrapping underflow (GH-114189).
- Automatically Resample CanvasItems in Scene Editor (GH-114200).
- Fix content margins of the editor runbar in modern theme (GH-114259).
- Fix background color of complex dialog windows in modern theme (GH-114290).
- Improve the look of inner tabs in modern theme (GH-114392).
- Fix background color of EditorInspectorArray (GH-114394).
- Fix
ScrollBarnot acceptingInputEventPanGesture(GH-114398). - Fix TextEdit moving caret word left/right can hide the caret (GH-114404).
- Fix binary BMFont flags handling (GH-114412).
- Make PopupMenu shrinking configurable (GH-114438).
- a11y: Only support blur and focus actions on widgets that are actually focusable (GH-114444).
- a11y: Add accessible name to resizable splitters (GH-114445).
- Fix visibility of shader node separators in modern theme (GH-114501).
- Fix color picker mode tabs in modern theme (GH-114506).
- Use dedicated canvas item to properly cull tree items (GH-114572).
- Fix
Treeitems ignoring inner margins (GH-114703). - Fix incorrect position of icons in
ItemListwhen on top mode (GH-114709). - Accessibility: Force keyboard focus to the exclusive child (GH-114722).
- Fix text in
ItemListbeing cutoff when it shouldn't (GH-114741). - Fix PopupMenu size scaling again (GH-114744).
- Add color theme for scroll hints (GH-114751).
- Fix problems with popup menus for
Tree's range items (GH-114760). - Fix TextEdit Shift+Click selection start position (GH-114772).
- Fix GraphFrame titlebar incorrect sizing with custom stylebox (GH-114783).
- Fix accessibility name when right slot is enabled in
GraphNode(GH-114789). - Fix OptionButton PopupMenu not shrinking after item changes (GH-114806).
- Scene: Fix
LineEdit.set_editableto capture text focus when enabled (GH-114847). - Add missing mirrored button styles in modern theme (GH-114871).
- Don't tint menu button icons in context toolbar (GH-114874).
- Fix VCS plugin icons (GH-114882).
- Fix editor ColorPicker icon scale (GH-114938).
- Fix wrong offset for
TabBarwith hidden tabs (GH-114952). - Remove clip ignore from Tree background (GH-115074).
- Process system events during boot splash wait time (GH-115118).
- Remove experimental flags from graph nodes (GH-115181).
- Don't force list icon size in EditorFileDialog (GH-115330).
I18n
- Improve auto-translation of the rendering method selector (GH-107795).
- Clean up editor translation related methods (GH-107999).
- Improve auto-translation of Debugger (GH-108457).
- Move context and plural support to
Translation(GH-108862). - Improve auto-translation of the replication editor (GH-109153).
- Use
languagecommand line argument to override editor locale (GH-110318). - Improve auto-translation of
SpriteFramesEditor(GH-111284). - Improve POT generator (GH-111285).
- Fix some easing presets not translated (GH-111473).
- Use more practical default plural rules (GH-112026).
- Improve CSV translations (GH-112073).
- Add CSV translation template generation (GH-112149).
- Make editor language setting default to Auto (GH-112317).
- Allow localizing the application name with project translations (GH-112415).
- Add methods for querying loaded
Translationinstances (GH-112577). - Remove
TranslationPO(GH-112793). - Prevent the main locale from being set to an empty string (GH-112899).
- Fix dock window titles not being translated (GH-113688).
- Translate error names when displayed in dialogs (GH-114152).
- Fix some invalid translation usages (GH-114405).
- Editor: Disable auto translation for layer names in EditorPropertyLayers (GH-114647).
Import
- Tweak physics property hints in the 3D Advanced Import Settings dialog (GH-73688).
- Blender import: Correct exit code on Python exception (GH-94873).
- Default mjpeg avi movie writer to 16 bit audio and add an editor option so it can still write 32 bit (GH-104951).
- Fix texture atlas import deadlock by keeping
group_file=on failedimport_file()attempts (GH-106532). - GLTF: Allow parsing glTF files without nodes (GH-107836).
- Remove ResourceImporterScene singletons in favor of local usage (GH-107855).
- Improve the cubemap preview (GH-107975).
- GLTF: Move accessor and buffer view Dictionary conversion into those classes (GH-108320).
- GLTF: Move accessor encoding functions to GLTFAccessor (GH-108853).
- GLTF: Move accessor decoding functions to GLTFAccessor (GH-109103).
- Material Conversion Error Handling (GH-109369).
- GLTF: Preserve mesh names on export (GH-109421).
- GLTF: Make handle binary image mode enum type-safe (GH-109446).
- Preserve mesh, material, and texture names in GLTF export (GH-109475).
- Betsy: Generate BC1 table cache during compression (GH-109725).
- Fix hang when importing blender files in headless mode (GH-109944).
- Update meshoptimizer to v0.25 (GH-109990).
- Use regularization flag for LODs of deformable objects to improve appearance post deformation (GH-109992).
- Switch LOD generation to use iterative simplification (GH-110027).
- Enable component pruning during mesh simplification (GH-110028).
- Betsy: Convert RGB to RGBA on the GPU for faster compression (GH-110060).
- Image: Fix normalization of mipmaps for half and float formats (GH-110308).
- OBJ importer: Support bump multiplier (normal scale) (GH-110925).
- Use const ref parameters in the GLTF module (GH-110949).
- GLTF: Support animating node visibility (GH-111341).
- Fix segfault in
GLTFDocument::export_object_model_property(GH-111389). - Scene importer: Fix skeleton path when physics body type is dynamic (GH-111507).
- GLTF: Write integer min/max for integer accessors (GH-111612).
- GLTF: Determine the component type when encoding object model properties (GH-111613).
- GLTF: Enforce
STEPinterpolation for integer and boolean animations (GH-111615). - GLTF: Don't serialize empty material extensions (GH-112137).
- Don't assign a uid when copying resource file whose
importername iskeeporskip(GH-112337). - Check if scale/offset values are provided in gltf
KHR_texture_transform(GH-112852). - GLTF: Use
const Vectorinternally instead ofTypedArraycopies (GH-113172). - Allow converting from Mesh to ImporterMesh (GH-113202).
- Support MultiMesh objects in the scene Advanced Import Settings dialog (GH-113206).
- GLTF: Fix order of operations for buffers and accessors (GH-113245).
- Write to animation import settings only when needed to prevent bloating the .import file (GH-114015).
- GLTF: Fix emissive texture import when
emissiveFactoris absent (GH-114033). - GLTF: Duplicate images during serialization to prevent segfaults (GH-114354).
- Fix setting mesh blend shape properties in dummy mesh storage (GH-114356).
- Fix importing projects with PNG assets freezes Web Editor (GH-114410).
- GLTF: Fix getting animation track path (GH-114581).
- Default 3D model importer naming versions to the latest version (GH-114659).
Input
- Clean up and simplify camera override API (GH-52285).
- Add shortcuts to reset position, rotation and scale in Spatial and Canvas Item Editor (GH-102888).
- Add ability to add new EditorSettings shortcuts (GH-102889).
- Fix cannot input Chinese after restarting the input method on X11 (GH-103749).
- Remove the need to have a display name for built-in action overrides (GH-107487).
- Fix modifier order in keycode string generation (GH-108260).
- Use safe ObjectID for mouse over controls (GH-109063).
- Fix Android back gesture failing after keyboard dismissal (GH-110127).
- Fix out of control area mouse events crash, if nothing have mouse focus (GH-110162).
- macOS: Remove old embedded window joystick init code (GH-110491).
- macOS: Use
productCategoryinstead ofvendorNamefor joypad name in SDL (GH-110500). - Fix the bug causing
java.lang.StringIndexOutOfBoundsExceptioncrashes when showing the virtual keyboard (GH-110611). - Allow all gamepad devices for built-in
ui_*input actions (GH-110823). - Fix weak and strong joypad vibration being swapped (GH-111191).
- Fix invalid reported joypad presses (GH-111192).
- Fix
Input.is_joy_knownresponse for SDL joypads (GH-111503). - Add support for setting a joypad's LED light color (GH-111681).
- Support adding advanced joypad features (GH-111707).
- Fix not releasing action when actions are erased (GH-111747).
- X11: Fix
keyboard_get_label_from_physicalerrors when used on key without label (GH-111795). - macOS: Fix mouse enter events sent to wrong popup window (GH-112383).
- Android: Fix crash when gamepad connects immediately upon app startup (GH-112760).
- Android: Improve D-pad support for Default Android Gamepad (GH-112762).
- Fix emulated touch events using the incorrect window ID (GH-112995).
- Fix assertions against buffer overruns in
input_event_codec.cpp(GH-113028). - Avoid nested parentheses in physical/Unicode InputEventKey text conversion (GH-113418).
- X11: Fix input delay regression (GH-113537).
- Do not show
Physicalin the special key names (GH-113553). - Fix Android fingerprint scanners being recognized as joypads (GH-114334).
- Fix Android joypad triggers range (GH-114363).
- Change return type for
Input.set_joy_light()frombooltovoid(GH-114851). - Wayland: Fix IME (GH-115090).
Multiplayer
Navigation
- Make NavigationServer backend engine selectable (GH-106290).
- Navigation 2D: Fix sign of cross product (GH-110815).
- Make navmesh rasterization errors more lenient (GH-110841).
- Fix build error when Navigation 2D is disabled (GH-113471).
- Fix
AStars to return empty path for disabledfrompoint (GH-113988). - Preserve winding order for transformed tiles' navigation polygons (GH-114742).
Network
- Make HTTPRequest 301 and 302 redirects standards-compliant (GH-91199).
- Add unit tests for
StreamPeerTCP(GH-102064). - Add Core UNIX domain socket support (GH-107954).
- Unix: Don't print an error if
bindfails (GH-111300). - mbedTLS: Update to version 3.6.5 (GH-111845).
- Fix HTTPRequest timeout being scaled with
Engine.time_scale(GH-112686). - Normalize IP parsing, fix IPv6, tests (GH-114827).
Particles
- Change curve range for particle multipliers (GH-91556).
- Add emission shape ring for CPUParticles2D (GH-94929).
- Fix NaN populating ParticleProcessMaterial Transform (GH-97871).
- Improve 2D Particle Emission Mask dialog (GH-101165).
- Push pipeline compilation of various effects to the worker thread pool (GH-111129).
- Fix CPUParticle3D not randomizing (GH-112514).
Physics
- Add MeshInstance3D primitive conversion options (GH-101521).
- Use Jolt Physics by default in newly created projects (GH-105737).
- Add MultiMesh physics interpolation for 2D transforms (MultiMeshInstance2D) (GH-107666).
- Tweak property hints for SoftBody3D mass and SkeletonModification2DJiggle (GH-108758).
- JoltPhysics: Fix orphan StringName (GH-110329).
- Fix bug in ManifoldBetweenTwoFaces (GH-110507).
- Fix ancestry constructors (GH-110805).
- Fix CCD bodies adding multiple contact manifolds when using Jolt (GH-110914).
- Fix crash when calling
move_and_collidewith a nulljolt_body(GH-110964). - Jolt: Update to 5.4.0 (GH-110965).
- JoltPhysics: Fix Generic6DOFJoint3D not respecting angular limits (GH-111087).
- Fix crash in Jolt when doing incremental builds (GH-111408).
- Fix crash when box selecting remote 3D physics nodes (GH-111960).
- Jolt: Add null checks to
jolt_freeandjolt_aligned_free(GH-112363). - Fix
SoftBody3D's position influences its physics in Jolt (GH-112483). - Jolt Physics: Remove sharing shared soft body settings from SoftBody3D (GH-112623).
- Remove call to
PhysicsServer3Dfrom Jolt Physics implementation (GH-113622).
Platforms
- Silence warnings about DisplayServer icons on iOS and visionOS (GH-94542).
- Windows: Simplify ANGLE fallback list and remove ID checks (GH-95853).
- Wayland: Add environment variable to disable libdecor loading (GH-96825).
- FileAccess: Implement support for reading and writing extended file attributes/alternate data streams (GH-102232).
- Wayland: Emulate frame event for old
wl_seatversions (GH-105587). - Workaround X11 crash issue (GH-106798).
- Wayland: Implement the xdg-toplevel-icon-v1 protocol (GH-107096).
- Wayland: Implement game embedding (GH-107435).
- Add
nulland range checks toDisplayServerMacOSBase::clipboard_get()(GH-108372). - macOS: Fix disabling native menu items in system menus (GH-108596).
- Support XDG Inhibit portal (GH-108704).
- iOS/macOS: Improve
OS.get_memory_info(GH-109112). - macOS: Add option for renaming system menus (GH-109138).
- Windows: Try reading GPU driver information directly from registry (GH-109346).
- Add Stretch Modes for Splash Screen (GH-109596).
- macOS: Always use "Regular" activation policy for GUI, and headless main loop for command line only tools (GH-109795).
- macOS: Move system theme properties to the
DisplayServerMacOSBase(GH-109980). - macOS: Fix keyboard mapping init in embedded display server (GH-110078).
- iOS: Add device SOC list, update DPI list (GH-110192).
- Configure SDL assuming we, in fact, have a libc (GH-110198).
- macOS: Make embedded window focus behavior more similar to Windows/X11 (GH-110219).
- Windows: Try reading GPU IDs directly from registry (GH-110268).
- Windows: Expand full screen border in the direction with no adjacent display, or display with min refresh rate difference (GH-110375).
- Web: Fix clipboard text encoding in
update_clipboard_callback(GH-110544). - Wayland: Inhibit idle in
DisplayServerWayland::screen_set_keep_on(GH-110875). - Change
macos.permission.RECORD_SCREENversion check from 10.15 to 11.0 (GH-110936). - Fix permission handling for write backup files (
FileAccessUnix) (GH-110943). - Unix: Fix retrieval of PID exit code (GH-111058).
- Suppress SIGPIPE when writing to a pipe (GH-111114).
- Window: Add unfiltered input handler signal for custom decorations (GH-111288).
- Fix editor embedded windows partially resizing (GH-111313).
- Fix editor auto display scale on Windows (GH-111326).
- MacOS: Improve crash handler performance (GH-111425).
- Wayland: Defer event thread initialization to late initialization (GH-111493).
- X11: Fix fullscreen exit behavior (GH-111580).
- X11: Fix memory leak in
screen_get_refresh_rate()(GH-111639). - macOS: Fix ~500ms hang on transparent OpenGL window creation on macOS 26 (GH-111657).
- Wayland: Set window parent before commit (GH-111874).
- Increase stack size for all secondary threads on Apple platforms (GH-112094).
- X11: Fix minimize/maximize buttons can't be hidden (GH-112142).
- Fix 64-bit integers being truncated to 32-bit in JNI (GH-112192).
- Android: Implement Storage Access Framework (SAF) support (GH-112215).
- macOS/Embedded: Release/recapture mouse on window focus change and exit (GH-112236).
- Linux: Add SSE4.2 support runtime check (GH-112279).
- Windows: Fix legacy border when toggling borderless while fullscreen (GH-112297).
- Make
utterance_id64-bit (GH-112379). - Fix compile error with android export plugin (GH-112398).
- Fix "Unexpected NUL character" errors on Wine (GH-112496).
- D3D12: Fall back to HWND if DComp init failed (GH-112497).
- Android: Fix loading sparse
.pckfromassets://(GH-112507). - Windows: Fix
window_get_size_with_decorationsreturning an invalid size when restoring from minimize (GH-112534). - Android: Fix root window shrinking when keyboard appears (GH-112585).
- Fix Chinese characters in DBusMessage were not displayed correctly (GH-112629).
- Android: Make use of
activity-aliasas the primary launcher mechanism (GH-112679). - Fix crash when using ANGLE OpenGL on Windows (GH-112720).
- Windows: Fix EnumDevices stall using IAT hooks (GH-113013).
- Wayland: Fix compiling with
libdecor=no(GH-113041). - Wayland: Implement compose and dead key support (GH-113068).
- Wayland: Fix trailing garbage error while using the embedder on Jay (GH-113135).
- Wayland: Fix Wayland driver in export templates (GH-113138).
- Android: Fix memory issues in
_variant_to_jvalue()(GH-113159). - macOS: Add missing "move" system cursor (GH-113186).
- Prevent deadlock on Android camera (GH-113209).
- Windows: Make Direct3D 12 the default RD driver for new projects (GH-113213).
- X11: Skip Motif function hints when borderless (GH-113235).
- Wayland: Misc keyboard touchups (GH-113256).
- macOS: Do not use
openApplicationAtURLfor headless instances (GH-113267). - Add platform lifecycle callbacks to CameraServer base class (GH-113297).
- LinuxBSD: Fixes a formatting error when running Godot editor with Wayland prefer enabled (GH-113302).
- Implement XFCE
exo-opensupport in LinuxOS.shell_open(GH-113341). - Wayland: Unify key handling logic (GH-113346).
- iOS: Fix use of
godot_path(GH-113455). - macOS: Fix profiler cleanup (GH-113547).
- Wayland: Work around window scale ambiguity (GH-113656).
- Fix laggy window resize on Wayland (GH-113714).
- Wayland: Bump to 1.24.0 (GH-113733).
- macOS: Prefer user specified file extensions over OS preferred one (GH-113757).
- Wayland: Implement
keyboard_get_label_from_physical(GH-113837). - Fix storage scope for the obb directory (GH-113878).
- wayland-protocols: Update to 1.46 (GH-113940).
- Wayland: Fix accidental copy during global remove (GH-113946).
- Wayland: Add missing destroy calls for text input and tablet (GH-113947).
- Wayland: Remove
GODOT_DEBUG_EMBEDDER_SINGLE_INSTANCEdebug option (GH-113949). - Wayland: Ignore IME events without a valid window (GH-113950).
- macOS: Disable window embedding code in export templates (GH-113966).
- Ensure that the permission requests results are dispatched on the render thread (GH-113969).
- Wayland: Silence
window_get_wl_surfaceon invalid window (GH-113977). - Wayland: Allow non-interactive window resizing (GH-114082).
- Android: Fix ANRs when shutting down the engine due to the render thread (GH-114207).
- Fix camera module error handling and remove unnecessary transform (GH-114400).
- Android: Trigger save of the RD pipeline cache on application pause (GH-114463).
- macOS: Fix non-focusable window order (GH-114495).
- Windows: Fix icon leak (GH-114525).
- Wayland: Track popup menu mouse mask properly (GH-114574).
- Fix Project Manager
ProjectDialoginstall dialog OK button (GH-114705). - WaylandEmbedder: Fix
-Wduplicated-brancheswarning (GH-114756). - Do not apply "*" as preferred extension (GH-114781).
- X11: Allow moving a fullscreen/maximized window to another screen/display (GH-114820).
- Wayland: Update popup scale information on creation (GH-115242).
- Process events during splash on macOS only (GH-115249).
Plugin
- Expose
set_editedandis_editedonEditorInterface(GH-91703). - EditorPlugin: Allow instance base type inheriting EditorPlugin (GH-93296).
- Expose 3D editor snap settings to EditorInterface (GH-103608).
- Android:
JavaClassWrapperbug fixes (GH-107075). - Relocate
add_root_nodemethod toEditorInterfacefromEditorScriptand deprecate old method (GH-109049). - Android: Minor updates to the
GodotPluginAPIs (GH-111135). - Fix potential conflicts in FileSystem context menu plugins (GH-112048).
- Fix editor crash attempting to generate preview for invalid BitMap (GH-114247).
Rendering
- Resolve depth buffer in mobile renderer when required (GH-78598).
- Add methods to draw ellipses (GH-85080).
- Don't redraw invisible CanvasItems (GH-90401).
- Use Viewport's 3D Scaling in the 3D editor's Half Resolution option (GH-93436).
- Implement motion vectors in compatibility renderer (GH-97151).
- Fix Sprite3D texture bleed when not wrapping (GH-98122).
- Image: Implement 16-bit unorm and uint formats (GH-106200).
- DirectX DescriptorsHeap pooling on CPU (GH-106809).
- Add
white,contrast, and future HDR support to the AgX tonemapper (GH-106940). - Implement DirectionalLight3D cull masks in Compatibility (GH-107384).
- Cache lightprobe generation for lightmap baking (GH-107400).
- Apply sun scatter from lights with shadows in compatibility (GH-107740).
- Add missing
vpv.push_back(pv);inrender_target_get_sdf_texture(GH-107763). - Minor Optimization to Occlusion Culling (GH-107839).
- Rewrite Radiance and Reflection probes to use Octahedral maps (GH-107902).
- Use Mat3x4 for model and view transforms to save bandwidth and ALUs (GH-107923).
- FTI: - Add
multimesh_instances_reset_physics_interpolation()(GH-108114). - Disable unsupported SSR, SSS, DoF on transparent viewports (GH-108206).
- Metal: Fix
texture_get_dataother linear formats (GH-108422). - Compatibility: Set
GL_TEXTURE_MAX_LEVELto the number of mipmaps (GH-108528). - Add depth resolve to the mobile renderer (GH-108636).
- Fix clear color being incorrect in
Environmentbackground with HDR 2D (GH-108682). - Compatibility: Explicitly use BC1's RGB variant (GH-108826).
- Move D3D12's automatic texture clears to RenderingDevice (GH-108871).
- Add material debanding for use in Mobile rendering method (GH-109084).
- Add and enable default textures for other samplers (GH-109143).
- Prompt editor restart when reflection probe size is updated (GH-109186).
- Compatibility: Fix cubemap faces order when setting texture data (GH-109299).
- Add ubershader support to material and SDF variants in Forward+ (GH-109401).
- Make
OpenXRCompositionLayerand its children safe for multithreaded rendering (GH-109431). - Implement a very simple SSAO in GLES3 (GH-109447).
- Fix spotlight's shadow peter-panning with volumetric fog (GH-109567).
- Compatibility: Improve ASTC extension detecting (GH-109778).
- Compatibility: Fix backface culling gets ignored when double-sided shadows are used (GH-109793).
- Use half float precision buffer for 3D when HDR2D is enabled (GH-109971).
- LightmapGI: Pack L1 SH coefficients before denoising (GH-109972).
- OpenXR: Fix ViewportTextures not displaying correct texture (OpenGL) (GH-110002).
- Divide screen texture by luminance multiplier in compatibility (GH-110004).
- Overhaul and optimize Glow in the mobile renderer (GH-110077).
- Fix rounding error in clustered vertex light culling (GH-110184).
- Clamp minimum size of 3D texture view in D3D12 (GH-110203).
- Fix
CompositorEffectnot setting post-transparent callback on init (GH-110249). - Fix reflection probes not recreating downsampled textures when mode changes (GH-110330).
- Rename
RDD::MemoryBarrierto avoid conflicts with the Windows headers (GH-110360). - Increase precision of SpotLight attenuation calculation to avoid driver bug on Intel devices (GH-110363).
- Tweak draw command label names for consistency (GH-110505).
- Fix Viewport VRS Mode property listing unimplemented Depth buffer option (GH-110520).
- Fix
TileMapLayertiles displaying incorrectly withy_sortbased on visibility layer (GH-110550). - Move check for sky cubemap array back into the SkyRD initializer (GH-110627).
- Blend glow before tonemapping and change default to screen (GH-110671).
- Use correct scaling type when falling back to bilinear (GH-110672).
- Use correct screen-space to ndc equation in Compatibility refraction (GH-110684).
- Use an array instead of
TightLocalVectorinRasterizerSceneGLES3::_render_uv2, to avoid allocation (GH-110781). - Fix glow intensity not showing in compatibility renderer (GH-110843).
- Ensure reflection atlas is valid before rendering (GH-110853).
- Fix OpenXR with D3D12 using the wrong clip space projection matrix (GH-110865).
- Use correct AABB for SpotLight3Ds when
spot_angle > 90(GH-110884). - Clear intermediate buffers when not in use in Compatibility (GH-110915).
- Show centiseconds in LightmapGI bake time printout in the editor (GH-110937).
- Renderer: Move
reflect_spirvtoRenderingShaderContainer(GH-111013). - Fix d3d12 stencil buffer not clearing (GH-111032).
- Sort render list correctly in RD renderers (GH-111054).
- Always show settings to enable DOF near + far (GH-111060).
- Fix LightmapGI not being correctly applied to objects (GH-111125).
- Add Persistent Buffers utilizing UMA (GH-111183).
- FTI - Optimize non-interpolated 2D items (GH-111198).
- Overhaul screen-space reflections (GH-111210).
- Fix scene shader crash due to rename of view matrix and inverse view matrix (GH-111227).
- Fix warning spam in Compatibility when using depth texture (GH-111234).
- Always use RenderSceneBuffers to manage backbuffer in Compatibility 3D (GH-111240).
- Add null check when getting motion vector fbo (GH-111260).
- Use resolved depth texture for DOF with MSAA in Mobile (GH-111303).
- Fix D3D12 not checking for fullscreen clear region correctly (GH-111321).
- Add all PowerVR devices to the transform feedback shader cache ban list (GH-111329).
- Fix specialization constant patching on D3D12 (GH-111356).
- Fix incorrect transform calculation in
Camera2Dwhen using a custom viewport (GH-111384). - Fix wrong indices used for transform & UBO matrix for double precision build (GH-111403).
- Use correct ndc for proximity fade in Compatibility (GH-111437).
- FTI - Fix
SceneTreeFTIdepth limit behavior (GH-111444). - Use re-spirv in the Vulkan driver to optimize shaders (GH-111452).
- Ensure
uv2_attrib(_input)is available when rendering lightmap (GH-111466). - Apply luminance multiplier in
copy_cubemap_to_panorama(GH-111577). - Use correct shadow material in some cases in Mobile (GH-111578).
- Fix
CAMERA_VISIBLE_LAYERSin multiview camera (VR) not aligning with the camera's cull mask (GH-111596). - Organize render surface sorting key for optimizing API performance (GH-111652).
- Fix D3D12 rendering device driver returning pointers to internal types for
get_resource_native_handleinstead of proper D3D12 primitives (GH-111658). - Do not begin a new frame during RenderingDevice's shutdown (GH-111733).
- Fix the LODs array returned by
mesh_get_surface(GH-111745). - Document occlusion debugging in the SDFGI debug probes draw mode in the editor (GH-111748).
- D3D12: Greatly reduce shader conversion time & fix spec constant bitmasking (GH-111762).
- Make all unsupported renderer message features consistently warnings (GH-111806).
- Use
GL_FRAMEBUFFERinstead ofGL_DRAW_FRAMEBUFFERwhen doing final blit to the screen framebuffer to work around OBS bug (GH-111834). - Round values after renormalization when generating mipmaps (GH-111841).
- Fix incorrect failure code in
screen_get_framebuffer_format(GH-111883). - Improve
Environmentadjustments (favor old behavior and quality) (GH-111897). - Force disable SPIRV debug info on D3D12 (GH-111912).
- Refactor rendering driver copy APIs to fix D3D12 issues (GH-111954).
- Sync final frame after finalizing RD to ensure that nothing is in use on the GPU when we free the RD (GH-111957).
- Insert barriers between subpasses when using enhanced barriers on D3D12 (GH-111988).
- Revise fog blending to fix over-darkening/borders (GH-111998).
- 2D: Fix incorrect 2D rendering (GH-112131).
- Set
DONT_PREFER_SMALL_BUFFERS_COMMITTEDwhen initializing D3D12MA (GH-112152). - Implement point size emulation in the forward shader for D3D12 (GH-112191).
- TAA adjustment to reduce ghosting (GH-112196).
- Fix Light2D none shadow filter to use nearest sampling (GH-112212).
- OpenXR: Fix resizing viewports used by
OpenXRCompositionLayer(GH-112227). - Use proper bitshift for tonemap srgb flag in Forward+ renderer (GH-112272).
- Create HWND swap chain when window transparency is disabled on D3D12 (GH-112344).
- Apply viewport oversampling to Polygon2D (GH-112352).
- Improve rendering driver fallback on Windows (GH-112384).
- Fix glow visual compatibility regression (GH-112471).
- Massively optimize canvas 2D rendering by using vertex buffers (GH-112481).
- Clean up Volumetric Fog blending behavior (GH-112494).
- CommandQueueMT: Reduce contention + Fix race conditions (GH-112506).
- Fix incorrect material and mesh thumbnails (GH-112537).
- Sanitize INF/NaN when copying last frame texture for SSIL/SSR (GH-112732).
- Reorganize canvas shader varyings in RD renderer (GH-112800).
- Implement
XR_META_foveation_eye_tracked(GH-112888). - Fix D3D12 renderer crash on Wine (GH-112911).
- Fix buffer creation on old D3D12 runtimes (GH-112914).
- Allow reflection probes to only recreate the atlas when switching to real time (GH-112916).
- Fix inconsistent color clamping between Mobile and Forward+ (GH-112927).
- 2D: Fix clip children (GH-112930).
- Add missing mipmaps to
RB_TEX_BACK_COLOR(GH-112932). - Check for Typed UAV Load Additional Formats capability when creating D3D12 device (GH-112989).
- OpenXR: Fix Vulkan validation errors and get
XR_META_foveation_eye_trackedworking on Meta Quest devices (GH-112994). - Fix corruption of D3D12 CPU descriptor heap free blocks (GH-113000).
- Persistently map staging buffers (GH-113010).
- Fix all D3D12 object memory leaks (GH-113106).
- Ensure usage of
DATA_FORMAT_R32_SFLOATfor depth resolve on Forward+ (GH-113130). - Fix
SHADER_UNIFORM_NAMESfor error messages (GH-113194). - Fix GLES3
buffer_free_dataerror (GH-113220). - Check for pending clears in every RD texture function (GH-113236).
- Refactor descriptor heaps in D3D12 driver (GH-113244).
- Fix framebuffers getting cleared multiple times on D3D12 (GH-113277).
- Fix VoxelGI glossy reflection artifacts (GH-113334).
- D3D12: Convert non-critical startup warnings to verbose prints (GH-113372).
- Set shader path before compilation (GH-113432).
- Add Adreno workaround to Mobile post process shader (GH-113467).
- Use AABB center instead of origin for visibility fade (GH-113486).
- Fix radiance/reflection fallback texture types (GH-113507).
- Update re-spirv with bugfix for function result decorations (GH-113582).
- Fix bad D3D12 SRV breaking MSAA with OpenXR (GH-113585).
- Change
environment_get_glow_hdr_bleed_thresholderror handling (GH-113599). - Check if sun scatter is enabled when using
SKY_MODE_AUTOMATIC(GH-113609). - Update Mesa NIR to 25.3.1 + Make each SPIR-V -> DXIL conversion thread allocate from its own heap (GH-113618).
- Check pipeline validity before freeing pipelines in PipelineDeferredRD (GH-113660).
- Fix re-spirv null pointer crash on invalid SPIR-V parsing (GH-113708).
- Fix Vulkan failing to initialize when compiling without D3D12 (GH-113741).
- Fix D3D12 looking blurry in the editor at fullscreen (GH-113744).
- Clear depth stencil textures on first use if the RDD requires it (GH-113842).
- Mobile: Fix clearcoat shader compilation error (GH-113844).
- Fix
SYNC_ALLbit getting masked out on D3D12 (GH-113893). - Fix D3D12 device not getting created with Agility SDK (GH-114040).
- Upgrade Agility SDK & DirectX Headers (GH-114043).
- RenderingDevice: Add null checks when retrieving uniform sets (GH-114073).
- Fix incorrect resource state when discarding MSAA textures in D3D12 (GH-114146).
- OpenGL: Split the ubos for motion vectors into separate uniforms (GH-114175).
- Skip MSAA2D when OpenXR is used (GH-114180).
- Pass consistent viewport and screen sizes to fix point size emulation (GH-114194).
- Fix OpenGL motion vector regression (GH-114227).
- Avoid singularity during sky filtering (GH-114279).
- Fix real time reflection probes being constantly recreated (GH-114281).
- Create new pools when they become fragmented on Vulkan (GH-114313).
- Fall back to octmap raster path on certain devices & fix issues with the shaders (GH-114314).
- Implement workaround for GPU driver crash on Adreno 5XX (GH-114416).
- Handle
RGB10_A2storage format in octmap shaders (GH-114419). - Create separate graphics queue instead of reusing the main queue when transfer queue family is unsupported (GH-114476).
- Remove amplification & mesh shader deny flags on D3D12 (GH-114615).
- Fix DXIL view instancing workaround not getting applied correctly (GH-114645).
- Always add Vulkan descriptor count for immutable samplers to descriptor pool (GH-114657).
- Prevent SSR from getting affected by specular occlusion (GH-114727).
- Workaround crash in pipeline creation on Intel Mesa devices by avoiding using half floats in derivative functions (GH-114765).
- Metal: Fix dynamic uniform buffer offset corruption when rebinding sets (GH-114778).
- Fix MSAA crashing Mali GPUs when using subpasses (GH-114785).
- Use luminance multiplier for sky background when using mobile renderer with HDR2D (GH-114804).
- Fix downsampled radiance map generation (GH-114907).
- Overhaul compute shader based environment roughness calculation to improve performance and quality (GH-114908).
- Fix buffers in D3D12 not getting cleared with the right usage (GH-114982).
- Do not store SPIR-V in memory unless pipeline statistics are used (GH-115049).
- Increase precision of ninepatch source rect to ensure pixel perfect alignment (GH-115152).
- Add Fossilize to the disabled Vulkan layer list for the editor (GH-115166).
- Fix stale reference bug in FramebufferCache (GH-115299).
Shaders
- Optimize the custom doc for shaders (GH-97616).
- Visual Shader: Fix nodes' relative positions changed in a different display scale (GH-97620).
- Focus shader text editor when opened with quick open dialog (GH-102193).
- Tweak high-end mark in the visual shader editor's node creation dialog (GH-103340).
- Don't save code property of VisualShader (GH-109021).
- Fix VisualShader conversion failing with subresources (GH-109375).
- Clean up ShaderEditor shortcuts (GH-109775).
- Organize toggle files button logic in shader editor (GH-109998).
- Clean up some things in shader editor code (GH-109999).
- Fix invalid suggested file name when saving resource from a scene that hasn't been saved yet (GH-110231).
- Fix shader compilation errors in Compatibility when using
depth_texture(GH-110241). - Fix ternary expression for structs in shaders (GH-111277).
- Fix error when compute shaders contain Unicode comment (GH-111703).
- Fix ParameterRef connection through reroute in visual shaders (GH-112058).
- Separate visual shader code out of shader editor plugin and dialog (GH-112100).
- Few fixes for expression node in visual shaders (GH-112124).
- Add
instance_indexoption to parameters in visual shaders (GH-112538). - Fix false positive
discardandfrag_onlyerrors in gdshaderinc files (GH-112551). - Apply
PREMUL_ALPHA_FACTORonly in non-split-specular shader variants (GH-112801). - Use new dock system for Shader Editor Dock (GH-113181).
- Move initialization check for CanvasMaterial (GH-113650).
- Fix shader editor filename not updating after file rename (GH-113703).
- VisualShader: Fix the eta input from the refract node (GH-113728).
- VisualShader: Fix new node spawning position with display scaling (GH-113974).
- VisualShader: Fix refract node setup (GH-114063).
- Add compatibility handler to
RADIANCEin sky shaders (GH-114773).
Tests
- Add unit tests for
Decal(GH-93463). - Remove stress unit tests (GH-104793).
- Use ProjectSettings path functions instead of hard-coded folder names in tests (GH-108170).
- Add more
Arraytests (GH-110097). - Image: Make
fillmethod also fill the mipmaps (GH-110247). - Add Android instrumented tests to the
appmodule (GH-110829). - Core: Remove
skip_crargument fromString(GH-110867). - Fix compilation failure in resource test file (GH-111345).
- Core: Support
INF/NANin JSON from/to native (GH-111522). - Add more
Dictionarytests (GH-112259). - Fix profiler cleanup with
--test(GH-113557).
Thirdparty
- access-kit: Update to 0.18.0 (GH-113990).
- basis_universal: Sync with latest Git to solve more warnings (GH-111445).
- brotli: Update to 1.2.0 (GH-113935).
- certs: Sync with Mozilla bundle as of Dec 4, 2025 (GH-113936).
- freetype: Update missing info from FreeType 2.14.1 (GH-111572).
- freetype: Update to 2.14.1 (GH-112411).
- grisu2: Rediff patch and sync with latest upstream commit (GH-113982).
- harfbuzz: Update to 12.2.0 (GH-112408).
- icu: Update to 78.1 (GH-112410).
- libdecor: Regenerate dynamic wrapper (GH-114081).
- libjpeg-turbo: Update to 3.1.3 (GH-113945).
- libktx: Update to 4.4.2 (GH-113960).
- libogg: Update to 1.3.6 (GH-108224).
- libpng: Update to 1.6.53 (GH-113961).
- libwebp: Update to 1.6.0 (GH-113963).
- manifold: Update to 3.3.2 (GH-113964).
- meshoptimizer: Update to 1.0 (GH-113983).
- msdfgen: Update to 1.13 (GH-113965).
- openxr: Update to 1.1.54 (GH-114026).
- pcre2: Update to 10.47 (GH-113967).
- sdl: Update to 3.2.28 (GH-113968).
- thorvg: Update to 0.15.16 (GH-109651).
- wayland-protocols: Update to 1.45 (GH-107693).
- zlib/minizip: Update to version 1.3.1.2 (GH-113933).
XR
- Expose
CameraFeed::set_ycbcr_images(GH-106237). - OpenXR: Add core support for Khronos loader (GH-106891).
- OpenXR: Add support for spatial entities extension (GH-107391).
- Use of
XrSwapchainCreateFlagsforOpenXRCompositionLayer(GH-108644). - Add OpenXR 1.1 support (GH-109302).
- OpenXR: Safely set environment blend mode when rendering on a separate thread (GH-109532).
- OpenXR: Prevent adding/removing extension wrappers after session start (GH-109533).
- Add
XR_META_hand_tracking_microgesturesaction paths (GH-109611). - OpenXR: Add support for frame synthesis (GH-109803).
- OpenXR: Fix errors reported by
XrApiLayer_core_validation(GH-109969). - Add
quest3sto the list of supported devices (GH-110465). - Fix XR tracker name changing at runtime (GH-110703).
- Android: Handle
YUV_420_888strides correctly in CameraFeed (GH-110720). - Fix late destruction access violation with OpenXRAPIExtension object (GH-110868).
- Use const ref parameters in the OpenXR module (GH-110948).
- More XR disable for Viewport and export (GH-111185).
- Emit
format_changedon CameraFeed datatype change (GH-111206). - Fix small code layout issue in persistence scope initialization (GH-111307).
- Ensure
XrRenderModelPropertiesEXT::typeis initialized (GH-111434). - Make
XRPoseonly set name on creation instead of on pose update (GH-111538). - Fix compilation errors when
disable_xr=yes(GH-111663). - Android: Deprecate and remove vendors specific XR APIs (GH-111870).
- Android: Stabilize camera lifecycle handling (GH-111871).
- Android editor: Add support for Android XR devices to the Godot XR Editor (GH-112777).
- Support reading available OpenXR runtimes from Windows registry (GH-112884).
- Implement
XR_KHR_android_thread_settings(GH-112889). - OpenXR: Add
OpenXRAPIExtension::update_main_swapchain_size()(GH-112890). - OpenXR: Add profiling macro for process,
xrWaitFrame()and acquiring swapchain (GH-112893). - Android editor: Ensure that the Android editor properly passes hybrid data when switching mode (GH-112928).
- OpenXR: Implement
play_area_changedsignal (GH-113062). - Check if OpenXR is enabled with feature tags of export preset (GH-113161).
- Fix
OpenXRExportPlugin::_get_name() must be overriddenerror (GH-113191). - Update the shortcuts to play current / specific scene based on the last selected XR run mode option (GH-113387).
- OpenXR: Fix building with
vulkan=no(GH-113460). - Update the version of the OpenXR Vendors plugin to the latest stable version (GH-113639).
- Fix OpenXR build failure when glTF module is disabled (GH-113713).
- OpenXR: Add Valve Frame controller support (GH-113785).
- OpenXR: Only obtain
xrCreateSwapchainAndroidSurfaceKHRextension if available (GH-113788). - Add Steam to the description of the Steam Frame controller (GH-113820).
- OpenXR: Use the DPAD extension constant (GH-113824).
- Add XROrigin3D scale warning (GH-113979).
- Hide properties on XRCamera3D that are managed by XRInterface (GH-114057).
- OpenXR: Remove version hack to workaround Meta aim pose issue that is now fixed (GH-114132).
- OpenXR: Don't create a visibility mask mesh without data (GH-114181).
- Android editor: Restrict Android editor support for hybrid app projects to XR devices (GH-114465).
- Reword OpenXR initialization failure alert message (GH-114630).
- Fix OpenXR depth submission data dropped (GH-114697).
- OpenXR: Change profile name for Valve Frame Controller (GH-114784).
- Fix XROrigin3D scale warning (GH-114931).
- OpenXR: Allow setting a specific version of OpenXR to initialize (GH-115022).
- Android: Fix XR build regression when vendor plugin overrides the same feature (GH-115148).