lawnjelly
22d90711da
Make acos and asin safe
...
A common bug with using acos and asin is that input outside -1 to 1 range will result in Nan output. This can occur due to floating point error in the input.
The standard solution is to provide safe_acos function with clamped input. For Godot it may make more sense to make the standard functions safe.
2023-06-11 08:41:42 +02:00
37273d29c9
Ported: Multirect - Fix refining regions for all derived Textures
...
Fixes allowing all derived texture types to modify region prior to rendering.
- lawnjelly
43b6205887
2023-06-11 00:47:10 +02:00
8642a7c722
Ported: Fix rendering tiles using nested AtlasTextures
...
- kleonc
12c923cb8b
2023-06-11 00:23:26 +02:00
5118c434e2
Ported from godot4: Add Navigation Debug for GridMap edge connections
...
Adds navigation visual debug for GridMap edge connections that use baked navigationmesh with bake_navigation=true.
- smix8
4f0730d4bc
2023-06-10 23:14:09 +02:00
f058c87868
Backported from godot4: Rework Navigation Avoidance
...
Rework Navigation Avoidance.
- smix8
a6ac305f96
2023-06-10 20:58:49 +02:00
8b18898609
Backported from godot4: Rework const on NavigationServer methods
...
`const` is used on all methods, even when they cause modification of the server. This reworks the methods of the server to only use `const` on method that don't change the state of the server.
- DarkKilauea
a0715b30f9
2023-06-09 22:03:42 +02:00
6384b9624f
Ported from godot4: Make navigation mesh edge connections optional
...
Makes navigation mesh edge connections optional.
- smix8
f986b52b3c
2023-06-09 20:54:05 +02:00
29784d5d5b
Ported from godot4: Enable assigning an owner to navigation regions and links
...
This allows users of the server APIs to get back the nodes that created certain regions and links.
- DarkKilauea
5769b0e8d8
2023-06-09 19:46:44 +02:00
160cb38a50
Ported from godot4: Add support for emitting a signal when entering a NavLink
...
- DarkKilauea
5d8ba2b2d1
2023-06-09 19:08:38 +02:00
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