Commit graph

91 commits

Author SHA1 Message Date
AzaezelX c9bc7aa6cb navmesh creation default fixes
fx navmesh scale detection
fill in mission file based .nav file name
account for walkableclimb having more filter weight than walkableslope when it comes to slanted quads generating navmesh data
2025-12-18 13:56:28 -06:00
marauder2k7 f691188f74 tools build requirements 2025-08-03 10:18:23 +01:00
marauder2k7 78a553a74f clamp rendering cover points to 50 units
changes from az render cover points
2025-07-31 19:12:26 +01:00
marauder2k7 1b7768925b Update duDebugDrawTorque.cpp
revert back to static
because we chache the results of the buffer we cannot use volatile buffers, volatile buffers need to be resubmitted every frame to the ring buffer
2025-07-31 08:05:11 +01:00
marauder2k7 267986a289 fix volatile buffer
change debugdraw to use volatile
fix volatile buffer wraparound
2025-07-29 15:20:22 +01:00
marauder2k7 bad9d9b188 final cleanup and fixes
move the geo collection into each tile, seems to work better for large levels
add true to getnav in aiconver so it overwrites all goals
cache the triareas so we can use a tool later to modify them
2025-07-28 20:26:31 +01:00
marauder2k7 dc74f63d85 Update navMeshSelectTool.cpp
update gui info
2025-07-28 11:58:22 +01:00
marauder2k7 e8d56ca987 render the search for the testtool 2025-07-28 11:31:06 +01:00
marauder2k7 9d98d55b1e fix tree selection 2025-07-28 10:02:52 +01:00
marauder2k7 b5d6601b96 add cover tool
add cover tool
some more cleanup
navmeshselecttool needs to use collideBox
duDebugDrawTorque now has the transparent blending option
2025-07-28 08:24:20 +01:00
marauder2k7 24ec55e8bc cleanup
add select tool
cleanup more from guinaveditorctrl and scripts
2025-07-27 19:32:52 +01:00
marauder2k7 3946017556 add follow logic
select follow target and toggle follow for a specific object. Only way to unfollow is to move the following bot to an arbitrary location
2025-07-27 17:25:09 +01:00
marauder2k7 0b96579ada Update navMeshTestTool.h
fix linux and mac
2025-07-27 16:22:00 +01:00
marauder2k7 f730d0bf1c added spawning
Tile test tool now spawns classes and data
Test avoidance added to aicontroller and ainavigation
2025-07-27 12:43:19 +01:00
marauder2k7 a5e969a8fd render links in editor
Render the navmesh links in the guiNavEditor not the offmeshconnectiontool, this way they are always visible.
2025-07-26 10:48:49 +01:00
marauder2k7 6d36e17d91 added navmesh tester tool
Added ground work for tester tool
tester tool works but needs to fill out list of acceptable datablocks and spawnclasses
navpaths now share 1 navmeshquery
AIControllerData now has a vector of area costs for different polyareas
General cleanup
2025-07-26 10:34:19 +01:00
marauder2k7 edf4d47be0 handle water verts
now we correctly mark water verts as water area and add the swim flag to them
2025-07-25 12:41:59 +01:00
marauder2k7 5c2ed84b24 duDebugDrawTorque add override
added an override flag to stop detour from setting our depth mask state. This was causing navmesh to draw through other objects when it wasnt meant to

Reset our bounds box for each draw cache
2025-07-25 11:11:58 +01:00
marauder2k7 496e427d76 add radius controls
update the scripts for the offmeshcontool
radius controlled by slider ctrl
2025-07-25 09:44:49 +01:00
marauder2k7 a0b4b8627f cleanup
Clean out the link vars and functions from guinaveditorctrl its now handled by the tool

offmeshcontool: Add ability to continue to draw from the last links end point holding shift
2025-07-25 08:46:55 +01:00
marauder2k7 2df2cb5c15 off mesh connection tool
Adds off mesh connection tool
upgrade functionality to allow setting the direction to be bi-directional
added immediate draw to duDebugDrawtorque so we can draw offmesh connections
2025-07-24 23:43:35 +01:00
marauder2k7 de1642c33e remove depth changes
changing depth between draw modes is a bit confusing to the viewer could revist

PolyAreas must start with 1, 0 = null area in recast.
2025-07-24 15:01:28 +01:00
marauder2k7 d1771756c2 updated drawmodes and rendering
DebugDraw for recast now caches the results
We now have a drawmode dropdown selector
drawmode changes come from the gui itself no longer from console values
all recast drawmodes are supported with the exception of drawmodes that add abilities like navqueries until the nav tester tool is imlpemented.
2025-07-24 14:25:02 +01:00
marauder2k7 30b9502e90 navmesh
cache tiles data if keep intermediate is on
(we only need to cache the results of recast)

fix tile generation (again)

Add !m_geo check so that buildTile can regen the geometry needed to build the tile again.
2025-07-23 21:02:44 +01:00
marauder2k7 1f21efc9e8 Update tileTool.cpp
fix linux
2025-07-23 16:05:15 +01:00
marauder2k7 80473e10b5 added first tool
Added the tileTool with the ability to select tiles
Abstraction layer for navmesh tools created.
2025-07-23 15:08:29 +01:00
marauder2k7 ab83ecb591 make sure tilesize is in world units
tilesize now stays the same size as the world units provided
2025-07-23 05:55:05 +01:00
marauder2k7 d4d552e8e0 recast update
Added chunkytrimesh - this class splits up the geometry the navmesh is interested in into kdtree for fast traversal, makes the actual navmesh generation work with smaller chunks.

Now only 1 RecastPolylist per navmesh this can be saved out in a future commit.

This is a history commit, all functionality works same as it did before but it matches recasts recommended setup more closely. Future additions may break backwards compatibility.
2025-07-22 14:39:36 +01:00
marauder2k7 26ebdd093b test commit to fix debug draw
pass all draws through duDebugDraw instead of calling our class directly.
2025-07-20 16:10:27 +01:00
AzaezelX 9e2666ed09 nav editor compliance 2025-04-28 14:35:26 -05:00
AzaezelX 32d95d3b8b put AIPlayer support back, and it as the default class to spawn 2025-04-20 15:29:26 -05:00
AzaezelX 3210325f3f elevated mAicontroller to shapebase
aiwheeleedveiclecontrollerdata resolvespeed now only touches throttle
objects assigned aicontrollers now reflect that by thier objecttype
basic flocking
2025-04-19 04:25:36 -05:00
AzaezelX f84bf058c9 navigation: setPathdestination now takes a replace bool to preserve the goal
also killed a few now extraneous  clearfollow calls
2025-04-17 17:51:31 -05:00
AzaezelX 4fb92f02a3 completed list of roughly ported over scripthooks.
todo: need to figure out why followobject is only hitting the first path node. likely  amixup with goal handling
2025-04-17 01:27:08 -05:00
AzaezelX f633ef3a3d fill in the validated variables 2025-03-09 11:53:23 -05:00
marauder2k7 b1e7b817d2 Update duDebugDrawTorque.cpp 2024-07-22 21:40:57 +01:00
marauder2k7 6807abc8b6 ID10T error
no default does not need case -_- id10t error, few other fixes
2024-07-22 21:12:48 +01:00
marauder2k7 a621cc5100 various warnings
warnings cleanup
2024-07-22 20:59:48 +01:00
marauder2k7 2b295fb7f0 rest of virtuals removed
virtuals removed and replaced with override where necessary on the rest of the code base, clang-tidy to the rescue.
2024-03-18 18:40:22 +00:00
marauder2k7 efbe5e90f5 virtuals removed
virtuals removed and replaced with override where necessary, clang-tidy to the rescue.
2024-03-18 18:13:00 +00:00
AzaezelX fbcfe02098 clean up "Add" menubar categoes on the 3d object side via the following:
SceneObject now defaults to a category of "misc"
getCategoryOfClass now checks parent classes for what categories they hold so that variants can inherit
categories are in one of a few rough groups and subgroups depending on actual mapper needs/usages
2023-11-08 20:42:47 -06:00
AzaezelX aa02e48c8d add safeties for enum math across define boundaries 2023-04-26 22:27:35 -05:00
AzaezelX f5a34308f9 add a docsURL; macro to link a given set of script config vars to git or similar storage urls via clicking on the inspector 2023-01-27 01:13:15 -06:00
JeffR 305e4851e0 Fixes issue with using Edit Asset in RMB menu in AB on datablocks where it wouldn't correctly recognize the datablock
Fixes issue where the local sfxProfile in a sfxEmitter would share pointer reference to the utilized shapeAsset's sound buffer, so when it's deleted it would nuke the soundAsset's buffer, causing reference exceptions
Adds includes to torqueConfig.h in several files that are blocked out with TORQUE_TOOLS to ensure that if the flag is on in the config file, the files are loaded/compiled as expected
Add sanity check to AssetManager::unloadAsset to ensure that the assetDef being unloaded was actually correctly loaded/registered into the console in the first place
2022-07-02 23:27:18 -05:00
AzaezelX 4a7104e5ea fix TORQUE_TOOLS = off compilation 2022-06-13 12:38:08 -05:00
Robert MacGregor 1b6b803a20 * BugFix: Clear a lot of warnings and correct a few actual programming errors along the way. 2021-10-04 20:04:21 -04:00
OTHGMars 46b0aee637 NavMesh loading from zip file. 2021-01-11 04:51:21 -05:00
Lukas Aldershaab c999baf7ed Moves from using dStrCmp to the new String::compare static functions. Keeps things cleaner, consistent, and works with intellisense. 2020-10-03 14:37:55 +02:00
AzaezelX a46bf3d7e5 uninitialized variables-navigation 2020-05-11 15:08:57 -05:00
Azaezel f00323c5b9 the buildtiles method does not in fact build tiles right then and there, but instead queues tiles to update themselves over time. as such, simply disabling then enabling collision no longer functions (and how it did before so before is frankly likely due to exploiting a bug someplace upstream). as such, we set the same flag for NavMeshUpdateAll as we do for NavMeshIgnore to filter something as hidden from navmesh generation or not on a permanent, instead of a temporary basis via removing from the physics sim since it's likely to still be generating by the time it's put back. 2019-03-06 18:14:36 -06:00