Commit Graph

1428 Commits

Author SHA1 Message Date
e07fd6da59 Ported from godot4: Prevent unnecessary navigation map synchronizations
Prevents unnecessary navigation map synchronizations triggered by redundant calls to setters of e.g. region, link or map properties.
- smix8
7e1a261cc6
2023-06-09 16:43:14 +02:00
19fac49904 Turn PoolVectors in NavigationPathQueryResults into Vectors. 2023-06-09 16:27:24 +02:00
12b95cdc1f Ported from godot4: Add navigation layer bitmask helper functions
Adds helper functions to work with the navigation layer bitmask.
- smix8
55923ade68
2023-06-09 15:44:12 +02:00
0bb4e0a9c2 Fix non tools build. 2023-06-09 11:39:52 +02:00
23daaf95a6 Ported from godot4: Fix 2D navigation debug visuals ignoring half the ProjectSettings
Fixes that NavigationRegion2D and TileMap debug visuals ignored more or less half the ProjectSetting. E.g. random color could not be disabled, edges did not display.
2b19c70664
2023-06-09 11:29:33 +02:00
c11500d480 Ported from godot4: Rename Navigation uses of 'location' to 'position'
Contrary to the entire rest of the engine NavigationAgent's and NavigationLinks decided to deal with locations instead of positions.
- smix8
bf1571979c
2023-06-09 10:28:31 +02:00
b940854ca9 Ported from godot4: Add NavigationServer Performance Monitor
Adds Performance Monitor for NavigationServer3D.
- smix8
9802914f97
2023-06-09 10:17:43 +02:00
038329e7d0 Backported form godot4: Fix NavigationServer internals still using float instead of real_t
Fixes that some NavigationServer internals still used float instead of real_t in some parts.
- smix8
217a27014b
2023-06-09 08:53:00 +02:00
0438c3cc3f Backported from godot4: Added node for Navigation links .
- DarkKilauea
3dd59013f4
2023-06-08 20:46:09 +02:00
f6e65112d7 Backported from godot4: Add NavigationPathQuery
Adds NavigationPathQueryParameters objects that can be used with NavigationServer.query_path() to query a customized navigation path.
- smix8
63dcb9aa80
2023-06-08 18:23:48 +02:00
b8d9ffec6d Moved TileMap's Geometry Parser to TileMap's module. 2023-06-07 15:44:25 +02:00
c8d05fe667 Remove module dependency. 2023-06-07 15:44:00 +02:00
6f88656bc7 Removed the Clipper2 module, and also the remaining c++17 defines. 2023-06-07 15:33:59 +02:00
443482ee47 Make MeshInstance2DNavigationGeometryParser2D use the Geometry singleton instead of the clipper2 module. 2023-06-07 15:32:30 +02:00
2e1e153bc3 Make MultiMeshInstance2DNavigationGeometryParser2D use the Geometry singleton. And by proxy clipper 1. 2023-06-07 15:25:32 +02:00
d9a03e7eab Remove temp code. 2023-06-07 09:21:42 +02:00
6eb37ff901 Ported clipper2 usage to clipper1 in PandemoniumNavigationMeshGenerator. Also moved them to the Geometry singleton. 2023-06-07 09:20:36 +02:00
91f365b183 Added CapsuleShape2D support for StaticBody2DNavigationGeometryParser2D. 2023-06-07 00:36:53 +02:00
683feba2e1 Fix RectangleShape2D size calculation in StaticBody2DNavigationGeometryParser2D. 2023-06-07 00:27:27 +02:00
99207066c5 Disable offsetting in PandemoniumNavigationMeshGenerator for 2d, as it seems to be bugged. 2023-06-07 00:24:59 +02:00
f8ae128f72 Fix UndoRedo handling in NavigationPolygonEditor. 2023-06-06 23:48:51 +02:00
9386fa1639 Fix typo. 2023-06-06 23:25:03 +02:00
919a1ddd14 Use the new temporary clipper2 module for the rest of the code that needs clipper2. 2023-06-06 22:59:09 +02:00
a5c03b77c1 Make the NavigationMesh generator and the TileMapNavigationGeometryParser use the new Clipper2 module. (Note that the clipper2 module is only temporary, it only exists to help with backporting the code.) 2023-06-06 19:02:33 +02:00
a65ad4d279 Added note. 2023-06-06 19:00:05 +02:00
13fa54d9cf Also added Polypartition to the new clipper2 module from godot4. (Temporarily) 2023-06-06 18:07:49 +02:00
1d8be4224e Added Clipper2 as a module from the navigation mesh generator rework pr. 2023-06-06 18:03:03 +02:00
7ce5f939a9 Ported the docs from the navigation mesh generator rework pr. 2023-06-06 16:52:04 +02:00
32e0e80ac8 Ported the tweaks for the TIleSetEditor. 2023-06-06 16:19:46 +02:00
2481e1ac65 Fix inconsistent override. 2023-06-06 15:58:40 +02:00
82316363eb Removed the old navigation mesh generator and it's editor plugin. 2023-06-06 13:59:33 +02:00
f04fe96da7 Ported the geometry parser for GridMap from the navigation mesh generator pr. 2023-06-06 13:52:16 +02:00
890d6f1b28 Removed region_bake_navmesh from the NavigationServer. 2023-06-06 09:36:19 +02:00
f1f5849aff Added missing includes for windows. 2023-06-06 09:35:20 +02:00
b96e013bed Updated navigation geometry parsers, and added them to the build. 2023-06-06 07:55:19 +02:00
3612f2db50 Use GLOBAL_DEF instead of GLOBAL_GET in PandemoniumNavigationMeshGenerator. 2023-06-06 07:04:33 +02:00
62cecc5bb3 Fix int sign comparison warning. 2023-06-06 06:57:47 +02:00
bfcf461cb9 Fix unused variable warning. 2023-06-05 22:10:39 +02:00
03944c456c Cleaned up and enabled the new navigation mesh generator editor plugins. 2023-06-05 21:58:00 +02:00
2296bf693a Fix and finally enable PandemoniumNavigationMeshGenerator. 2023-06-05 20:42:35 +02:00
25078b1437 Ported from godot4: Remove / Replace old Navigation Debug Visualization
- removes / replaces leftovers from old navigation debug code
- cleanes SceneTree and ProjectSettings from old navigation debug
- smix8
d7f75fab60
2023-06-05 18:56:41 +02:00
654cfb81b7 Renamed NavigationRegion2D back to NavigationPolygonInstance, as I think it fits the engine better. 2023-06-05 18:09:53 +02:00
1994285031 Alos remove _execute method bind from the NavigationMeshGenerator jobs. 2023-06-05 14:50:39 +02:00
b7892d6baf Backported from godot4: Implement NavigationMesh bake area.
Adds two new properties to NavigationMesh resources to restrict the navmesh baking to an area enclosed by an AABB with volume.
- smix8
0c4d99f4fd
2023-06-05 14:24:42 +02:00
4873a3429d Don't bind _execute() method in ThreadPoolJob derived classes, as it's not needed anymore. 2023-06-05 14:15:49 +02:00
6589d075bb Ported the improvements to the NavigationPolygon from the aforementioned pull request. 2023-06-05 14:13:02 +02:00
b4cc1c3096 Added the GeometryParsers from the NavigationMeshGenerator pr to a new module. 2023-06-05 12:43:27 +02:00
645045f97c Finished reworking PandemoniumNavigationMeshGenerator's api. 2023-06-05 08:58:48 +02:00
d35db3a25a More cleanups. 2023-06-05 00:20:48 +02:00
57153f4a33 Make overrides consistent again. 2023-06-04 13:11:04 +02:00
45c0147f66 Notes and small cleanups. 2023-06-04 13:02:02 +02:00
3ba762a9a4 PandemoniumNavigationMeshGenerator rework pt1. 2023-06-04 10:14:20 +02:00
e55c561075 Also added the navigation mesh generator module. It's disabled for now, as it needs some reworks. 2023-06-03 21:18:18 +02:00
0a3d1d6cf5 Added in NavigationMeshGeneratorDummy and set up initialization. 2023-06-03 20:00:42 +02:00
2114b2239b Split NavigationPolygon and NavigationPolygonInstance into 2 files. Also renamedNavigationPolygonInstance to NavigationRegion2D. 2023-06-03 16:54:48 +02:00
79538b4392 Fix more binding inconsistencies. 2023-06-02 12:21:16 +02:00
e3e9450882 Fix property binding hints. 2023-06-02 12:12:04 +02:00
de9da3151f Fix property types. Auras have been merged into Spells a while ago. 2023-06-02 12:10:20 +02:00
d8bd83dbd5 Fix the type of FastnoiseNoiseParams::get_fractal_octaves(). 2023-06-01 17:15:27 +02:00
97f5037c8b Renamed the object() method in HTMLBuilder as it can cause issues with bind generators. 2023-06-01 16:51:08 +02:00
d093365b00 Fix some property names being the same as getters / setters. 2023-06-01 15:42:32 +02:00
dbc5b1df35 Fixed disrepancies between a few getter and setters. 2023-06-01 13:06:24 +02:00
61ccfb443f Bind missing enum values in Terrain2DJob. 2023-05-31 22:52:52 +02:00
868230fe57 Bind enum values. 2023-05-31 22:51:03 +02:00
44070461e7 Move the enums from the top of spell.h into the Spell class. 2023-05-31 22:49:36 +02:00
9c28249819 Bind enum constants. 2023-05-31 22:43:57 +02:00
a1402fd46a Bind enum constants. 2023-05-31 22:42:59 +02:00
69182c8089 Fix duplicate parameter name in binding. 2023-05-31 22:36:02 +02:00
b7e273b226 Bind missing enum constants. 2023-05-31 22:33:20 +02:00
8f9274a589 Fix virtual method names in Entity. 2023-05-31 22:31:46 +02:00
c65f9cb85a Fix duplicate property param name. 2023-05-31 22:24:18 +02:00
5acb19630d Fix the order of some default arguments in bindings. 2023-05-31 22:14:12 +02:00
807d5f18a2 Bind enum constants in Prop2DInstanceJob. 2023-05-31 17:33:35 +02:00
HolonProduction
4410d81189 Suggest class_name in 3.x autocompletion. 2023-05-01 12:30:43 +02:00
922a519a52 Also fix the tangent generation button in the MeshDataResource editor. 2023-04-21 11:10:22 +02:00
ab2f492775 Fix visual indicator toggles in the MeshDataResource editor. 2023-04-21 11:08:28 +02:00
8253cf6c56 Reworked undo redo handling in the MeshDataResource Editor. Now it will properly mark the actual resource dirty in all cases. Also fixed other small inconsistencies, and issues. 2023-04-21 11:03:24 +02:00
1263101396 Ported: Batching - Add MultiRect command
Large groups of similar rects can be processed more efficiently using the MultiRect command. Processing common to the group can be done as a one off, instead of per rect.

Adds the new API to VisualServerCanvas, and uses the new functionality from Font, BitmapFont, DynamicFont and TileMap, via the VisualServerCanvasHelper class.

- lawnjelly

910ddd13c4
2023-04-20 23:09:37 +02:00
71c00ae64f Fix string parameter parsing in multipart forms, also make multipart form content fields case independent. 2023-04-16 23:30:13 +02:00
c7639cad53 Fix build on windows. 2023-04-16 19:38:13 +02:00
1c505fe527 Make sure the dummy navigation server is used automatically if the normal is disabled. 2023-04-16 19:10:30 +02:00
88d12ace16 Added a new dummy navigation server module. 2023-04-16 18:57:43 +02:00
86bdecbfe9 Now more than one Naviugation2D servers can be registered. 2023-04-16 18:19:57 +02:00
f6c1c1dc8d Move NavigationServer2d's forwarding logic to the navigation module as a new derived class. 2023-04-16 18:11:15 +02:00
7068f1834e Now more than one Navigation Server can be registered. 2023-04-16 17:42:34 +02:00
276e4db381 Cleanups to Skeleton's bindings. 2023-04-15 13:58:24 +02:00
727826efba Make sure Skeletons set up their initial pose. 2023-04-15 13:52:21 +02:00
986565b0b4 Fix error spam in the skeleton editor. 2023-04-15 13:51:44 +02:00
32e9927ac8 Ported from godot 4: Remove NOTIFICATION_MOVED_IN_PARENT
* This notification makes node children management very inefficient.
* Replaced by a NOTIFICATION_CHILDREN_CHANGED (and children_changed signal).
* Changed Canvas code (and similar) to use the above signal, to perform more efficiently.
This PR breaks compatibility (although this notification was very rarely used, even within the engine), but provides an alternate way to do the same.
It is required for the changes in #75627 to be entirely effective.
- reduz
Note that I removed NOTIFICATION_MOVED_IN_PARENT, as keeping it, but making it just not work is worse in my opinion.
104392ef4e
2023-04-10 15:55:34 +02:00
smix8
6eb9ac3085 Fix GridMap free navigation RID error spam
Fixes GridMap free navigation RID error spam.
2023-04-10 09:49:50 +02:00
a76df86ef3 Parse and process http headers in a case insensitive manner in HTTPParser. 2023-03-22 21:31:57 +01:00
53ddc7796f Quick fix for accessing files in the pck file for FileCaches. 2023-03-22 14:30:07 +01:00
b92d4f19ca Refresh the file cache in WebRoot on NOTIFICATION_READY. 2023-03-22 14:29:09 +01:00
517a5b9044 Added more mimetypes to the HTTPServerSimple. 2023-03-22 14:00:18 +01:00
1cb112f64c Properly handle non-ascii characters in uris in HTTPParser. 2023-03-22 13:59:58 +01:00
eb33d812d0 Added missing helper method to WebServerRequest. 2023-03-22 13:22:32 +01:00
3fccbc6d23 Now post and get parameters can be set / changed in requests from scripts aswell. 2023-03-22 13:20:25 +01:00
23d01a29ce Use the size struct member when parsing markdown in MarkdownRenderer. 2023-03-22 01:43:45 +01:00
0ed384eb1c Fix handling utf-8 in the MarkdownRenderer. 2023-03-21 21:22:36 +01:00
8191319e2f Improved PagedArticleWebPage's api. 2023-03-21 21:07:00 +01:00
5e17f2041d Use the new helper method in HTTPServerConnection::send(). 2023-03-20 22:34:43 +01:00
c6ef898c46 Fix Content-Length calculation in HTTPServerConnection::send when using non-ascii utf-8 characters. 2023-03-20 21:50:40 +01:00
2591231bbe Fixed more cases of using String.size() instead of String.length(). 2023-03-20 21:24:51 +01:00
a155e44491 Implement max request size limit for HTTPServerSimple. 2023-03-18 11:52:25 +01:00
09138d762c Ported: Use hash table for GDScript parsing
GDScript now uses hash table for lookup of type lists / functions / keywords, instead of linear String comparisons.
- lawnjelly
19f2006ec0
2023-03-18 09:44:01 +01:00
3d1abe86fb Ported: GDScriptParser - don't use index operator on linked list
Index operators are super slow with linked lists. This came up in profiling the parsing, iterating sequentially using iterator is much faster.
- lawnjelly
ef914dac31
2023-03-18 09:29:08 +01:00
DashCell
2a1f4a695d TileSet: Fix resizing collision shape when vertex is outside the tilesheet
Fixes #34970.
2023-03-12 14:15:51 +01:00
a29534ed66 Fixed the tooltip of the Add Paint Canvas button of the PaintProjectToolsPropertyInspector. 2023-03-04 21:39:09 +01:00
c54ad5594b Work on fixing histogram generation. 2023-03-04 19:40:30 +01:00
a3da8b16ba Size the Tones Editor properly. 2023-03-04 15:18:35 +01:00
fc969f4331 Now the MMTones Editor actually works. 2023-03-04 15:11:55 +01:00
51b63cae71 Tones Node port from MateriaMaker (Part 2). 2023-03-03 18:02:06 +01:00
c232aa4154 Removed print statements. 2023-03-03 15:29:58 +01:00
6876c87050 Tones Node port from MaterialMaker (Part 1). 2023-03-03 15:29:03 +01:00
0f02468984 Ported the TonesMap from MaterialMaker. 2023-03-02 09:03:25 +01:00
24facf6230 Reworked MMOutputImage. Now it uses a button, and also it works as it should. 2023-03-01 23:07:53 +01:00
8cf478567d Added buttons slots to MMGraphNodes. 2023-03-01 23:06:01 +01:00
aa5d0d9acc Fixed MMSdf3dOpExtrusion's name and added it to the build. 2023-03-01 21:32:47 +01:00
857a0265d4 Fix unused return value. 2023-03-01 01:01:42 +01:00
091bb6391b Ported the Warp Node from MaterialMaker. 2023-03-01 00:54:14 +01:00
a2006ca4af Make sure MMBlurSlope uses the sigma paramater the intended way. 2023-02-28 22:36:43 +01:00
e31f121035 Small tweaks to MMTonesStep. 2023-02-28 22:36:08 +01:00
e2fe613e14 Ported the TonesStep Node from MaterialMaker. 2023-02-28 21:27:37 +01:00
1f7c2ef1fc Ported SlopeBlur from MaterialMaker. 2023-02-28 19:00:22 +01:00
81c9a7f940 Don't serialize editor only omni lights in PropDataLight. 2023-02-25 12:13:07 +01:00
ee8014d15e Removed comment. 2023-02-25 12:09:23 +01:00
47525f401b Added noise offset support to TiledWalls. 2023-02-25 12:08:49 +01:00
0cbe3b29f6 Make body_instance in Entity virtual. 2023-02-24 19:20:51 +01:00
79995d2868 Fix typo. 2023-02-24 19:10:08 +01:00
806a083cc9 Proper bind parameters for body_instance. 2023-02-24 19:09:44 +01:00
b6e6d3226f Make body related methods in entity have body as their prefix. 2023-02-24 19:09:00 +01:00
2e960fd00e Add braces around one liner if-s in Entity. 2023-02-24 18:58:46 +01:00
59a4e14b22 Ported: Allow unicode identifier in GDScript syntax highlighter
- timothyqiu
5a283bdbcd
2023-02-21 13:32:12 +01:00
d5cbb5ce1d Ported: Improve GDScript Editor and Improve latency
Improvements:
- GDScript Highlighter is faster by 25% as keys are smaller (hashes instead of strings)
- Removes message queue from _apply_settings_change to allow resize to work correctly
- Some performance fixes are pending still
Note: this resolves the code editor behaving badly when resizing in debug builds
- RevoluPowered, akien-mga
1881b3adc5
2023-02-21 13:24:53 +01:00
c3f01e0b3d Ported: Highlight control flow keywords with a different color. This makes them easier to distinguish from other keywords.
- Calinou
e905e8f145
2023-02-21 13:20:25 +01:00
8eca52fc76 Ported: Fix highlight color for class attributes that are also keywords.
- lucasvanmol
749d0c708c
2023-02-21 13:14:09 +01:00
e42c604bc3 Ported: Switch from recursion to iterative for backfilling colour regions.
- Paulb23
ee4a1c99a7
2023-02-21 13:11:37 +01:00
a79792ee67 Ported: Fix color region end key seach and start key order.
- Paulb23
6cdcdbc242
2023-02-21 13:08:49 +01:00
6ea9b581d7 Ported: Fix colour region continuation over blank lines, issue 41120
- Paulb23
5cf2cf8646
2023-02-21 12:53:41 +01:00
c356806ebf Ported: Extract Syntax highlighting from TextEdit and add EditorSyntaxHighlighter
- Extacted all syntax highlighting code from text edit
- Removed enable syntax highlighting from text edit
- Added line_edited_from signal to text_edit
- Renamed get/set_syntax_highlighting to get/set_syntax_highlighter
- Added EditorSyntaxHighligher
- Paulb23
bc4cee4458
2023-02-21 01:30:59 +01:00
0edf8fe956 Ported: Convert syntax highlighters into a resource
- Paulb23
2f1080be9b
2023-02-20 14:51:10 +01:00
ddcf36addd Fixed multi threading + https in HTTPServerSimple. 2023-02-19 16:04:08 +01:00
e5f31bde7d Implement sending keep alive connection type if a connection has more than one request for HTTPServerSimple. Also more togglable debugging. 2023-02-19 15:11:29 +01:00
0e651dd4fd Pre-create the required folders for the self signed cert files automatically. 2023-02-19 11:53:14 +01:00
ab9ae594c2 Set a better self signed cert path for the HTTPServerSimple. 2023-02-19 11:42:37 +01:00
4551061c17 Set _server_quit in WebServerSimple the way it was intended to be used. 2023-02-19 11:41:43 +01:00
4ededb6a34 Added optional protocol error logging to HTTPParser. Also remove unnecessary error. 2023-02-19 11:20:13 +01:00
8b4fc877a0 Added protocol error handling to the http server simple. 2023-02-19 10:34:39 +01:00
6026725f3b Renamed ScriptEditor to EditorScriptEditor. 2023-02-18 16:52:26 +01:00
990f8aaecd Prefix filenames in the editor_script_editor module with editor_. 2023-02-18 16:22:59 +01:00