Commit Graph

431 Commits (7d9d377575ff6aac58561c670c8716314386700a)

Author SHA1 Message Date
elsid 50f4471750
Use R-tree for dynamic priority of navmesh async job 9 months ago
elsid 17bd571a65
Do not repost failed jobs
Failures should not happen except for some weird corner cases. Retrying is
unlikely to help in such situation.
9 months ago
elsid d6f3d34f2f
Remove tiles present on navmesh but outside desired area 9 months ago
elsid 61c69c5563
Use proper prefix for CollisionShapeType 9 months ago
elsid a1438f65fe
Set proper max tiles on initializing navmesh settings 9 months ago
psi29a af9f1b54da Merge branch 'lost-warnings' into 'master'
Fixes for a whole bunch of warnings

See merge request OpenMW/openmw!3950
9 months ago
elsid ee2cc8aeb7
Fix build with MSVC 19.38
components\detournavigator\navigator.hpp(44): error C3861: 'assert': identifier not found
10 months ago
Andrei Kortunov 6da151cf77 Fix GCC build 10 months ago
psi29a 090e57b27c Merge branch 'esm3structs' into 'master'
Replace fixed size writeHNT calls with decomposition

See merge request OpenMW/openmw!3914
10 months ago
AnyOldName3 28131fd62b Fixes for a whole bunch of warnings
These warnings were always enabled, but we didn't see them due to https://gitlab.com/OpenMW/openmw/-/issues/7882.
I do not fully understand the cause of 7822 as I can't repro it in a minimal CMake project.

Some of these fixes are thought through.
Some are sensible best guesses.
Some are kind of a stab in the dark as I don't know whether there was a
possible bug the warning was telling me about that I've done nothing to
help by introducing a static_cast.

Nearly all of these warnings were about some kind of narrowing
conversion, so I'm not sure why they weren't firing with GCC and Clang,
which have -Wall -Wextra -pedantic set, which should imply -Wnarrowing,
and they can't have been affected by 7882.

There were also some warnings being triggered from Boost code.
The vast majority of library headers that do questionable things weren't
firing warnings off, but for some reason, /external:I wasn't putting
these Boost headers into external mode.

We need these warnings dealt with one way or another so we can switch
the default Windows CI from MSBuild (which doesn't do ccache) to Ninja
(which does).
I have the necessary magic for that on a branch, but the branch won't
build because of these warnings.
10 months ago
elsid 5859fd464c
Add option to disable precompiled headers
To be able to use ccache.

Also fix compilation errors appeared due to absence of precompiled
headers.
10 months ago
Evil Eye cef59e8928 Replace fixed size writeHNT calls with decomposition 10 months ago
elsid a7da604332
Update next tile_id when there is a duplicate in navmeshdb
Disable writes on failure to update next tile_id to avoid further errors.
11 months ago
elsid e6196c782d
Limit navmesh vertices coordinates values
Float values with more than 22 significant fraction bits may cause out of bounds
access in recastnavigation on triangles rasterization. Prevent passing such
values there.
11 months ago
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.
12 months ago
elsid b0b6c48a88
Add clarifying comments to detournavigator coordinates conversion functions 12 months ago
elsid afd6f0739c
Format box shape indices grouping by triangle 12 months 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