Commit Graph

772 Commits

Author SHA1 Message Date
smix8
62e781b914 Fix MultiMeshInstance crash in navmesh baking when MultiMesh Resource is empty
Fix MultiMeshInstance crash in navmesh baking when MultiMesh Resource is empty

(cherry picked from commit caceceab0819dca9da4ca3c268bc07ded933e332)
2022-07-28 11:52:25 +02:00
f22e67a07c Fix typo. 2022-07-28 11:01:41 +02:00
1ffafee7b1 Ported: Fix TileSetEditor wrong NavigationPolygon format
TileSets created and stored NavigationPolyons in a format that did not work for Navigation.
- smix8
1bac95b166
2022-07-28 10:58:21 +02:00
60b854d657 Ported: Make Navigation Agents and Obstacles respect parent process mode
Temporarily removes agent from navigation map when parent node cannot process due to SceneTree pause and process_mode property. Normal process_mode does not work as other agents would still avoid the paused agents because they were still active on the navigation map and the rvo world. Also fixes potential crash when region_get_map or agent_get_map is called while no map is set.
- smix8
88acb5b798
2022-07-27 20:07:55 +02:00
9f1607fcd8 Ported: rvo2: Sync with upstream commit bfc0486
snape/RVO2-3D@bfc0486
- akien-mga
52da1bcdca
2022-07-27 19:55:02 +02:00
bruvzg
ecb3ea9021 FreeType: Update to version 2.12.1
(cherry picked from commit 93fba7ead33b45a6f9904ab6a69ada72e8564230)
2022-07-27 19:38:59 +02:00
9d0982d0e2 Fix an another unused variable. 2022-07-27 19:19:50 +02:00
32037fc73c Fix compile. 2022-07-27 19:13:29 +02:00
3b49fd6c70 Fix an another unused variable found by emscripten. 2022-07-27 19:09:59 +02:00
smix8
63a51b546e Clamp NavigationMesh sample_distance above zero
While default ReCast library has support for 0.0 'sample_distance' the Godot implementation does not an crashes.
Previously Godot would set all sample_distance values below 0.9 to 0 which causes the crashes.

This limits the sample_distance range selection to 0.1 - 16.0 and also clamps sample_distance that are below 0.1 before ReCast receives them.

(cherry picked from commit e33fa9d8331f38c8c404b9d6ea286eacb503d3bb)
2022-07-27 19:05:26 +02:00
8ef56d4752 Fix unused variable found by emscripten in sqlite3.c. 2022-07-27 19:04:04 +02:00
08c0756260 Ported: Add NavigationServer2D/3D API functions to find missing RID info
Utility functions for NavigationServer2D/3D to find missing RID information when working with Server API directly. e.g. from map to regions and agents, from agent or region to map, from region to map and agents and so on ....
Requirement to work with NavigationServer API exklusive without SceneTree nodes and when juggling agents and regions between multiple navigation maps.
- smix8
3977eb9107
2022-07-27 18:58:09 +02:00
smix8
9c8238ba72 Add Warning to NavigationMesh bake when source geometry is suspiciously big
Adds Warning when users try to bake a NavigationMesh with suspiciously big source geometry and small cellsizes as this baking process will likely fail or result in a NavigationMesh that will create serious pathfinding performance issues.

(cherry picked from commit 79511af7c94b447409d10194239069facef9c4a0)
2022-07-27 18:42:48 +02:00
24eccc4281 Ported: Fix warnings found by Emscripten 3.1.10
Fix `-Wunused-but-set-variable`, `-Wunqualified-std-cast-call`, and
`-Wliteral-range` warnings.
- akien-mga
5e693b6d84
2022-07-27 18:39:35 +02:00
Haoyu Qiu
4e256ef76f Improve documentation of rand_range 2022-07-27 14:38:52 +02:00
trollodel
a50758b8f6 Use CollisionObject3D API when baking the navmesh with static colliders, instead of collecting CollisionShape3D nodes
(cherry picked from commit 72c37c4bcd50e34b81c3dc5a2c5b8112014cc525)
2022-07-27 14:33:31 +02:00
Haoyu Qiu
4fe20cbfb1 Document lerp_angle behavior when angles are approximately PI apart
(cherry picked from commit 492903a0b221ac50c5db0426d22db2457f946b58)
2022-07-27 14:29:11 +02:00
2c4a3f686b ported: Expose tile_texture property - KoBeWi
0b5289cadf
2022-07-27 14:19:41 +02:00
a9df89703c Ported: TileMap: Use const ref for all Vector2 parameters - akien-mga
2834332591
2022-07-27 13:54:29 +02:00
04e45474bb Also apply the previous fix to cscript. 2022-07-27 13:38:43 +02:00
Haoyu Qiu
cdeba9e5d1 Fix incorrect usage for some export variables 2022-07-27 13:37:40 +02:00
Hugo Locurcio
fc041bf980 Document that glTF classes are only usable in editor builds
Run-time glTF saving/loading is only available in Godot 4.0,
not Godot 3.x.
2022-07-26 15:10:11 +02:00
Pawel Lampe
cf84a36352 Fix crash in GodotNavigationServer::map_get_path, fixes #60413 2022-07-26 15:09:40 +02:00
kleonc
4c27d02012 NavMap::get_path Fix not resetting least_cost_id 2022-07-26 12:56:54 +02:00
Oğuzhan Eroğlu
95e6e47f88 Added set_extra_headers() to WebSocketServer
(cherry picked from commit fd4341fba46b8e78eea2e7efeae74038f7f55c4b)
2022-07-26 12:43:31 +02:00
8275f6b161 Ported: Add missing argument names in bindings - akien-mga
21c3048397
2022-07-25 23:51:34 +02:00
35eabcb846 Ported: Fix navmesh baking, fixes #57148
- improved mesh data calculation from standalone static colliders so that no
  VisualServer calls are performed - and thus no VS mutexes need to
  be locked in case of on-thread baking
- improved the same for GridMap's static colliders
- Scony
3035b9c44c
2022-07-25 22:57:51 +02:00
7747a3e85a Ported: Free region RID when cleaning NavPoly in TileMap - timothyqiu
5c039ccc72
2022-07-25 22:34:05 +02:00
e8f8904e56 Ported:
Use 3001 instead of 1001 when destroying a websocket. -  jasonwinterpixel
1f080e203d
2022-07-25 19:00:33 +02:00
a4e1126d45 Re-format file. 2022-07-25 18:59:57 +02:00
Pawel Lampe
0909a9adb5 Fix get_simple_path behavior in 2D, fixes #56852 2022-07-25 18:02:26 +02:00
09acb9bfeb Added an api to the web server simple to add / remove mime types from scripts. 2022-07-24 18:09:45 +02:00
e0b2f048c2 Cleaned up and added UserManagerDB to the build. 2022-07-24 16:26:23 +02:00
13f0e82b6c Cleanups to the web server. 2022-07-24 15:33:32 +02:00
a1a94ab94e Went back from using an RWLock to a Mutex in WebServerSimple. 2022-07-24 15:15:08 +02:00
9106b5685e Removed multiple poll thread support related things from the web server, that was a bad idea. Also implemented single threaded mode. 2022-07-24 15:10:42 +02:00
731dbb427c Replace the mutex in the web server to an rwlock. 2022-07-24 14:27:58 +02:00
275c11cc6b Don't let changing properties if the server is running. 2022-07-24 14:18:04 +02:00
d55b66b7ff Only start the server thread when it's actually needed. 2022-07-24 14:15:00 +02:00
057d937d8f Added more binds to WebServerSimple. 2022-07-24 13:53:55 +02:00
3956c88859 Added threading settings binds to the SimpleWebServer. 2022-07-24 13:40:58 +02:00
aa8c6b35d1 IMplemented threading for the simple web server. 2022-07-24 13:19:21 +02:00
7d3486e5ee Now the simple server is using a List in a thread safe way. 2022-07-24 11:53:16 +02:00
492f29163c Refactored the SimpleHTTPServer to be able to multi thread it a bit later. 2022-07-24 02:40:39 +02:00
4baf5ed2da Remove unused method. 2022-07-24 02:00:53 +02:00
2db29ae49f Add Entity like to_dict and from_dict support to User, alongside to_json and from_json. 2022-07-24 01:42:55 +02:00
b479b6a1ab Added a new UserModule class. It can be used to easily add data to Users. 2022-07-24 01:08:56 +02:00
ae36b35436 Reimplemented UserLogoutWebPage. 2022-07-23 22:37:21 +02:00
299f714ed9 Fix memory allocation using new int HTTPSessionManager. Also small cleanups. 2022-07-23 22:37:11 +02:00
97dd727ee1 Reimplemented UserSettingsWebPage. 2022-07-23 22:22:08 +02:00
a5a327ad35 Reimplemented UserRegisterWebPage. 2022-07-23 22:08:07 +02:00
abb875f8a5 Use length() instead of size() for strings in the FormValidators. 2022-07-23 22:07:49 +02:00
c6191e1c26 Reimplemented UserLoginWebPage. 2022-07-23 20:33:10 +02:00
d0c99d0ef6 Set the user's id after creation. 2022-07-23 20:32:42 +02:00
40df361d7c Implemented UserWebPage. 2022-07-23 19:29:51 +02:00
41d32e3b35 Reimplemented migrations support. 2022-07-23 14:46:05 +02:00
eb4875de4c Added table version getters and setters to the DatabaseConnection. 2022-07-23 14:45:34 +02:00
0cac8406ec Added binds + methods to the DatabaseManager, and set it up as a singleton. 2022-07-23 13:37:24 +02:00
0c1d58f921 Cleanups to the todos, and some notes. 2022-07-23 12:25:11 +02:00
05fd41c5ac Added back md parsing support for the rest of the WebNodes that used to support it. 2022-07-23 02:44:55 +02:00
0f39a8f6ac Added back md parsing support to StaticWebPage. 2022-07-23 02:34:41 +02:00
853480a492 Added a new AliasWebPage WebNode. 2022-07-23 02:06:11 +02:00
db70692e73 Also renamed the classes themselves. 2022-07-23 01:35:22 +02:00
2cae30fcdf Renamed some webnode files. I want to make their names a bit more standardized. 2022-07-23 01:20:43 +02:00
ed92564261 Added a new RedirectWebPage WebNode. 2022-07-23 00:54:26 +02:00
16fda02f48 Added the new user web page classes to the build. They still need binds, so they won't do anything at the moment. 2022-07-22 14:52:55 +02:00
3028c08e9e Cleaned up the user web nodes. 2022-07-22 14:41:51 +02:00
b6253d1a68 Duplicated UserController into different files, to break it up. 2022-07-22 13:40:22 +02:00
a94e95ce06 Cleaned up UserController. 2022-07-22 12:09:00 +02:00
cf3c24381d Improve the binds in WebServer. 2022-07-22 12:05:05 +02:00
caa93f89b0 Uncommented / fixed the methods that take WebServerRequest in HTMLBuilder and it's bind class. 2022-07-22 11:45:12 +02:00
0eba7b461f Created UserManagerDB from UserController code. It's not yet in the build. 2022-07-22 10:16:49 +02:00
8236c509c8 Added user_id property to User, and also did some improvements to it's api. 2022-07-22 10:00:07 +02:00
fa768d2474 Remove the middleware from the user controller file. 2022-07-22 09:47:24 +02:00
30e3fd8faf Fix typo. 2022-07-21 23:58:34 +02:00
cc42e1b526 Also renamed it's file. 2022-07-21 23:58:21 +02:00
7f58857334 Cleaned up and added the UserSessionSetup Middleware to the build. 2022-07-21 23:56:29 +02:00
a791c8f4b8 HTTPSession's get_int now has a default parameter. 2022-07-21 23:55:33 +02:00
129a2a830d Moved a few folder in the users module. 2022-07-21 23:32:44 +02:00
31ee15432b Notes. 2022-07-21 23:31:37 +02:00
5d260fd68d Cleanups to WebServerRequest. 2022-07-21 23:25:04 +02:00
9232d5b5bb Renamed the user middleware class. 2022-07-21 23:02:36 +02:00
10e86e1f16 Moved the UserController file. 2022-07-21 23:00:28 +02:00
c227dad81c Add the web module to the users module as a dependency. (It's only going to be optional though.) 2022-07-21 22:58:12 +02:00
ed9aa722a3 Actually bind get_server(), and get_web_root() in WebServerRequest. 2022-07-21 22:37:55 +02:00
1f62ad89ff Fix get_server() in WebNode. 2022-07-21 22:31:48 +02:00
f7cc2df683 Fix UserManagerFile. It's not that good for now, but I need a prototype UserManager implementation that can easily create save and load users. 2022-07-21 20:39:15 +02:00
d025937074 Make UserManagers register themselves. 2022-07-21 19:48:37 +02:00
a349dbd762 Fix potential crash. 2022-07-21 19:48:08 +02:00
7f03c8b429 Added a new UserManagerFile. 2022-07-21 19:33:04 +02:00
589844c827 Added an RWLock to User. 2022-07-21 18:19:40 +02:00
0ef9dc8fcf Added a few bindings to UserManagerStatic to help with creating users form the editor. 2022-07-21 18:08:52 +02:00
7989cfabc4 Removed the user parameter from the User's hash methods. 2022-07-21 17:43:35 +02:00
be68b69b65 Created a new UserManagerStatic class. 2022-07-21 17:31:14 +02:00
0854b8999d Now the SimpleWebServer will properly set the Request's http method. 2022-07-21 16:06:06 +02:00
e52a188794 Implement parsing cookies in the requests for the SimpleWebServer. 2022-07-21 15:51:44 +02:00
e7e95a677a API improvements for WebServerCookie, also now it should be able to properly generate cookie response header strings. 2022-07-21 15:36:04 +02:00
ca08fe3de2 Reworked the Web Server's Cookie API. 2022-07-21 14:05:55 +02:00
9d07a6b271 Implement handling http status codes for responses. 2022-07-21 12:26:39 +02:00
7fa4125463 Small temporary typo fix. 2022-07-21 00:54:51 +02:00