Commit Graph

1450 Commits

Author SHA1 Message Date
d9512f8d40 Changed the default bind host in WebServerSimple to 0.0.0.0 for convenience. 2023-08-28 17:56:37 +02:00
045ff319ce Make sure donwloads don't just eat up a thread until they are finished even if the kernel can just take all the data in HTTPServerSimple. Also update the timeout timer when there is activity in a socket. 2023-08-28 17:16:19 +02:00
ea5cddc44f The mime types dictionary now uses StringName indexes. Also compare against lowercase extensions. 2023-08-28 13:38:44 +02:00
db14d66556 Added more mime types by default. 2023-08-28 13:14:50 +02:00
d8fb0c9cef De default mime type is application/octet-stream now for files in HTTPServerConnection. 2023-08-28 12:56:18 +02:00
715737abfe Now HTTPServerSimple sends files in non-blocking mode. 2023-08-28 12:54:30 +02:00
151c30a931 Send the user's header when sending the file in HTTPServerConnection. 2023-08-28 09:15:08 +02:00
736106af8a Remove unused variables. 2023-08-27 13:19:58 +02:00
34e2ebe8cc Fix build. 2023-08-27 12:54:44 +02:00
Marcin Nowak
4b76c7e89c Backport implement loading DDS textures at run-time 2023-08-27 11:31:12 +02:00
4bc993c53f Added docs for the new Paint Nodes. 2023-08-26 22:59:37 +02:00
8ed3b41865 Re-extracted class docs. 2023-08-26 22:41:21 +02:00
7aa537869f Added the new paint nodes as shortcuts to PaintProjectToolsPropertyInspector. 2023-08-26 22:39:23 +02:00
57a3b09f24 Added icons for the new paint nodes. 2023-08-26 22:34:55 +02:00
4100e3b6a2 Fix issues with the outline mesh generation in PaintCurve2D. 2023-08-26 22:09:26 +02:00
e7eb415910 Implemented image generation for PaintCurve2D. 2023-08-26 21:55:50 +02:00
cfa067fa56 Remove anti alias settings from PaintCurve2D, as it won't be supported when rendering an image. 2023-08-26 21:23:38 +02:00
014e928e47 Set the outline to white and disable it by default in PaintCurve2D. 2023-08-26 21:21:49 +02:00
fc91416394 Added support for textured outlines in PaintCurve2D. 2023-08-26 21:19:55 +02:00
bc99a23af0 Removed the offset property from PaintCurve2D. 2023-08-26 20:27:33 +02:00
632ee28564 Removed the render segments variable from PaintCurve2D. 2023-08-26 20:21:40 +02:00
961127cfc4 Implemented fill for PaintCurve2D. 2023-08-26 20:20:32 +02:00
6148df90ef PaintCurve2D property setup. 2023-08-26 13:00:25 +02:00
94f412a352 Rework PaintPolygon2D's triangle rasterizer so both color and uv interpolation works properly. 2023-08-26 11:01:03 +02:00
43a2b7d6f3 Implemented a triangle scanline rasterizer for PaintPolygon2D. Still needs some work. 2023-08-25 23:02:01 +02:00
6fb4ece167 PaintPolygon2D modularize polygon preprocessing. 2023-08-25 21:26:46 +02:00
c22d5d8946 Remove bone and weight painting support from PaintPolygon2D. 2023-08-25 20:52:11 +02:00
edf55fde28 Renamed the new paint classes and added them to the build. 2023-08-25 19:16:52 +02:00
3424e44400 Added Path2D and Polygon2D Nodes and their editord to the Paint module. 2023-08-25 18:13:54 +02:00
8bf5c70f50 Now VoxelWorld and TerrainWorld inherits from Spatial instead of Navigation, and Terrain2DWorld inherits from Node2D insteaf of Navigation2D, as there is now a proper NavigationServer. Also this will make Node hieararchies involvig them more versatile. 2023-08-24 18:55:21 +02:00
b4fe2b0d38 Added a way to customize the doctype declaration the html tag and the body tag to WebServerRequest. 2023-07-24 17:37:34 +02:00
f28b6c0c07 Fix crash in WebServerRequest::get_url_root(). 2023-07-22 00:34:08 +02:00
a5365f8ca8 Fix build. 2023-07-13 14:47:04 +02:00
d6018f1818 Build fix. 2023-07-11 12:25:31 +02:00
719de5d54e Only build CSGGizmos when building the editor. 2023-07-11 12:18:08 +02:00
c87b5e57f0 Ported the navigation geometry parsers for the csg module. 2023-07-11 11:11:33 +02:00
d2806793bb Added back the csg module from godot. 2023-07-11 11:00:55 +02:00
b68bbd3bfb Implemented custom response headers for WebServerRequest. 2023-07-08 21:11:56 +02:00
bbbcfacd84 Re-extracted class docs. 2023-07-06 21:17:58 +02:00
4281657cf1 Ported from godot: move autotile fallback helper functions + fix comments and docs
- wareya
a40ecc71e6
2023-06-28 13:47:29 +02:00
cb344d36b8 Ported from godot: make autotiles fall back to the most similar bitmask using heuristics
- wareya
73ad6517e4
2023-06-28 13:36:14 +02:00
6d6f7a0d53 Apparently osx doesn't have the uchar.h header, so define char16_t and char32_t directly. 2023-06-24 00:00:44 +02:00
67975e335b Fixed compile errors. 2023-06-23 18:10:50 +02:00
21ad9c3cbe Fixed compile errors. 2023-06-23 17:51:36 +02:00
a47958471b Fix includes. 2023-06-23 17:11:32 +02:00
b19d80afcb Added back gdnative as a built in module. It was worked on in this repository: https://github.com/Relintai/gdnative . 2023-06-23 16:59:45 +02:00
d3f2e0e4fe Fixed SkeletonModification3DFABRIK. 2023-06-22 09:43:55 +02:00
e56d6fa906 Added code to load old resource properties where applicable, to help converting resources to the new fixed apis. These will be removed after the next release. 2023-06-17 02:20:24 +02:00
b1de21dd58 Renamed get_stat, and set_stat in Entity. It's just a smell c++ side helper method, they aren't bound. Should not require any changes like the rest. 2023-06-16 23:26:49 +02:00
a0b908874d Fix Entity's api's inconsistencies pt 4.
In projects mass replacing the following words will update everything.

gets_is_pet -> pet_gets_is
getc_is_pet -> pet_getc_is

gets_original_entity_controller -> original_entity_controller_gets
sets_original_entity_controller -> original_entity_controller_sets
gets_entity_controller -> entity_controller_gets
sets_entity_controller -> entity_controller_sets
getc_entity_controller -> entity_controller_getc
setc_entity_controller -> entity_controller_setc
gets_ai -> ai_gets
sets_ai -> ai_sets

free_spell_points_gets -> spell_points_gets_free
free_spell_points_sets -> spell_points_sets_free
free_spell_points_getc -> spell_points_getc_free
free_spell_points_setc -> spell_points_setc_free
2023-06-16 18:24:14 +02:00
3fdb671b51 Fix Entity's api's inconsistencies pt 3.
In projects mass replacing the following words will update everything.

gets_free_class_talent_points -> class_talent_points_gets_free
sets_free_class_talent_points -> class_talent_points_sets_free
getc_free_class_talent_points -> class_talent_points_getc_free
setc_free_class_talent_points -> class_talent_points_setc_free
gets_free_character_talent_points -> character_talent_points_gets_free
sets_free_character_talent_points -> character_talent_points_sets_free
getc_free_character_talent_points -> character_talent_points_getc_free
setc_free_character_talent_points -> character_talent_points_setc_free

gets_bag -> bag_gets
sets_bag -> bag_sets
getc_bag -> bag_getc
setc_bag -> bag_setc
2023-06-16 17:53:23 +02:00
05b11e9458 Fix Entity's api's inconsistencies pt 2.
In projects mass replacing the following words will update everything.

sets_ai_state -> ai_state_sets
ai_state_sets_stored -> ai_state_stored_sets
ssend_stat -> stat_ssend
creceive_stat -> stat_creceive
getc_state -> state_getc
setc_state -> state_setc
gets_state -> state_gets
sets_state -> state_sets
adds_state_ref -> state_ref_adds
removes_state_ref -> state_ref_removes
gets_free_spell_points -> free_spell_points_gets
sets_free_spell_points -> free_spell_points_sets
getc_free_spell_points -> free_spell_points_getc
setc_free_spell_points -> free_spell_points_setc
gets_target -> target_gets
sets_target -> target_sets
getc_target -> target_getc
setc_target -> target_setc
2023-06-16 16:57:56 +02:00
2b516b260a Fix Entity's api's inconsistencies pt 1. Also fixed, and bound a property.
In projects mass replacing the following words (in the order given) will update everything.

get_character_skeleton_path -> character_skeleton_path_get
set_character_skeleton_path -> character_skeleton_path_set
get_character_skeleton -> character_skeleton_get
set_character_skeleton -> character_skeleton_set
gets_entity_data -> entity_data_gets
sets_entity_data -> entity_data_sets
getc_entity_data -> entity_data_getc
setc_entity_data -> entity_data_setc
entity_data_gets_id -> entity_data_id_gets
entity_data_sets_id -> entity_data_id_sets
entity_data_getc_id -> entity_data_id_getc
entity_data_setc_id -> entity_data_id_setc
entity_data_gets_path -> entity_data_path_gets
entity_data_sets_path -> entity_data_sets_path
gets_ai_state -> ai_state_gets
ai_state_gets_stored -> ai_state_stored_gets
2023-06-16 16:41:34 +02:00
1a5cba555c Backported godot4 PR: Support threads in the script debugger
* This implementation adds threads on the side of the client (script debugger).
* Some functions of the debugger are optimized.
* The profile is also now thread safe using atomics.
* The editor can switch between multiple threads when debugging.
This PR adds threaded support for the script language debugger. Every thread has its own thread local data and it will connect to the debugger using multiple thread IDs.
This means that, now, the editor can receive multiple threads entering debug mode at the same time.
- reduz
PR 76582
Will be available here after it's merged:
6b176671c4
2023-06-14 14:43:55 +02:00
3346381a95 Skeleton doc small fixes. 2023-06-13 18:07:33 +02:00
24df83cd32 Added more newly extracted class docs. 2023-06-13 17:55:03 +02:00
8d679355df Re-extracted class docs pt3. 2023-06-13 17:34:41 +02:00
a7f1f3356c Re-extracted class docs pt2. 2023-06-13 16:51:37 +02:00
de1763d40d Renamed neighbor_dist properties / getters / setters for the navigation server. 2023-06-12 08:37:57 +02:00
4cc77216d7 Fix codestyle in the InputMapEditor. 2023-06-11 16:12:43 +02:00
3afa1142b9 Merged the functionality of BSInputEventKey to InputEventKey. This new setting can make input event keys act as if they are shortcut matched. 2023-06-11 16:06:09 +02:00
de059c33bc Use the new scaled grab radius in MDIGizmo. 2023-06-11 13:21:45 +02:00
MJacred
3227a23031 Warn against using non-uniform scale for 3D physics (in class reference only)
partial backport of #67847
fixes #56824
2023-06-11 09:04:25 +02:00
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