d7ccaff144
More cleanups to PaintCanvasBackground.
2022-11-19 02:31:02 +01:00
5c38af1d1a
Reworked PaintCanvasBackground. Now it draws it's pattern using canvas draw commands.
2022-11-19 02:20:52 +01:00
5a78997c83
Now PaintNodes can draw their outlines.
2022-11-19 01:23:33 +01:00
af1018bae6
Don't update the preview when the mouse is not over a PaintCanvas.
2022-11-19 00:21:15 +01:00
dc4ded8bd8
Now the undo and redo buttons in PaintToolsPropertyInspector actually work.
2022-11-18 23:50:05 +01:00
120e59baba
Ported the logic to PaintCanvas from the experimental project.
2022-11-18 23:47:37 +01:00
4060eeccc7
Now _forward_canvas_gui_input() in PaintNode is a virtual, as it should have been.
2022-11-18 23:47:05 +01:00
8e766ee8ab
Added undo and redo buttons to the PaintToolsPropertyInspector. It won't work for now.
2022-11-18 22:25:24 +01:00
65cf1c60d9
PaintProjectPropertyInspector now updates if the preset or the current color changes in PaintProject.
2022-11-18 12:26:36 +01:00
12193b03f4
Added a slider for the brush size property into PaintToolsPropertyInspector.
2022-11-18 01:09:25 +01:00
8c8dc051cb
Added brush prefabs to PaintToolsPropertyInspector.
2022-11-18 00:33:27 +01:00
884fae4847
PaintProjectPropertyInspector now uses and manages the presets in PaintProjects.
2022-11-17 23:56:19 +01:00
2485665f89
Added more helper methods to PaintProject.
2022-11-17 23:55:36 +01:00
a3bedba43a
Now PaintProject can store color presets. They also support defaults.
2022-11-17 23:32:09 +01:00
62a7fda32e
Added a button for the currently selected color into PaintProjectPropertyInspector. Also logic cleanpus.
2022-11-17 23:05:27 +01:00
e53868f60f
Added a new PaintProjectPropertyInspector class.
2022-11-17 17:46:03 +01:00
6ddd0c1fa3
Fix non-tools builds.
2022-11-17 12:07:02 +01:00
526800fcf9
Added a new PaintToolsPropertyInspector.
2022-11-17 11:56:03 +01:00
b49ea8c5ef
PaintColorGrid now has 5 columns.
2022-11-17 11:55:39 +01:00
8fc5633933
Added TOOL_ prefix to the Tools enum's values in PaintCanvas.
2022-11-17 11:55:25 +01:00
33c70f7a86
Removed PaintSidebar and renamed PaintSidebarModules to PaintCustomPropertyInspector.
2022-11-17 10:05:05 +01:00
b9f0429f8c
Renamed sidebar_modules folder to property_inspectors in the paint module.
2022-11-17 09:55:37 +01:00
01f078e016
Created icons for the new paint nodes.
2022-11-17 00:56:04 +01:00
ef3110d4d1
Disabled the paint sidebar, as I found a better way of handling this using custom property inspectors.
2022-11-16 23:48:45 +01:00
25968b2803
Fix bindings.
2022-11-16 21:55:12 +01:00
761e381d0e
Store the previous tool in Paintcanvas.
2022-11-16 17:23:17 +01:00
f439b421c5
Added some signals to PaintCanvas.
2022-11-16 17:09:21 +01:00
a2f02d669c
Added a current_tool property for PaintCanvas.
2022-11-16 15:52:29 +01:00
338fc04a75
Added the Tools enum from PaintWindow to PaintCanvas.
2022-11-16 15:40:40 +01:00
fff7d1f152
Added brush_prefab and brush_size properties to PaintCanvas.
2022-11-16 15:38:09 +01:00
c683e675e1
Now PaintNodes can handle input events coming from the editor plugin.
2022-11-16 15:25:27 +01:00
afa0e83f78
Added getters for the images and textures of the PaintCanvas.
2022-11-16 13:31:51 +01:00
94da7051d4
Also add null check.
2022-11-16 13:29:06 +01:00
1f2e2c1d45
Fix crash in PaintCanvas.
2022-11-16 13:28:19 +01:00
ab3e6f0014
Added methods to access PaintUtilities from PaintNodes, so no registered singletons will be required.
2022-11-16 00:26:33 +01:00
9c2d0599ea
Bound the get_paint_project helper.
2022-11-15 23:58:43 +01:00
bf15088dc7
Added a configuration warning to PaintNodes if they are not a child of a PaintProject.
2022-11-15 23:57:44 +01:00
7fa6ff6433
Not the _on_paint_node_selected virtual will properly get called in PaintSidebarModule.
2022-11-15 23:44:57 +01:00
bfd80993f2
Now PaintColorGrid sets the active project's color.
2022-11-15 23:12:39 +01:00
4a93e21660
Added get_paint_project helper method to PaintNode.
2022-11-15 23:11:55 +01:00
4851144a55
Added current_color property to PaintProject.
2022-11-15 23:11:38 +01:00
d55653d916
Notes.
2022-11-15 22:46:08 +01:00
73e7d7f8ce
The PaintColorGrid now contains a ScrollContainer.
2022-11-15 22:24:00 +01:00
ff701c35ad
Now the paint plugin handles paint nodes.
2022-11-15 22:11:49 +01:00
e044b007f6
PaintColorGrid now inherits from PaintSidebarModule. It is also added to the new sidebar by the paint plugin.
2022-11-15 21:59:04 +01:00
abe142b090
Hide the sidebar in make_visible.
2022-11-15 18:17:15 +01:00
5baff6410f
Now PaintEditorPlugin creates the paint sidebar.
2022-11-15 18:16:32 +01:00
229677acf5
Added a new PaintSidebar and PaintSidebarModule classes to the paint module.
2022-11-15 17:58:00 +01:00
0963538827
Added the new PaintEditorPlugin as an engine global.
2022-11-15 17:33:09 +01:00
14c503a41b
Added a new paint editor plugin, and renamed the old temporarily.
2022-11-15 16:53:37 +01:00
94b5ac9267
Added resize method to PaintCanvas.
2022-11-15 16:41:57 +01:00
9eaa2bd56f
Fix warning on gcc.
2022-11-15 14:44:50 +01:00
4155ef7ff3
Commit changes that were left out.
2022-11-15 14:41:59 +01:00
6852b3afa1
Added updated version of the methods in Action.
2022-11-15 14:34:25 +01:00
c0bbd6edf7
Added a new PaintProject class.
2022-11-15 13:17:37 +01:00
26511bb83b
Added the required api to PaintCanvas.
2022-11-15 13:13:37 +01:00
71f70117a0
Also add the new classes to config.py.
2022-11-15 12:35:44 +01:00
772195a9c3
Added PaintCanvas to the build, and registered it.
2022-11-15 12:34:29 +01:00
7b5071fc73
Created updated versions for the deprecated helpers in PaintAction, and bound them.
2022-11-15 12:32:31 +01:00
1fac355760
Renamed the paint canvas getters/setters in PaintAction, and bound them.
2022-11-15 12:26:50 +01:00
9da781e8b8
Renamed 2 deprecated methods in PaintAction, and removed virtual from sym point helper methods.
2022-11-15 12:22:32 +01:00
a5c5201aa8
Added new overridable virtual api to PaintActions for commiting changes.
2022-11-15 12:15:32 +01:00
c2e8a32c90
Renamed do and undo methods in PaintAction.
2022-11-15 11:49:03 +01:00
b05babe4b2
Also added a new PaintCanvas.
2022-11-14 23:32:12 +01:00
1c0c3c4393
Added PaintNode.
2022-11-14 23:27:26 +01:00
b574d44dd7
Also register PaintCanvasBackground to the ClassDB, and fix crash on exit with it.
2022-11-14 23:08:37 +01:00
74a7615168
Added a PaintIcons header to the paint module to reduce code duplication, and to fix compile on the platforms where it failed.
2022-11-14 22:38:52 +01:00
a7afeb93e3
Register the paint module's ui helper classes.
2022-11-14 18:27:21 +01:00
1cf7b38074
Small rework for the PaintCanvasBackground.
2022-11-14 18:27:03 +01:00
334b4ae3f8
Renamed PaintCanvas to PaintCanvasOld.
2022-11-14 17:46:37 +01:00
dbeb522d8b
Renamed the icons folder to paint_icons in the paint module.
2022-11-14 17:35:19 +01:00
9f2996c770
Reorganized the paint module.
2022-11-14 17:31:45 +01:00
e63a346cd3
Bound some getter / setter methods in the paint module.
2022-11-14 17:11:38 +01:00
Haoyu Qiu
eacf797faf
Clarify offset parameter behavior in RegEx methods
2022-11-13 00:48:46 +01:00
smix8
fd5bb2f0fd
Fix Editor crash when MeshLibrary gets replaced while used in an open GridMap scene
2022-11-13 00:23:55 +01:00
53f486237e
Fix voxelman's editor setting.
2022-10-11 22:09:09 +02:00
54643bc1fc
Re-extracted class docs.
2022-10-09 12:43:55 +02:00
10437e2f01
Add missing doc classes setup.
2022-10-09 12:41:45 +02:00
ee015b7a2e
Added doc classes to the tile_map module.
2022-10-09 12:16:11 +02:00
0de5f4ec86
Added RTileMap and RTileSet compatibility classes.
2022-10-09 11:52:25 +02:00
5123cf9837
Also renamed the rtile_map module itself to tile_map.
2022-10-09 11:50:46 +02:00
c6f998b2a6
Also update the include guards.
2022-10-09 11:47:55 +02:00
2159409dcc
Moved TileMap and TileSet's docs to their module.
2022-10-09 11:47:03 +02:00
d0d2a709e8
Renamed RTileMap ro TileMap and RTileSet to TileSet, as it does not need to be able to live alongside Godot's TileMap anymore.
2022-10-09 11:45:57 +02:00
575a19eafb
Added back GridMap support for the NavigationMeshGenerator.
2022-10-09 00:01:13 +02:00
932bebcdba
Added back RTileSet export aswell.
2022-10-08 23:55:49 +02:00
51acd0c9d6
Fix setting all EDITOR_DEFs for the gridmap editor.
2022-10-08 23:41:54 +02:00
7f78bdf7fe
Now MeshLibraryEditorPlugin registers itself to the export as menu.
2022-10-08 23:36:36 +02:00
d8f00dc1b4
Fix the mesh library editor plugin, and cleanups.
2022-10-08 20:57:38 +02:00
be5795add2
Also added the mesh library editor plugin.
2022-10-08 20:50:04 +02:00
4fa3ca949e
Fix includes and compile for GridMap. Still not enabled.
2022-10-08 20:42:07 +02:00
0a8cf3cb3f
Added MeshLibrary to the GridMap module. Also include cleanups.
2022-10-08 19:48:37 +02:00
c905adc04a
Added back the GridMap module. Not yet enabled.
2022-10-08 19:40:25 +02:00
0117097bb6
Fixed compile.
2022-10-08 17:56:50 +02:00
The Tophat Demon
3b7eb818e3
GLTF imports & exports material texture filters
2022-10-08 17:48:13 +02:00
2c225f79fb
Ported "Fix GDScript export hint for Navigation2D layer names - smix8" for cscript aswell.
2022-10-08 17:30:43 +02:00
smix8
f7f386b697
Fix GDScript export hint for Navigation2D layer names
2022-10-08 17:29:21 +02:00
smix8
1c0898763c
Fix avoidance calculation on NO_THREADS build
2022-10-08 17:24:55 +02:00
smix8
ec3d97dda5
Fix TileMaps with origin offset placing NavPolygons wrong without a Navigation2D node
...
The legacy navigation was positioning baked TileMap navpolygons relative to the current Navigation2D node assuming that it is usually one of the parent nodes.
Without the deprecated Navigation2D node the default navigation map of the world_2d is used. This navigation map has no relative Node2D so it needs to use the global_transform of the TileMap to place navregions with the correct offset in case the TileMap is moved from the origin.
2022-10-08 16:58:45 +02:00
Rémi Verschelde
43de2b9ecc
Style: Ensure consistent formatting with clang-format 15
2022-10-08 16:48:59 +02:00
smix8
8be98b9138
Exclude disabled CollisionShapes from Navigationmesh baking
...
Excludes disabled CollisionShapes from the geometry parsing for the NavigationMesh baking.
(cherry picked from commit 534ff93b05446f5692bcee95f51400c211b080ff)
2022-10-08 16:23:20 +02:00
bd17c39172
Ported Fix variables highlighting as types - dzil123 for CScript.
2022-10-08 15:58:44 +02:00
dzil123
6cb08c7164
Fix variables highlighting as types
2022-10-08 15:56:49 +02:00
029a6671b4
Moved from the TERRAMAN_2D_PRESENT define to the module system's equivalent define aswell.
2022-10-05 15:19:59 +02:00
7357a4f65c
Removed stray old define.
2022-10-05 14:36:51 +02:00
258857332c
Replaced MESH_UTILS_PRESENT defines aswell.
2022-10-05 14:35:44 +02:00
50e1108e18
Replaced PROPS_2D_PRESENT define for the module system's equivalent.
2022-10-05 13:20:42 +02:00
2fdaacfa66
Moved away from the MESH_DATA_RESOURCE_PRESENT define aswell.
2022-10-05 12:54:17 +02:00
73742e947d
Also mvoed away from the TERRAMAN_PRESENT define.
2022-10-05 11:54:21 +02:00
14c44e5727
Also moved away from the old VOXELMAN_PRESENT macro.
2022-10-05 11:35:51 +02:00
ea2a36c4ea
Also replaced the old PROPS_PRESENT defines with the module system's generated defines.
2022-10-05 11:16:32 +02:00
a0472fb6eb
Fix typo.
2022-10-05 10:30:52 +02:00
ece362681d
Replaced the old TEXTURE_PACKER_PRESENT defines with the module system's generated defines.
2022-10-05 10:25:48 +02:00
Max Hilbrunner
637d36ccff
Update UPnP documentation
...
Adds more details, especially about caveats, failure modes and pitfalls
(cherry picked from commit be41c097691acfd3f5559a28262730f086c46845)
2022-09-16 22:32:58 +02:00
Max Hilbrunner
b343e5758c
UPNP: Don't delete mappings when adding mappings
...
Don't delete previous mappings when adding a new mapping.
This was a old workaround that seems to cause issues.
(cherry picked from commit 2685cc7bb6708df745317fd2f078bc945555e4f8)
2022-09-16 22:32:19 +02:00
b6624bf30b
Re-extracted class docs.
2022-09-10 04:18:55 +02:00
27316923d3
Moved ThreadPool to core. Also it can change it's thread count now when it has time for it.
2022-09-10 04:16:50 +02:00
d10db3fddd
Now ThreadPool uses a List internally as a queue inetad of a Vector.
2022-09-10 03:07:49 +02:00
3d4bf1c3c9
Improved PaintWindow mouse emulation from touch support a bit more.
2022-09-01 01:56:59 +02:00
2d543af173
Fix PaintWindow with mouse emulation from touch.
2022-09-01 00:40:18 +02:00
c090c48f01
Added a few getters and setters to the PaintWindow.
2022-08-31 18:39:10 +02:00
b886d14cf5
Added _3d postfix to the end of the World3D related getters and setters in Viewport.
2022-08-29 17:54:41 +02:00
24a1580dbf
Renamed the files aswell.
2022-08-29 17:33:10 +02:00
e4ae7f2ebc
Renamed Environment to Environment3D, and WorldEnvironment to WorldEnvironment3D.
2022-08-29 17:21:40 +02:00
2aee6ab0bb
Renamed World to World3D.
2022-08-29 16:49:00 +02:00
4133c05085
(Hopefully) fixed incomplete type usage error.
2022-08-28 16:36:03 +02:00
dc28777321
Moved Skeleton and it's related classes to a module.
2022-08-28 15:46:12 +02:00
546929e85b
Add all doc classes to the new module's config.py.
2022-08-28 14:03:14 +02:00
b9f3d3b26a
Moved Skeleton2D and it's related classes into a module.
2022-08-28 13:57:25 +02:00
8277e89075
Fix requesting write locks in WebNodes.
2022-08-26 17:22:20 +02:00
76141ee7e7
Small improvements to the simple web server.
2022-08-26 14:52:56 +02:00
0cfc5ed610
Added enctype and multipart form helpers to HTMLTag.
2022-08-26 12:02:57 +02:00
1f8581edd8
Added rows and cols to HTMLTag.
2022-08-26 11:49:22 +02:00
f1e5f3d062
Fix docs mentioning an old behaviour.
2022-08-25 21:14:21 +02:00
31b5135877
Fix default argument for the binding of WebServerRequest::send_redirect.
2022-08-25 21:13:26 +02:00
658cbb806d
Fix: WebPermission was meant to be a Resource.
2022-08-25 21:12:52 +02:00
f4b7a3b378
Also made it a singleton.
2022-08-23 15:23:34 +02:00
e6adf5aad5
Added an extension api for the WebNodeEditor.
2022-08-23 15:20:56 +02:00
285fe5cd82
Renamed WebEditor* to WebNodeEditor*.
2022-08-23 13:27:59 +02:00
5e64462049
Renamed the web editor's files.
2022-08-23 13:24:31 +02:00
bfc1679f14
Actually register EditorInterface, SpatialEditor, CanvasItemEditor, and WebNodeEditor as globals.
2022-08-23 13:21:09 +02:00
d41239d425
Now the return value discarded warning is disabled by default in gdscript and cscript.
2022-08-23 13:09:56 +02:00
a1974c8338
Re-extracted the class docs.
2022-08-23 13:09:12 +02:00
06e040120a
Fix int sign comparison warning.
2022-08-23 00:45:20 +02:00
b0da59764d
Added proper multi part form parsing support for the simple web server.
2022-08-22 22:16:32 +02:00
2ef28475cd
Fix mimetype handling in the simle server. Also added a few misisng ones.
2022-08-22 14:37:40 +02:00
d505f3e59f
Call the proper method to render the menu.
2022-08-22 14:29:40 +02:00
ae19991c63
Added descriptions and brief descriptions for most of the classes in the web module.
2022-08-22 00:01:10 +02:00
88df1db348
Fix typo.
2022-08-21 23:11:59 +02:00
ba0248ae5e
Added docs for RedirectWebPage, and AliasWebPage.
2022-08-21 23:09:57 +02:00
5b16231128
Added docs for FolderServeWebPage, and BrowsableFolderServeWebPage.
2022-08-21 23:04:56 +02:00
25230bee02
Added docs for PagedArticlesWebPage.
2022-08-21 22:53:50 +02:00
8cd72fc8d8
Added docs for PagedArticleWebPage.
2022-08-21 22:46:32 +02:00
fe5e0231c5
Added docs for ListWebPage.
2022-08-21 22:23:59 +02:00
82affed801
Added docs for StaticWebPage and it's derived classes.
2022-08-21 22:02:26 +02:00
1e604b13fb
Added method and property descriptions for WebServerRequest's docs.
2022-08-21 21:37:53 +02:00
b095a48ace
Fix the logic of get_url_site(). Also small binding cleanups.
2022-08-21 21:37:00 +02:00
46ee607d18
Fixed a few typos.
2022-08-21 18:24:36 +02:00
70cc269b40
Added docs for WebServer.
2022-08-21 18:24:20 +02:00
0c9e77aab4
Added docs for WebPermission.
2022-08-21 18:09:23 +02:00
ab3ae5fdd4
Added docs for CSRFTokenWebServerMiddleware.
2022-08-21 17:46:17 +02:00
c6b1406ed7
Added docs for WebServerMiddleware.
2022-08-21 17:31:01 +02:00
7cc171ebe7
Added docs for WebRoot.
2022-08-21 17:13:06 +02:00
20c0a91275
Added full documentation of the WebNode.
2022-08-21 16:45:03 +02:00
8119bd099a
Added description for HTTPSessionManager. Note that this class still needs more cleanups, but I wrote docs in a way as if those were already done.
2022-08-21 03:04:13 +02:00
892cff7537
Added a description for the HTTPSession class.
2022-08-21 03:02:11 +02:00
3b19f30e6c
Added a description for the WebServerRequest.
2022-08-21 02:47:35 +02:00
714547cb17
Re-extracted class docs.
2022-08-21 00:40:49 +02:00
8108324700
Fix doc class strings, and add missing ones.
2022-08-21 00:32:32 +02:00
edb7dd231e
Enable html prettifying in the web editor.
2022-08-20 22:30:09 +02:00
b8d9139bb1
HTMLParser now properly parses doctype in a case insensitive way. Also improved an error message a bit.
2022-08-20 22:28:08 +02:00
62b0d5572e
Use string length() instead of size() as it was intended in HTMLParser, and BBCodeParser.
2022-08-20 21:57:50 +02:00
5a5fbc8e4d
Implemented the initial version of the WebEditor. It's currently a simple preview gui.
2022-08-20 21:50:44 +02:00
e38dfb7c40
Set up WebEditorPlugin to hide / show the web editor tab in a way that feels right. The tab itself is empty though at the moment.
2022-08-20 20:24:40 +02:00
d62fa2b4c9
Added web editor plugin skeleton.
2022-08-20 18:11:07 +02:00
9aadbd720c
Added a web node editor icon.
2022-08-20 16:46:45 +02:00
89a414187b
Added icons for the rest of the web nodes.
2022-08-20 16:44:30 +02:00
0bc4baaa02
Added an icon for UserModule.
2022-08-20 16:24:11 +02:00
114e8953ed
Added icons for the UserManagers.
2022-08-20 16:18:27 +02:00
b552438044
Added icons for Usser, and user web pages.
2022-08-20 16:01:19 +02:00
e4cc8ce6fd
Added icons for AliasWebPage, and RedirectWebpage.
2022-08-20 15:29:11 +02:00
0ed82cbca3
Removed stub module.
2022-08-20 15:11:50 +02:00
c5b11c8ca8
Added icons for WebNode, WebRoot, and WebServer.
2022-08-20 03:23:18 +02:00
ead97d9164
Added an icon for MeshDataResource, MeshDataInstance, and for the meshDataInstance editor toggle.
2022-08-20 03:11:31 +02:00
5925b62b2c
Fix newly introduced potential crashes in mesh data resource editor.
2022-08-20 02:13:09 +02:00
a426e173f5
Hide MDIEd's toggle button by default.
2022-08-20 02:07:52 +02:00
31bcbb0184
Hide the transform gizmo while editing a mesh data resource.
2022-08-20 01:42:19 +02:00
3220e9c592
Now in order to edit MeshDataInstance a new edit mode has to be togged from the top bar. While this mode is enabled the edited MeshDatainstace can't be deselected. Also now Mesh Data Editor's sidebar will only be visible in this mode, along with the editor gizmo.
2022-08-20 01:33:02 +02:00
95767b2cea
Moved the editor only modules to a new editor_modules folder.
2022-08-19 22:46:53 +02:00
1ef37c61c2
Moved http server simple to it's own module.
2022-08-19 22:09:30 +02:00
e2d42db711
Also renamed the files.
2022-08-19 21:24:36 +02:00
cffe742085
Renamed the VisualServer to RenderringServer like in Godot4, as I think it's a lot better name for it. I did not yet rename the files.
2022-08-19 20:50:20 +02:00
2a13c65298
Ported: Visual/Physics/Navigation Servers validate RIDs with documentation update - tinmanjuggernaut
...
2be0738304
2022-08-19 02:52:31 +02:00
f1c29650eb
Ported: Fix TileMap error msg when optional navigation node is not set
...
Fixes TileMap error msg spam when bake_navigation=true but the optional and depr navigation node is not set.
- smix8
30d4555c65
2022-08-19 01:55:37 +02:00
88d6ef51eb
Removed additional direct script rpc mode query when sending rpcs, in order to simplify that codepath as much as possible. Also removed the remote, remotesync etc. keywords from gdscript, as now they won't work anymore. Node's rpc_config() method should be used instead of marking methods with keywords in scripts.
2022-08-19 01:19:33 +02:00
9d0c889583
Added a few small networking related helper methods to Node. Made the rpc macros in Entity use them.
2022-08-19 00:36:24 +02:00
1dc5d84196
Moved visibility rpcs (vrpc) from Entity to Node. Also added an unreliable variant.
2022-08-19 00:04:38 +02:00
98e649489f
Now the TextEditor won't open a file multiple times, instead it will just switch to the proper tab.
2022-08-18 22:31:48 +02:00
1d101bfea1
Now the TextEditor addon will add it's own "create file" entry to the editor's filesystem dock.
2022-08-18 21:35:02 +02:00
e019ccc64b
Now text files will show up in the editor if the text editor plugin is enabled. Also clicking them will open them in the text editor.
2022-08-18 20:36:36 +02:00
6be9bf5dfe
Cleaned up and added the skeleton modification stack implementations to the build. Also smaller fixes.
2022-08-18 15:41:28 +02:00
23610db948
Fix build.
2022-08-18 13:04:52 +02:00
6ff120dc85
Moved the old module dependencies to the new system.
2022-08-18 12:53:49 +02:00
91fe9ed8ca
Backported: [Scons] Implement module dependency sorting.
...
Modules can now call:
env.module_add_dependencies(name: str, deps: list, optional: bool)
To add required or optional dependencies during the "can_build" step.
Required dependencies will be checked and the module will be not be
enabled when they are missing, printing a warning to notify the user.
- Faless
951a1016d3
2022-08-18 12:44:45 +02:00
4732493761
Backported: SCons: Validate dependencies for linked multimedia modules
...
This is still a bit hacky and eventually we should rework the way we handle
optional dependencies (especially with regard to builtin/system libs), but
it's a simple first step.
- akien-mga
7c74312217
2022-08-18 12:25:38 +02:00
4c4e19223e
Added _theme_ infix to the theme helper methods in Control.
2022-08-17 20:57:16 +02:00
9757c39f05
Moved a few more core classes.
2022-08-17 17:43:49 +02:00
99e94b08c4
Moved base input related classes to core/input.
2022-08-17 17:02:24 +02:00
686663d3e4
Moved around more classes in core.
2022-08-17 16:01:01 +02:00
04feb63860
Moved Engine and projectSettings.
2022-08-17 15:35:28 +02:00
be16fe23ad
Moved the error macros.
2022-08-17 15:14:19 +02:00
220b2db443
Moved String and related classes under a string folder in core.
2022-08-17 14:19:55 +02:00
dc9cc716c7
Moved Object related classes under core/object.
2022-08-17 13:45:14 +02:00
9555ee56b9
Moved Variant related classes under a variant folder in core.
2022-08-17 13:17:12 +02:00
388b88678e
Moved container related classes in core under a new containers directory.
2022-08-17 12:53:49 +02:00
0d2fc2e9f2
Moved color to core/math.
2022-08-17 11:38:15 +02:00
73709fa1ae
Backported from Godot4: Clean up Hash Functions
...
Clean up and do fixes to hash functions and newly introduced murmur3 hashes in #61934
* Clean up usage of murmur3
* Fixed usages of binary murmur3 on floats (this is invalid)
* Changed DJB2 to use xor (which seems to be better)
- reduz
141c375581
2022-08-17 10:42:50 +02:00
e71e3ed897
Now Vector4, Vector4i, Projection, PoolVector4Array, PoolVector4iArray, are built in variant types. Also reordered the Variant's Type enum, renamed _RID in it to RID, fixed a few smaller issues and removed some very old compat code.
2022-08-16 21:55:56 +02:00
8c2e76840c
Removed CameraMatrix, and switched to Projection.
2022-08-16 10:26:35 +02:00
220954cf08
Backported most of the improvements to String from Godot4.
2022-08-15 22:54:03 +02:00
5cd44e02d0
Backported the improvements to Transform from Godot4.
2022-08-14 20:35:11 +02:00
e4cad690a3
Renamed elements in Transform2D to columns.
2022-08-14 15:37:05 +02:00
d9a8497546
Renamed translate in Transform2D to translate_local.
2022-08-14 14:59:46 +02:00
170a41ca82
Backported improvements to Basis from Godot4. Also bound all eligible methods.
2022-08-14 00:18:21 +02:00
d9e094ab9a
Renamed elements in Basis to rows.
2022-08-13 19:07:59 +02:00
730bce8587
Renamed Quat to Quaternion for consistency with the other engine math classes.
2022-08-13 15:22:33 +02:00
f423b30714
Backported from Godot4: Fix secondary handles in editor gizmos
...
Primary and secondary handles are no longer differentiated by their ids, so a bool was added to tell them apart in all the handle-related methods.
Includes a minor fix in CollisionPolygon3DEditor, unrelated to editor gizmos.
- JFonS
5ebea2d120
2022-08-12 22:21:00 +02:00
a84be665ec
Use AnimationPlayer's root property instead of just getting it's parent when exprting a GLTFDocument.
2022-08-12 13:59:27 +02:00
82550d10e3
Also update BoneAttachment handling code.
2022-08-12 12:58:04 +02:00
d5158716d9
Update the logic of _convert_animation_track in GLTFDocument.
2022-08-12 12:57:02 +02:00
e3918692a3
Backported from Godot 4: Fixed animation insertion in SkeletonEditor - TokageItLab
...
653e2a550c
2022-08-12 01:34:45 +02:00
9d9271b518
Removed the SNAME macro, I'll probably keep static counting support for StringNames though.
2022-08-11 20:22:51 +02:00
6825202490
Removed warning.
2022-08-11 20:11:43 +02:00
5e3c3ff4d0
Ported from Godot4: Implement global rest - TokageItLab
...
4d4ffa3a2c
2022-08-11 20:10:26 +02:00
da62c587e8
Ported from Godot4: get rid set_bone_pose and fix some function in SkeletonEditor - TokageItLab
...
8e9897b6de
2022-08-11 19:57:23 +02:00
109a0ca81b
Ported from Godot4: Remove REST transform influence in skeleton bones
...
* Animations and Skeletons are now pose-only.
* Rest transform is kept as reference (when it exists) and for IK
* Improves 3D model compatibility (non uniform transforms will properly work, as well as all animations coming from Autodesk products).
- reduz
2dc823273e
2022-08-11 19:06:33 +02:00
92600420ba
Backported from Godot4: Implemented SkeletonEditorGizmo.
...
-TokageItLab, lyuma
f2e9867e9f
- It still has some issues, as this one works differently than the 3.x version, they will be fixed later.
2022-08-11 17:31:02 +02:00
3cbdd9cfa1
Removed Module prefix / infix from the skeleton editor's classes. Also now the module only has one EditorPlugin.
2022-08-11 10:59:22 +02:00
b6eb2db442
Backported returning AfterGUIInput from forward_spatial_gui_input from Godot4. Also removed the first index parameter. This fully broke the skeleton editor, it will be fixed soon.
2022-08-11 02:24:30 +02:00
58539a22b6
Backported from Godot4: Node3D gizmo improvements
...
* Clean-up of node_3d_editor_plugin.{h,cpp}: removed unused code, fixed some bugs.
* Moved node_3d_editor_gizmos.{h,cpp} to editor/plugins.
* Added support for multiple gizmos per node. This means custom gizmos will no longer override the built-in ones and that multiple gizmos can be used in more complex nodes.
* Added support for handle IDs. When adding handles to a gizmo, an ID can be specified for each one, making it easier to work with gizmos that have a variable number of handles.
* Added support for subgizmos, selectable elements that can be transformed without needing a node of their own. By overriding _subgizmo_intersect_frustum() and/or _subgizmo_intersect_ray() gizmos can define which subgizmos should be selected on a region or click selection. Subgizmo transformations are applied using get/set/commit virtual methods, similar to how handles work.
- JFonS
cfb555a081
- Note: MeshDataResourceEditor is now kind of painful to use, it will be fixed a bit later.
2022-08-11 01:24:29 +02:00
ed5024d3c3
Moved AnimationPlayerEditor::singleton to private, and added getter method for it.
2022-08-10 18:53:15 +02:00
7e451e0f30
Removed the built in SkeletonSpatialGizmoPlugin. (The skeleton editor module used to remove it anyway.)
2022-08-10 14:44:15 +02:00
07fa703645
Improvements to the skeleton's gizmo. It still has issues though. I'll get back to it later.
2022-08-10 14:28:26 +02:00
73fa94274b
Fixed the bone editor's bone tree.
2022-08-10 12:51:20 +02:00
22ce231a4e
Backported from Godot 4: New and improved IK system for Skeleton3D
...
This PR and commit adds a new IK system for 3D with the Skeleton3D node
that adds several new IK solvers, as well as additional changes and functionality
for making bone manipulation in Godot easier.
This work was sponsored by GSoC 2020 and TwistedTwigleg
Full list of changes:
* Adds a SkeletonModification3D resource
* This resource is the base where all IK code is written and executed
* Adds a SkeletonModificationStack3D resource
* This node oversees the execution of the modifications and acts as a bridge of sorts for the modifications to the Skeleton3D node
* Adds SkeletonModification3D resources for LookAt, CCDIK, FABRIK, Jiggle, and TwoBoneIK
* Each modification is in it's own file
* Several changes to Skeletons, listed below:
* Added local_pose_override, which acts just like global_pose_override but keeps bone-child relationships intract
* So if you move a bone using local_pose_override, all of the bones that are children will also be moved. This is different than global_pose_override, which only affects the individual bone
* Internally bones keep track of their children. This removes the need of a processing list, makes it possible to update just a few select bones at a time, and makes it easier to traverse down the bone chain
* Additional functions added for converting from world transform to global poses, global poses to local poses, and all the same changes but backwards (local to global, global to world). This makes it much easier to work with bone transforms without needing to think too much about how to convert them.
* New signal added, bone_pose_changed, that can be used to tell if a specific bone changed its transform. Needed for BoneAttachment3D
* Added functions for getting the forward position of a bone
* BoneAttachment3D node refactored heavily
* BoneAttachment3D node is now completely standalone in its functionality.
* This makes the code easier and less interconnected, as well as allowing them to function properly without being direct children of Skeleton3D nodes
* BoneAttachment3D now can be set either using the index or the bone name.
* BoneAttachment3D nodes can now set the bone transform instead of just following it. This is disabled by default for compatibility
* BoneAttachment3D now shows a warning when not configured correctly
* Added rotate_to_align function in Basis
* Added class reference documentation for all changes
- TwistedTwigleg
5ffed49907
Note: It still needs some work.
2022-08-10 01:01:38 +02:00
cf918406ae
Renamed Skeleton's skeleton_updated signal to pose_updated to make the following backports that much easier.
2022-08-09 22:31:17 +02:00
a478334d4a
Backported from Godot master: Made low level changes to the Skeleton3D class and Skeleton3D inspector. Changes listed below:
...
* Added helper functions to Skeleton3D for converting transforms from bone space to global space, and vice versa.
* Updated the Skeleton3D class reference.
* Changed the icon used for bones in the Skeleton3D inspector to use BoneAttachement3D's icon.
* Changed the Skeleton3D inspector to use EditorPropertyTransform and EditorPropertyVector3 when possible.
* Placed the Transform/Matrix for each bone in a sub-section, so it is visually similar to the Node3D inspector.
- TwistedTwigleg
24905becb2
- Also fixed smaller issues.
2022-08-09 21:57:46 +02:00
3b0c27d89c
Fixed the skeleton editor.
2022-08-09 18:32:39 +02:00
6d293dc7a3
Removed Transform type track from the Animation. This leaves a few things, like the skeleton editor broken, it will be fixed soon.
2022-08-09 17:40:42 +02:00
8fd473f685
Backported: "Remove animation 3D transform track, replace by loc/rot/scale tracks" from Godot4.
...
ec19ed3723
Its a bit broken right now, more patches need to be ported. Also I kept the Transform track for now, and I did not touch the gltf module yet.
2022-08-08 23:49:18 +02:00