elsid
3ef1b27099
Add missing includes
4 years ago
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.
4 years ago
psi29a
16bb3919d1
Merge branch 'navmesh_cache_simplification' into 'master'
...
Simplify navmesh cache
See merge request OpenMW/openmw!691
4 years ago
elsid
3e67f5ffa5
Detect and ignore updates for oscillating objects
...
To avoid triggering NavMesh update when RecastMesh change should not change
NavMesh.
Based on the following assumption:
Given a set of transformations and a bounding shape for all these
tranformations, a new object transformation that does not change this
bounding shape also should not change navmesh if for all of this object
transformations resulting navmesh tiles are equivalent
The idea is to report back to RecastMeshManager all changes of NavMesh if there
are any assiciated with RecastMesh version. So we know the last time when
RecastMesh change resulted into the NavMesh change. When later report shows
that there was no NavMesh change for a new RecastMesh version we can assume
that any object transformation within the same bounding box should not change
NavMesh.
4 years ago
elsid
8e1c92d9af
Use std::variant for ESM::Variant implementation
4 years ago
elsid
7f577f5f08
Do not compare hash in tests
...
Different std libraries have different implementation that produce different
results for the same values.
4 years ago
elsid
dae3f022ba
Add tests for ESM::Variant
4 years ago
elsid
f2ebad5115
Return cached element when set existing
4 years ago
elsid
fac5759748
Set bounding min and max height for btHeightfieldTerrainShape
...
They must be set for proper AABB based filtering. Use
+-max(abs(min), abs(max)) to make sure bullet does not shift coordinates by z.
4 years ago
elsid
fdca76ce86
Remove unused includes
4 years ago
elsid
8dba61f7ae
Use navmesh raycast to find reachable position around target
4 years ago
Sergey Fukanchik
f3271cb66b
Add unit test for swapEndiannessInplace(). Part of Bug #5837
4 years ago
elsid
489107c5ee
Count navmesh cache key once in item size
...
Key is stored only in NavMeshTilesCache::Item, TileMap uses KeyView with
a pointer to a vector.
4 years ago
Alexei Dobrohotov
8db2ba2b38
Merge pull request #3032 from akortunov/gtest
...
Mark mock methods as overrides (requires GTest 1.10)
4 years ago
Alexei Dobrohotov
8fd45d85ec
Unify NiGeometry/NiGeometryData handling
4 years ago
Alexei Dobrohotov
15291f15d3
Make actor collision box components a struct
4 years ago
psi29a
7156b11dbc
be explicit about narrowing to resolve: error: type 'btScalar *' (aka 'float *') cannot be narrowed to 'bool' in initializer list [-Wc++11-narrowing]
4 years ago
AnyOldName3
fd4a62ce35
Use correct variable types when loading config for tests
4 years ago
Andrei Kortunov
807367ca3f
Mark mock methods as overrides (requires GTest 1.10)
4 years ago
Alexei Dobrohotov
df9667e923
Read NIF bounding volume data correctly
4 years ago
Bret Curtis
f6bead88a9
purge boost/optional.hpp headers
4 years ago
Bret Curtis
5a824d0333
components/compiler cleanup; also cleaned up related cascading warnings; fixed up final/override issues
4 years ago
Bret Curtis
c99be77a32
Merge pull request #3008 from akortunov/strings
...
Rework fixed strings handling
4 years ago
psi29a
bca698d951
Merge branch 'shader_line_numbering' into 'master'
...
Correctly resetting line numbering during shader processing.
See merge request OpenMW/openmw!317
4 years ago
Andrei Kortunov
822764d0fa
Rework fixed strings handling
4 years ago
Alexei Dobrohotov
29ccb09da5
Introduce some extended NIF definitions
4 years ago
Mads Buvik Sandvei
d5450a7d88
Correctly resetting line numbering during shader processing.
4 years ago
Evil Eye
6ad20ec9c7
Mutate base records when adding/removing spells
4 years ago
elsid
00197e1cd9
Optimize recast mesh size by vertex deduplication
5 years ago
elsid
b095ca6c86
Use actor speed to define area cost for pathfinding
5 years ago
Bret Curtis
c69c7d0b3b
Merge pull request #2049 from elsid/bullet_double_precision
...
Support bullet double precision
5 years ago
Capostrophic
30558c2434
Try to resolve CI concerns
5 years ago
elsid
2d7c3bae61
Support bullet with double precision
5 years ago
elsid
ef5a5ef43f
Print not matched values with full precision
5 years ago
elsid
1f3dfaedcc
Add tests for ShaderManager
5 years ago
elsid
b150d681a9
Update same navmesh tile with limited frequency
5 years ago
elsid
bd1ef4dd6d
Add detournavigator test for multiple worker threads
5 years ago
elsid
df6e85b619
Use callback to handle changed tiles
...
Instead of collecting changed tiles into a temporary vector.
5 years ago
Alexey Sokolov
ddab86d940
Use approximate comparison for floating point in test
...
This fixes test suite on my machine
5 years ago
elsid
208a50340d
Specialize DetourNavigator::ObjectId ctor for pointers
...
To fix msvc error:
components\detournavigator\objectid.hpp(14,13): error C2440: 'reinterpret_cast': cannot convert from 'const T' to 'size_t'
with
[
T=unsigned long
]
5 years ago
elsid
7ae7cb181d
Support recast mesh rendering
5 years ago
Capostrophic
aef6cd7006
Fix handling of empty strings in NIF string tables
5 years ago
elsid
349040ffb2
Use status codes to handle navigator errors instead of exceptions
...
For find path use case.
5 years ago
elsid
1e106013a0
Use navmesh to find wander destination outside pathgrid for ground based actors
...
Use dtNavMeshQuery::findRandomPointAroundCircle from recastnavigation
5 years ago
capostrophic
c61f64ae86
Fix tests
5 years ago
elsid
7ec5a20c64
Filter recast mesh triangles by global bounding box
...
Except heightfields to reduce slow down.
5 years ago
elsid
862f50346c
Add tests for settings parser
5 years ago
elsid
07660b5605
Fix detournavigator tests
5 years ago
Capostrophic
790531671a
Fix tests
5 years ago
Capostrophic
8baddefdbd
Refactor extra data and particle modifier handling
...
Objects no longer inherit from extra data class
"Controlled" harmful abstraction no longer exists
Introduced NiParticleModifier/NiParticleCollider abstractions
Extra data size reading moved into the base read() method
5 years ago