Commit Graph

79 Commits

Author SHA1 Message Date
StarryWorm 4ae336740d Add missing resource_*.h includes
Add missing `resource_importer.h` includes
Add missing `resource_loader.h` includes
Add missing `resource_saver.h` includes
2026-03-27 07:03:39 -04:00
Lukas Tenbrink 05c33acbb1 Make memnew(RefCounted) return Ref, to force callers to take ownership of it through a reference. 2026-03-18 20:34:08 +01:00
Silc Lizard (Tokage) Renew 73d041dd98 Optimize Animation Resource, Library, Mixer, Player
Co-Authored-By: Silc Lizard (Tokage) Renew <tokage.it.lab@gmail.com>
2026-03-06 16:35:21 -05:00
Rémi Verschelde eabb9a63d4 Rename callable_method_pointer.h to callable_mp.h and include it explicitly
This allows removing it from `class_db.h`, significantly reducing the amount of files
that include it transitively.

Also includes some include cleanup in `control.h` and `rich_text_label.h` done while
ensure they don't depend on `callable_mp`.
2026-03-04 16:23:23 +01:00
Rémi Verschelde 8c0f175c94 Decouple RenderingServer from as much of the codebase as possible
Notably decouples it from:
- AccessibilityServer
- DisplayServer
- Viewport
- Window
2026-03-03 12:48:07 +01:00
Rémi Verschelde a447ac95ec Move DisplayServer enums and typedefs to DisplayServerEnums
This will allow decoupling `display_server.h` from a number of headers in the
codebase which only require those enums and not all the DisplayServer API.
2026-03-03 12:44:02 +01:00
kobewi 7e2d260e68 Rework updating editor viewport HDR 2026-02-26 17:52:53 +01:00
Josh Jones b8389cc76b Support output to HDR monitors
Co-authored-by: Alvin Wong <alvinhochun@gmail.com>
Co-authored-by: Allen Pestaluky <allenpestaluky@gmail.com>
2026-02-11 22:13:26 -07:00
Rémi Verschelde 429750f60b Merge pull request #115093 from Ivorforce/hashmap-explicit-copy
Change copy constructors of `HashMap` and `AHashMap` from implicit to explicit
2026-01-31 22:50:51 +01:00
Lukas Tenbrink 1d840aae3a Remove sky.h include from environment.h, to speed up compile time. 2026-01-30 00:05:55 +01:00
Lukas Tenbrink 1825e89787 Change copy constructors of HashMap and AHashMap from implicit to explicit. 2026-01-21 13:01:23 +01:00
passivestar 375a8f84d2 Fix inconsistent MenuButton style 2026-01-06 04:38:32 +04:00
Jordyfel dfaae243ca Write to animation import settings only when needed to prevent bloating the .import file 2025-12-14 16:47:15 +02:00
Rémi Verschelde 9f761d50fc Merge pull request #113206 from aaronfranke/import-settings-multi-mesh
Support MultiMesh objects in the scene Advanced Import Settings dialog
2025-12-02 14:16:36 +01:00
Rémi Verschelde 97a670db46 Merge pull request #112448 from YeldhamDev/extra_panels
Add extra panels to some areas of the editor
2025-12-01 11:48:34 +01:00
Aaron Franke 596fdd018b Support MultiMesh objects in the scene Advanced Import Settings dialog 2025-11-26 11:39:44 -08:00
Lukas Tenbrink 0f047944e4 Statically protect Object::cast_to for unrelated Object types.
Fix a handful of bugs associated with it.
2025-11-24 23:03:22 +01:00
Michael Alexsander 7687a94883 Add extra panels to some areas of the editor 2025-11-22 10:57:50 -03:00
Thaddeus Crews 3619c68856 Merge pull request #91634 from jogly/gilley/fix-anim-loop-import
Fix animation loop import hints becoming lost
2025-11-21 18:37:33 -06:00
Aaron Franke 6c516a24e2 Remove ResourceImporterScene singletons in favor of local usage 2025-10-31 07:13:00 -07:00
chocola-mint 19c47c5d99 Remove #include "scene/main/timer.h" from control.h 2025-10-05 14:41:06 +09:00
A Thousand Ships f11aff3841 Editor: Restructure editor code
Moving various editor files into sub folders to reduce clutter
2025-07-04 18:18:22 +02:00
Pāvels Nadtočajevs a272376f89 Cleanup accessibility names. 2025-06-23 11:08:36 +03:00
Rémi Verschelde b8485366c2 Merge pull request #107211 from bruvzg/mat_ext_and_over
Restore 3.x style material auto-extraction import option.
2025-06-10 12:30:26 +02:00
Rémi Verschelde a3d297ae92 Merge pull request #98014 from SaracenOne/import_subresource_overwrite_fix
Fix resetting imported scene parameters to default.
2025-06-10 12:29:26 +02:00
Pāvels Nadtočajevs a0c4a8c4a9 Restore 3.x style material auto-extraction import option. 2025-06-10 12:03:45 +03:00
Pāvels Nadtočajevs 22b5a2fc5c Change editor button focus mode to FOCUS_ACCESSIBILITY. 2025-06-08 15:53:27 +03:00
dementive b8e44a0000 Improve ConfigFile get_sections and get_section_keys by returning Vector<String> 2025-04-24 20:10:31 -04:00
Thaddeus Crews 87f986ae67 Merge pull request #97837 from basicer/fix-update-timer
SceneImportSettings update_timer should be a oneshot.
2025-04-15 12:28:39 -05:00
Thaddeus Crews 94282d88f9 Core: Use Math namespace for constants 2025-04-10 16:29:30 -05:00
Thaddeus Crews f7b72704db Merge pull request #104804 from etherealxx/fix-advanced-import-inspector-missing-tooltip
Fix missing tooltips on "Advanced Import Settings for Scene" window
2025-04-09 18:12:00 -05:00
Pāvels Nadtočajevs 302fa831cc Initial editor accessibility. 2025-04-08 20:25:48 +03:00
Etherealxx 7e00ea510e Fix missing tooltips on "Advanced Import Settings for Scene" window
In Godot, it's possible to customize how the engine imports 3D resource,
by either clicking "Advanced..." button on Import Dock or double
clicking the resource on FileSystem Dock. Doing so will open the
Advanced Import Settings window, where user could inspect the 3D resource
in a viewport, with the scene tree on the left and an inspector panel
akin to the Import dock on the left. It contains the same settings from
the Import dock, with some advanced additions.

This commit fixes a regression since 4.2 where settings in the inspector
panel on the right part of the window does not contain the same tooltips
as its Import Dock counterpart (which were retrieved from the XML class
reference).
2025-04-01 10:29:40 +07:00
Lyuma 8997c999e9 Scene import: extract UID paths and store fallback
When extracting meshes, materials and animations, always store the uid:// path as well as a res:// fallback.
When validating import settings, load the fallback path if the uid:// path fails to load.
Update save_to_file/fallback_path every import to keep the file path in sync with the uid.
Use UID hashing for meshes and animations.
2025-03-19 11:50:39 +01:00
Rémi Verschelde 622344b47d Merge pull request #99810 from hakro/toggle_skeleton
Style skeleton button on import screen
2025-02-12 11:20:56 +01:00
Thaddeus Crews d8b1a5aac2 Merge pull request #92235 from paddy-exe/advanced-import-macbook-mouse-magnify
Add MagnifyGesture to Advanced Import dialog zooming
2024-12-30 08:58:50 -06:00
Patrick Exner f1b3f17ae3 Add MagnifyGesture to Advanced Import dialog zooming 2024-12-26 23:53:34 +01:00
Yufeng Ying f241c1fda0 Remove unused header in editor.
Co-authored-by: A Thousand Ships <96648715+AThousandShips@users.noreply.github.com>
2024-12-24 00:40:38 +08:00
Haoyu Qiu bf4e5cca3f Make editor's shortcut names translated on-site 2024-12-18 13:00:30 +08:00
Chaosus 9a8d6628de [Scene] Add SceneStringName::hover 2024-12-11 11:11:25 +03:00
hakro 8f5b4cd7fe Style skeleton button on import screen 2024-11-29 00:47:33 +01:00
Aaron Franke 924732772b GLTF: Preserve node visibility on import 2024-11-05 19:06:08 -08:00
Aaron Franke 562c666e3d Rename internal Button icon to button_icon to match exposed methods 2024-10-29 16:23:03 -07:00
Saracen 8ba6a703e2 Scene import bugfix:
Fixes scene subresource property not being updated if
all properties are reset to default in advanced importer settings.
2024-10-08 15:27:07 +01:00
Rob Blanckaert e5ff64d08f SceneImportSettings update_timer should be a oneshot.
SceneImportSettings uses a timer to debounce updates, but the
timer isnt a one shot.  This means after the first update is
scheduled, the dialog keeps re-rendering evne though no update
has been requested.
2024-10-04 21:07:35 -07:00
Rémi Verschelde 82688e9e2e Merge pull request #96094 from SaracenOne/add_3d_skeleton_to_advanced_importer
Add 3D Skeleton Preview to Advanced Importer
2024-09-08 23:21:28 +02:00
Saracen 6532eff7a7 Various improvements to advanced importer skeleton preview.
Better size calculation in advanced importer preview.
Uses the skeleton mesh to calculate the scene's bounding box.
This improves some situations where a mesh instances' scale
does not match its visual representation when a skeleton
is applied.

Advanced importer skeletal preview UX improvement.
Make the visibility of the skeletal preview in the advanced importer
when selecting an animation dependent on a new dedicated toggle button
rather than carrying over whether a skeletal node was or was not previously
selected before selecting the animation.

Advanced importer skeletal preview fix.
Fixes the preview on scaled skeletons in the advanced importer by applying the node's scale
to the preview and generating a skin for it.
2024-09-07 02:09:47 +01:00
Aaron Franke 9dd71c6414 ResourceImporterScene: Replace animation bool with an import type string enum 2024-08-27 14:58:18 -07:00
Jeronimo Schreyer 030fd71da2 add support for visualizing bones in Advanced Import Settings
When an imported model Skeleton3D type node is selected, the bones are drawn using lines or octahedrons to provide a clearer reference to their position.
Refactored Skeleton3DGizmoPlugin::redraw now uses a static function to generate bone meshes
2024-08-27 02:10:16 +01:00
Saracen 2453911013 Revert "Fix importer preview for models with scaled armatures"
This reverts commit 06709e6865.
2024-08-26 22:25:25 +02:00