* New plugin system to control the whole import workflow
* Can add options and run code at every import step (general, per node, mesh, animation, material etc.)
This constitutes a first version of these plugins. The ability to interact with the import preview dialog will likely be added later on.
Convert GLTF Document to use ImporterMeshInstance3D.
Add a GLTFDocument extension list and an extension for converting the importer mesh instance 3d to mesh instance 3d.
Use GLTF module when the editor tools are disabled.
Modified the render server to be less restrictive on matching blend arrays and have more logging.
Misc bugs with multimesh.
Always index the meshes.
This makes property casing consistent with the editor.
If property capitalization is disabled in the Editor Settings,
the remote inspector will also disable capitalization.
Respect client "supportsVariableType" capability
Implement "breakpointLocations" request
Implement "restart" request
Implement "evaluate" request
Fix error messages not being shown, and improved wrong path message
Removed thread option and behavior
Implemented detailed inspection of complex variables
Fix "const"ness of functions
Added a configurable timeout for requests
Implement Godot custom data request/event
Implement syncing of breakpoints
Added support for debugging native platforms
* `_gui_input`, `_input`, `_unhandled_input` and `_unhandled_key_input` are now regular C++ virutal functions.
* Everything else converted to GDVIRTUAL
* BIND_VMETHOD is gone, always use the new syntax from now on.
Creating `_gui_input` method and using the binder to register events will no longer work, simply override the virtual function now.
* Extensions are now scanned and loaded on demand.
* Extensions found are cached into a file that is used to load them (which is also exported).
* Editor will ask to restart when an extension requires core functionality.
* Editor will attempt to load extensions always before importing or loading scenes. This ensures extensions can register the relevant types.
* Make Undo/Redo menu items disabled when clicking it does nothing.
* Context menu of `TextEdit`
* Context menu of `LineEdit`
* Editor's Scene menu
* Script editor's Edit menu and context menu (for Script and Text)
* Make editor undo/redo log messages translatable.
* Mark `UndoRedo`'s `has_{un,re}do()` methods as `const`.
* Expose `TextEdit`'s `has_{un,re}do()` to scripts since `{un,re}do()` are already available.
Updating continuously should only be enabled for troubleshooting
purposes, as it uses a lot of CPU/GPU power.
The update spinner is now displayed in red when the Update Continuously
editor setting is enabled.
Implemented "output" event
Refactored "seq" field generation
Prevent debugging when editor and client are in different projects
Removed unneeded references to peer on the parser
Refactored way to detect project path
Implemented "setBreakpoints" request
Fix double events when terminating from client
Refactored "stopped" event
Implemented "stopped" with breakpoint event
Implemented "stackTrace", "scopes" and "variables" request
Report incoming number of stack dump variables
Implemented proper reporting of scopes and variables from stack frames
Prevent editor from grabbing focus when a DAP session is active
Implemented "next" and "stepIn" requests
Implemented "Source" checksum computing
Switched expected errors from macros to silent guards
Refactored message_id
Respect client settings regarding lines/columns behavior
Refactored nested DAP fields
Implement reporting of "Members" and "Globals" scopes as well
Fix error messages not being shown, and improved wrong path message
Found via `codespell -q 3 -S ./thirdparty,*.po,./DONORS.md -L ackward,ang,ans,ba,beng,cas,childs,childrens,dof,doubleclick,fave,findn,hist,inout,leapyear,lod,nd,numer,ois,ony,paket,seeked,sinc,switchs,te,uint`
* Shadow quality settings now specialization constant.
* Decal and light projector filters can be set.
* Changing those settings forces re-creation of the pipelines.
These changes should help improve performance related to shadow mapping, and allows improving performance by sacrificing decal and light projector quality.
* Added a new macro SNAME() that constructs and caches a local stringname.
* Subsequent usages use the cached version.
* Since these use a global static variable, a second refcounter of static usages need to be kept for cleanup time.
* Replaced all theme usages by this new macro.
* Replace all signal emission usages by this new macro.
* Replace all call_deferred usages by this new macro.
This is part of ongoing work to optimize GUI and the editor.
* If not present, the dialog asks to load build sources from a file.
* The export templates check now also verifies that build sources are installed and skips the template check.
This makes Android development easier.
* This PR adds the ability to disable classes when building.
* For now it's only possible to do this via command like:
`scons disable_classes=RayCast2D,Area3D`
* Eventually, a proper UI will be implemented to create a build config file to do this at large scale, as well as detect what is used in the project.
* Editor 2D viewport now uses embedded subwindows (windows no longer pop up)
* Restored the ability to disable 3D on the 2D viewport (makes 3D not display on 2D when there is a camera on the scene)
* Deprecates GDNative in favor of a simpler, lower level interface.
* New extension system allows registering core engine classes.
* Simple header interface in gdnative_interace.h
- EditorSettings: Ensure that `create()` makes a valid singleton.
Fixes#49179, fixes#49450.
- EditorPaths: Cleanup code, properly set `paths_valid`.
- EditorPaths: Move more paths validation (check, mkdir) from
EditorSettings for a better separation of concerns.
- EditorPaths: Move EditorFileSystem creation of `.godot/imported`
next to other paths.