Commit Graph

417 Commits (66d1e036d2a4431d3e9779205bc1df4d69aff8f8)

Author SHA1 Message Date
Andrei Kortunov 87c9f395f1 Move local variables in components 12 months ago
psi29a c84386aa4b Merge branch 'fix_navigator_update' into 'master'
Fix navmesh update on player changing tile

See merge request OpenMW/openmw!3756
12 months ago
Andrei Kortunov 0e1bb45345 Cleanup navmesh updater 12 months ago
elsid 69cf507db8
Fix navmesh update on player changing tile
In cases when objects are not present on the scene (e.g. generated exterior
cells) navmesh is not updated because area that suppose to be covered with it
was not updated. It was updated only during cell change. This is a regression
from d15e1dca84.

Set TileCachedRecastMeshManager range on NavMeshManager update to make sure it
always covers correct area around player.

Return a union of objects, heightfields and water ranges from
getLimitedObjectsRange intersected with range provided above.
1 year ago
elsid b0b6c48a88
Add clarifying comments to detournavigator coordinates conversion functions 1 year ago
elsid afd6f0739c
Format box shape indices grouping by triangle 1 year ago
elsid 329500b087
Remove redundant return 1 year ago
elsid 0cf55d3617
Use RecastGlobalAllocator for Detour 1 year ago
jvoisin 08538dd137 Merge branch 'rm_unused_variable' into 'master'
Remove unused variable

See merge request OpenMW/openmw!3607
1 year ago
elsid 81fa7836fe
Remove unused variable 1 year ago
elsid 94b085af9e
Add Navigator and Lua API function to find nearest position on navmesh 1 year ago
elsid 40688c0e7c
Rename findPath to findPolygonPath to avoid name collision with other findPath 1 year ago
elsid b17afc4641
Use concepts for some argument types 1 year ago
elsid 5abbc56bf2
Use proper cell size for ESM4 cells in CoordinateConverter 1 year ago
psi29a 4aaffa72e5 Merge branch 'more_coverity_fixes' into 'master'
More coverity fixes

See merge request OpenMW/openmw!3304
1 year ago
Andrei Kortunov fe10799bfe Add an assert for possible null pointer dereference 1 year ago
Andrei Kortunov 34ba2068b7 Remove dead code 1 year ago
elsid 798f3cc385
Support ESM4 record FullName, CellFlags, X, Y fields by esmtool 1 year ago
elsid e00eb50587
Remove stepping from findSmoothPath
This is not used anyway. There are features like smooth movement which remove
all redundant points.

Use single findStraightPath call instead of multiple.
1 year ago
elsid 767a14587c
Add more debug logging on navmesh generation 1 year ago
elsid 9817f4ca9a
Find closest position on navmesh to start and end before poly path
Start and end might not be located on navmesh and findPath may give wrong
results.
1 year ago
elsid 3dfea1dc1b
Make OutputTransformIterator more generic 1 year ago
elsid de3a6ca6e6
Use std::span for findPath pathBuffer 1 year ago
elsid c334176d73
Use std::span for makeSmoothPath polygonPath 1 year ago
elsid 548c38f54d
Remove unused code 1 year ago
elsid 350027c588
Remove redundant NavMesh argument from findSmoothPath 1 year ago
elsid fcea153947
Transform path coordinates outside findSmoothPath 1 year ago
elsid 9bff292a29
Log path to navmesh.db 1 year ago
elsid 180dd7dc64
Log worldspace in RecastContext 2 years ago
elsid f9e9368fda
Add operator<< for DetourSettings 2 years ago
elsid dd08154b23
Add operator<< for DetourNavigator::AreaCosts 2 years ago
elsid ce5fbd6b68
Write separator between Detour status flags 2 years ago
elsid a90aa7d8b2
Count navmeshdb reads for each reading job 2 years ago
elsid 5ae8b9cae1
Report raw navmesh cache counters 2 years ago
elsid 04d439485b
Log more info about navmesh shapes and jobs 2 years ago
elsid 7a7c20d49e
Define single UpdateGuard type in a separate file 2 years ago
elsid 472a36d92a
Cleanup detournavigator includes 2 years ago
elsid 3e99deb0e8
Use typed settings storage for detournavigator 2 years ago
elsid 28f7a89530
Reuse dtNavMeshQuery
To avoid redundant allocations.
2 years ago
elsid 996153f78d
Convert RefId to class 2 years ago
florent.teppe 63e44eddc9 Navigator doesn't use RefId anymore 2 years ago
florent.teppe 150e2ba885 Revert "Use ESM::RefId for worldspace in detournavigator"
This reverts commit b4ab153418.

# Conflicts:
#	apps/navmeshtool/worldspacedata.cpp
2 years ago
elsid cf1d8544e3
Check agent bounds on adding agent to navigator
Do not add agent bounds which are not supported by recastnavigation with given
settings and log such events.

To avoid reaching navmesh tile generation to find out it can't be generated for
such agent bounds.
2 years ago
elsid 44429f0393
Limit NavMeshManager update range by player tile and max tiles
Object AABB may be much larger than area currently covered by navmesh. In this
case all tiles beyond covered range should be ignored. Attempt to iterate over
them will not result in any new tile updates but can take quite a while. At
maximum this can be pow(INT_MAX - INT_MIN, 2) iterations.

Use arbitrary time limit to check for update call to finish in the test.
2 years ago
Petr Mikheev 8c7d347179 Reorganize l10n files 2 years ago
elsid c71862a8df
Reset rcPolyMeshDetail members after rcFree
To avoid double free causing by later recastnavigation versions.
2 years ago
elsid b4ab153418
Use ESM::RefId for worldspace in detournavigator 2 years ago
florent.teppe 1ef1de974d script blacklist => RefId
Applies changes from review

Fixed clang format

Clang format + review.
2 years ago
florent.teppe 2c30575b3b CellName is now a RefId, makes more sense that way. 2 years ago
psi29a 14afde4689 Merge branch 'recast_context' into 'master'
Check input and report errors via RecastContext (#7093)

Closes #7093

See merge request OpenMW/openmw!2544
2 years ago