Commit Graph

20414 Commits (0f6a64ad54cb43472404c156d00a30d4eb5b7070)
 

Author SHA1 Message Date
elsid 0f6a64ad54
Split makeNavMeshTileData 6 years ago
elsid fb655cb04f
Remove macroses to check recastnavigation functions result 6 years ago
elsid ed73d130f9
Cache navmesh tiles
Use LRU modification to hold currently used items. Use RecastMesh binary
data for item key.

Store original pointer of btCollisionShape in user pointer to make available
it as an identifier within all duplicates. Use pointer to heights data array
for btHeightfieldTerrainShape.
6 years ago
elsid 69b5834c64
Add doc for Navigator 6 years ago
elsid ae7285e960
Use ScopeGuarded instead of raw mutex 6 years ago
elsid cf4066751c
Add classes to encapsulate value guarded by mutex 6 years ago
elsid 1a27489904
Add special type for object id 6 years ago
elsid 7c80bb9411
Support multiple threads for async nav mesh updater 6 years ago
elsid 7c5bedc35a
Reset shorcutting if actor can't move by z-axis on reaction time
If actor was shortcutting because it was swimming, then when it started
walking it still be shortcutting, but there will be no new path, because
shortcut path builds only for actor able moving by z-axis and pathfinder
path only for not shortcutting actor.
6 years ago
elsid 92b34e8bb4
Check whether can actor move along z-axis in separate function 6 years ago
elsid bbd82a743a
Use different tolerance for path point and destination 6 years ago
elsid ab090108cb
Assign world to local variable once per function 6 years ago
elsid 27a74725f1
Use osg::Vec3f 6 years ago
elsid ff478aba6d
Use actor half extent for interior cells 6 years ago
elsid 346e9e3141
Add off mesh connections for doors without teleport 6 years ago
elsid f8dbd5902f
Update doors objects in navigator 6 years ago
elsid 661da42bd2
Build path by navigator 6 years ago
elsid d02beae5a8
Find path for actors according to their abilities to swim and walk 6 years ago
elsid dc09674362
Add command and settings option to enable actors paths render 6 years ago
elsid c95cea414c
Support water for NavMesh 6 years ago
elsid 72f211ef28
Add enums for area type and flags 6 years ago
elsid fa23b590a4
Add unwalkable areas to NavMesh 6 years ago
elsid c771986c56
Prioritise NavMesh jobs first to remove and last to add
When player move fast enough, tiles update for specific area square
couldn't catch player move. Tiles to be removed are left in the queue
with lower priority then tiles to be added which are nearest to player.
This can lead to overflow for amount of tiles. So we try to do remove
first. But we detect change type approximately using mixed change type,
because even if we do it precise, change type could change while job
is in queue.
6 years ago
elsid b33a291a67
Log thread id 6 years ago
elsid f6a60790f8
Create collision shape for all avoided nodes 6 years ago
elsid e24d4d7052
Explicitly use RC_NULL_AREA constant to mark unwalkable areas 6 years ago
elsid 330e596c64
Remove useless parameter 6 years ago
elsid c3298d13a6
Add log sinks (stdout and file) 6 years ago
elsid 84949bedb1
Remove and add tile in single critical section 6 years ago
elsid 144e1a063b
Support animated objects 6 years ago
elsid 4aba0fa85f
Limit number of NavMesh tiles to add by distance from player tile 6 years ago
elsid d2fd9abd51
Split RecastMesh into tiles 6 years ago
elsid dbb1d99bff
Add NavMeshItem generation to fix update NavMesh for render 6 years ago
elsid f268ec5d34
Measure total time for NavMesh build from first pop 6 years ago
elsid c26773bd29
Log update NavMesh status 6 years ago
elsid 6f3028b8f9
Update navigator when unload cell or add/remove object to scene 6 years ago
elsid 937e8e1803
Allow to create empty RecastMesh 6 years ago
elsid dd5f4498f6
Increment NavMesh revision on remove or add tile 6 years ago
elsid faaf50446d
Option to initially enable NavMesh render 6 years ago
elsid 02ce4a7e50
Log to detournavigator log cell load and unload 6 years ago
elsid ed3a255f65
Do not use NavMesh to find changed tiles 6 years ago
elsid d1e71f9322
Support btBoxShape for RecastMesh 6 years ago
elsid 70a369f70e
Add command to enable NavMesh render
togglenavmesh or tnm
6 years ago
elsid 1caa18bb4f
Use one recast mesh for all jobs 6 years ago
elsid 794cfc4aa3
Write detournavigator log to file 6 years ago
elsid dd5e6a61a3
Support btCompoundShape for RecastMesh 6 years ago
elsid 373adc6ec4
Option to enable/disable file names revisions 6 years ago
elsid f8909218ee
Store recast mesh bounds 6 years ago
elsid d1d034a1ec
Update NavMesh one by one tile in order from nearest to player 6 years ago
elsid 41caca24ee
Options to enable/disable write recast mesh and nav mesh into file 6 years ago