77 Commits

Author SHA1 Message Date
Kawe Mazidjatari
b52a5cce48 NavMesh: rename editor program to 'recast'
Renamed to original tool name
2024-06-01 11:36:23 +02:00
Kawe Mazidjatari
a17a2c9feb Recast: remove use of auto
Useless use of auto
2024-04-05 17:56:53 +02:00
Kawe Mazidjatari
2e12a581e5 Merge recastnavigation/recastnavigation@99b6c3306e 2023-07-06 10:09:36 +02:00
Kawe Mazidjatari
884decd090 Set default debugger parameters
The debugger can now be immediately invoked on all runtime projects after generating the solution without having to set anything up.
2023-06-24 15:46:56 +02:00
Kawe Mazidjatari
3f8baf6f68 Allow setting compile options for specific targets
Previously, it was all controlled from the global init (applied to all projects), but some projects need different options. With these changes, you can disable the common options applied in the 'add_module' macro, and set your own if desired.
2023-06-17 00:45:27 +02:00
Kawe Mazidjatari
9f44bcc818 Treat compiler warnings as errors
Treat them as errors globally. Most of the time a warning is a bug, or problem in code that could be solved in a different (better) manner. Thirdparty code have this disabled. The warnings as errors option can be globally disabled through the CMake GUI, but this is not recommended.
2023-05-15 09:44:26 +02:00
Kawe Mazidjatari
b57eb0c0c3 Set runtime directories for projects
Adjust the runtime directories, so they are identical to pre-cmake port.
2023-05-14 01:27:51 +02:00
Kawe Mazidjatari
f22504f095 Enable whole program optimization for naveditor
Libs use them under the same PCH.
2023-05-13 12:11:02 +02:00
Kawe Mazidjatari
8dbc2024c6 CMake code improvements
Use the 'add_module' macro to add modules without creating duplicate code. This macro also takes a reuse PCH as parameter, so modules that need a precompiled header, could reuse those from different targets that compile them. This commit also restructures the group order of the generated solution files for easier code navigation.
2023-05-13 00:14:53 +02:00
Kawe Mazidjatari
f120354e96 Initial port to CMake
* All libraries have been isolated from each other, and build into separate artifacts.
* Project has been restructured to support isolating libraries.
* CCrashHandler now calls a callback on crash (setup from core/dllmain.cpp, this can be setup in any way for any project. This callback is getting called when the apllication crashes. Useful for flushing buffers before closing handles to logging files for example).
* Tier0 'CoreMsgV' function now calls a callback sink, which could be set by the user (currently setup to the SDK's internal logger in core/dllmain.cpp).

TODO:
* Add a batch file to autogenerate all projects.
* Add support for dedicated server.
* Add support for client dll.

Bugs:
* Game crashes on the title screen after the UI script compiler has finished (root cause unknown).
* Curl error messages are getting logged twice for the dedicated server due to the removal of all "DEDICATED" preprocessor directives to support isolating projects. This has to be fixed properly!
2023-05-10 00:05:38 +02:00
Kawe Mazidjatari
c116479c37 Fix naveditor compiler error
Use the global variant instead, as the std variant requires a locale.
2023-04-09 23:52:25 +02:00
Kawe Mazidjatari
a79ed2f52f Fix bug in navmesh tool caused by transforming string
Value passed into 'std::tolower' must be unsigned.
2023-04-03 14:50:30 +02:00
Kawe Mazidjatari
5551909ac7 Explicitly cast to types to suppress warnings in navmesh tool 2023-04-03 14:49:18 +02:00
Kawe Mazidjatari
e9cbe34a95 Remove dead code from navmesh tool 2023-04-03 14:48:38 +02:00
Kawe Mazidjatari
9a1343b231 Fix symbol shadowing warnings in navmesh tool 2023-04-03 14:47:41 +02:00
Kawe Mazidjatari
f9c5986245 Upgrade Dear ImGui to 1.89.4
Upgrade and light restructure of ImGui directory.
2023-03-29 00:19:19 +02:00
Kawe Mazidjatari
d2369af46e NavEditor: Move "Save" button below "Load"
Minor UX improvements.
2023-03-25 12:24:09 +01:00
Kawe Mazidjatari
dd48093c23 Add experimental switch header
This header allows us to properly switch between experimental/finished STD implementations without having to adjust the source code (required for compiling on older versions of the Visual Studio 2017 compiler).
2023-03-20 00:17:29 +01:00
Kawe Mazidjatari
c06f9cfe60 Fix naveditor compiler warning
Use correct format specifier for size types, and return a value in 'sdl_init'.
2023-02-26 19:35:33 +01:00
Kawe Mazidjatari
491e28f9a8 Initialize 'NavMeshPruneTool::m_hitPos' 2023-02-21 18:03:24 +01:00
Kawe Mazidjatari
0e14ea6592 Increase common settings max values
Have to be increased due to the scale of the maps.
2023-02-21 18:02:51 +01:00
Kawe Mazidjatari
4e396728c3 Fix typos 2023-02-21 17:56:56 +01:00
Kawe Mazidjatari
89978d795e Add missing include guards
Last few files which do not have include guards.
2023-02-12 19:50:45 +01:00
Kawe Mazidjatari
1e24e34519 Remove unnecessary memset 2023-01-25 22:15:27 +01:00
Kawe Mazidjatari
306211a1b4 Fix naveditor log when invoked using commandline
Log must be reset pre-build, and dump post-build in order for logging to work.
2023-01-25 22:14:46 +01:00
Kawe Mazidjatari
1e76624c9b Increase viewport scroll speed for the recast editor
Due to the large scale of the Apex maps, and the modifications done to the library, this had to be increased significantly.
2022-11-25 00:08:10 +01:00
Kawe Mazidjatari
f0f6a096b8 Final header files rename from sample -> editor 2022-10-22 22:55:22 +02:00
Kawe Mazidjatari
6ef89a19ba Final sample -> editor rename 2022-10-22 22:51:39 +02:00
Kawe Mazidjatari
9289356794 Rename "Sample" enumerants to "Editor" 2022-10-22 22:51:39 +02:00
Kawe Mazidjatari
61ff7e5079 Remane NavMesh "Sample" files to "Editor" 2022-10-22 22:51:39 +02:00
Kawe Mazidjatari
28299b4c59 NavMesh rename from "Sample" to "Editor"
This commit only contains a rename, the logic has not been modified.
Renamed everything named "Sample" to "Editor" as its no longer a sample.
2022-10-22 22:34:47 +02:00
Kawe Mazidjatari
56dd3802f8 Recast & Detour XZY left overs to XYZ
Height should be set on the z axis.
2022-10-22 21:47:07 +02:00
Kawe Mazidjatari
e92b5d1300 General cleanup
Use c++ methods, remove unnecessary casts, unnecessary use of auto, etc..
2022-08-09 15:19:12 +02:00
Kawe Mazidjatari
418bd2d679 Improve NavMesh poly blue tone color 2022-08-04 15:41:45 +02:00
Kawe Mazidjatari
05f2888716 fix error log 2022-07-28 15:51:34 +02:00
Kawe Mazidjatari
9eeaebaf6a Even More XZY->XYZ changes 2022-07-28 15:45:02 +02:00
Kawe Mazidjatari
cbaf10478a More XZY->XYZ changes
* dtIntersectSegSeg2D: Calculate over zy-plane instead.
* dtOverlapPolyPoly2D: Calculate over zy-plane instead.
* dtNavMeshQuery::findRandomPoint: z = h.
* dtNavMeshQuery::raycast: Invert hit normals.
* Update all comments to use xyz vector instead (previously xzy (xz-plane z-height)).
2022-07-28 14:24:29 +02:00
Kawe Mazidjatari
c7d61e8b77 Switch neighborhood deltas 2022-07-28 12:49:42 +02:00
Kawe Mazidjatari
0f8f1a4860 Increase smooth path step size and slop
This increases the size of the path lines (this had to be increased due to the scale of the maps in this engine, recast was originally not scaled for it).
2022-07-28 12:34:20 +02:00
Kawe Mazidjatari
4ada4cef72 NavMeshTesterTool XZY->XYZ 2022-07-28 12:14:35 +02:00
Kawe Mazidjatari
34076142ba More XZY->XYZ changes 2022-07-28 03:21:20 +02:00
Kawe Mazidjatari
ce28ea2691 Even more offMeshConnections debug draw fixes 2022-07-28 02:07:13 +02:00
Kawe Mazidjatari
8af97beb57 Fix offMeshConnections debug draw 2022-07-28 01:48:17 +02:00
Kawe Mazidjatari
6a1b6c580a Increase debug arow size 2022-07-28 00:52:12 +02:00
Kawe Mazidjatari
37637bc56a Properly fix cylinder, circle and arrow debug draw for Recast. 2022-07-28 00:41:47 +02:00
Kawe Mazidjatari
f0eecc80ff Flip vertex order for convex hull properly 2022-07-27 21:13:36 +02:00
Kawe Mazidjatari
87a42efd72 Uncomment and fix crowd anticipate turn debug draw
Moved internal functions to their own translation unit.
2022-07-27 21:05:27 +02:00
Kawe Mazidjatari
88a29f2770 Improve crowd speed/acceleration/braking
Changed to values comparable to game.
Added sliders for acceleration and speed.
2022-07-27 20:08:17 +02:00
Kawe Mazidjatari
03698a4a5f Fix DetourCrowd
XZY -> XYZ.
Crowd agents now traverse over the poly surfaces properly.
2022-07-27 17:48:51 +02:00
Kawe Mazidjatari
6d4b2ea7ef Increase convex volume alpha and height 2022-07-27 15:12:47 +02:00