1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 12:59:55 +00:00
Commit graph

28 commits

Author SHA1 Message Date
Andrei Kortunov
6da151cf77 Fix GCC build 2024-03-15 20:12:47 +04:00
elsid
843753da14
Remove unused includes 2022-10-09 16:44:18 +02:00
clang-format-bot
ddb0522bbf
Apply clang-format to code base 2022-09-22 21:35:26 +03:00
elsid
204ab6fea3
Use version instead of generation and revision for recast mesh 2022-09-06 21:51:48 +02:00
elsid
b1fb42a28c
Cleanup detournavigator includes 2022-08-15 19:46:10 +02:00
elsid
5a6b39f8e0
Store mesh source data in recast mesh 2021-12-10 23:55:02 +01:00
elsid
7dcb219ecf
Add raw heightfield data to navigator 2021-12-03 01:16:15 +01:00
elsid
8571c317d8
Add raw water data to navigator 2021-12-03 01:16:15 +01:00
elsid
f4f4458d01
Calculate recast mesh bounds when building navmesh 2021-12-03 01:16:15 +01:00
elsid
5f5163905a
Remove unused operator< for RecastMesh 2021-11-08 18:49:16 +01:00
elsid
9a5ec5fd03
Store heightfields as array of heights instead of triangles
To reduce size of RecastMesh and therefore cache size.
2021-07-26 00:22:21 +02:00
elsid
5d6c93566d
Rename DetourNavigator::Water -> Cell 2021-07-26 00:22:21 +02:00
elsid
753767d6d9
Store only water shift
Rotation is not used.
2021-07-26 00:22:20 +02:00
elsid
a1549321d7
Move Water struct out of RecastMesh class 2021-07-26 00:22:20 +02:00
elsid
af7059373c
Make RecastMesh independent from the order of RecastMeshBuilder calls
To make sure RecastMesh objects are equal if built with the same data but in
different order. Will be used later when there will be more than one place
building RecasMesh objects.
2021-07-26 00:22:20 +02:00
elsid
beeb882ea8
Do not use off mesh connections as a part of navmesh cache key
To reduce cache size and make it more flexible.

Adding off mesh connections to the navmesh is the last step of navmesh
generation and it's very fast comparing to other steps (microseconds vs
milliseconds). Having less cache size makes get and set operations almost 2x
times faster that also have an order of microseconds. So in total there is
no performance impact.
2021-07-14 12:19:17 +02:00
jvoisin
28d5e5e8be Remove some superfluous includes in components/detournavigator 2021-05-14 20:45:59 +02:00
elsid
ec87b3f8f7
Remove redundant ChunkyTriMesh
This AABB tree required when need to filter out input mesh that has not
influence navmesh tile output. This filtering is already done before. Each
recast mesh corresponds to a single navmesh tile and has appropriate bounds.
2021-05-04 13:00:06 +02:00
elsid
3a2cea5271
Use raw recast mesh data and off mesh connections for navmesh key
Serialization into a vector of chars produces inconsistent results that leads
to reduced cache hit rate. Using a structured object is a more clear solution
and allows to remove serialization and nontrivial key compare logic with more
straigt forward structured object comparison.
2021-02-04 01:01:15 +01:00
elsid
ad1f8c1e84
Sort water and off mesh connections for recast mesh
Inconsisten order of these objects in navmesh cache key leads to cache misses
due to key inequality.
2021-02-04 01:00:41 +01:00
elsid
7ae7cb181d
Support recast mesh rendering 2020-03-14 09:38:24 +01:00
elsid
0f6a64ad54
Split makeNavMeshTileData 2018-10-13 22:22:15 +03:00
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.
2018-10-13 22:22:12 +03:00
elsid
c95cea414c
Support water for NavMesh 2018-10-13 22:16:32 +03:00
elsid
72f211ef28
Add enums for area type and flags 2018-10-13 22:16:32 +03:00
elsid
fa23b590a4
Add unwalkable areas to NavMesh 2018-10-13 22:16:32 +03:00
elsid
f8909218ee
Store recast mesh bounds 2018-10-13 22:16:27 +03:00
elsid
fafba8ea0c
Use recastnavigation to find path 2018-10-13 22:16:25 +03:00