fredzio
460e69e92a
Get rid of warning: dynamic exception specifications are deprecated
2020-10-10 12:12:55 +02:00
elsid
7591d45008
Use memcpy to create navmesh key
...
Implementation with memcpy is ~13 times faster.
2020-10-08 19:55:56 +02:00
elsid
f637dc38bd
Add cached flag to update navmesh status
2020-10-08 19:55:55 +02:00
elsid
eb140ed15f
Write unknown status numeric value
2020-10-08 19:55:55 +02:00
elsid
7d73e73cad
Consider tile as not removed when it is not found
2020-10-08 19:55:55 +02:00
psi29a
0dc7715c35
Merge branch 'object_paging_retry' into 'master'
...
Object Paging
See merge request OpenMW/openmw!209
2020-06-16 08:21:54 +00:00
elsid
00197e1cd9
Optimize recast mesh size by vertex deduplication
2020-06-16 00:51:36 +02:00
elsid
b095ca6c86
Use actor speed to define area cost for pathfinding
2020-06-13 02:24:52 +02:00
elsid
439588d10e
Remove unused mOffMeshConnectionIds
2020-06-13 02:24:51 +02:00
bzzt lost a hitlab login
c1ebd9474b
stop navmesh updates when ai off
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
elsid
c4cd3b2c4f
Add pathgrid to navmesh as off mesh connection
2020-06-12 21:04:02 +02:00
elsid
14d0ca4cd3
Cast float to btScalar
2020-05-13 18:44:11 +02:00
elsid
b150d681a9
Update same navmesh tile with limited frequency
2020-05-01 18:05:58 +02:00
elsid
10daadefbe
Add missing include
2020-04-30 21:58:00 +02:00
Bret Curtis
b7f7aabd8b
Merge pull request #2806 from elsid/detournavigator_tests
...
Add detournavigator test for multiple worker threads
2020-04-30 14:48:02 +02:00
elsid
899a6b5aa3
Workaround for GCC 5 bug
...
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=61636
2020-04-29 13:54:52 +02:00
elsid
bd1ef4dd6d
Add detournavigator test for multiple worker threads
2020-04-26 22:00:55 +02:00
Alexei Dobrohotov
d42cb4f16d
Merge pull request #2805 from elsid/detournavigator_update_callback
...
Use callback to handle changed tiles
2020-04-26 22:52:40 +03:00
elsid
df6e85b619
Use callback to handle changed tiles
...
Instead of collecting changed tiles into a temporary vector.
2020-04-25 17:56:41 +02:00
elsid
7502db1570
Add number of thread jobs to update jobs stats
2020-04-25 17:51:50 +02:00
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
]
2020-04-13 20:48:34 +02:00
Andrei Kortunov
2e7712a390
Fix C5204 warnings by adding default virtual destructors
2020-03-26 14:49:12 +04:00
elsid
5168f2059f
Compare revisions by equality to support overflow
2020-03-14 09:38:24 +01:00
elsid
7ae7cb181d
Support recast mesh rendering
2020-03-14 09:38:24 +01:00
elsid
349040ffb2
Use status codes to handle navigator errors instead of exceptions
...
For find path use case.
2020-02-04 22:33:56 +01:00
elsid
f7caeefddb
Fallback to straight path when navmesh and pathgrind are not available
2020-01-29 11:14:07 +01:00
elsid
1e106013a0
Use navmesh to find wander destination outside pathgrid for ground based actors
...
Use dtNavMeshQuery::findRandomPointAroundCircle from recastnavigation
2020-01-21 00:01:06 +01:00
Andrei Kortunov
3704acf857
Unify streams usage to support non-ASCII paths (bug #5239 )
2020-01-03 07:10:17 +04:00
Andrei Kortunov
cd81f81fb6
Initialize variables to avoid GCC warnings
2019-12-22 10:44:14 +04:00
elsid
7ec5a20c64
Filter recast mesh triangles by global bounding box
...
Except heightfields to reduce slow down.
2019-11-30 13:19:27 +01:00
elsid
7729e396b2
Fix exceptions logging
2019-11-30 10:33:14 +01:00
Andrei Kortunov
6832a2fa9a
Remove BOM from CPP files (allows to build OpenMW with LCC on Elbrus)
2019-05-21 19:22:34 +04:00
elsid
c683dc8565
Lock navmesh tile by thread while processing
...
To avoid duplicated work on a same tile by different threads.
If tile is locked by another thread, then post job into this thread queue.
2019-04-10 22:01:50 +02:00
Andrei Kortunov
14b756a692
Use a generic logging system for RecastNavigation
2019-04-08 20:31:21 +04:00
Bret Curtis
45221418bd
Merge pull request #2260 from elsid/fix_clean_unused_navmeshes
...
Fix clean unused navmeshes
2019-03-18 08:57:46 +01:00
elsid
4624f31788
Report navigator stats
2019-03-17 22:15:18 +03:00
elsid
8adc83f6e2
Fix clean unused navmeshes
...
weak_ptr doesn't have constructor for shared_ptr&& type, so ptr wasn't
moved, just copied.
2019-03-17 21:28:34 +03:00
elsid
dd0b45ede6
Do not pass nullptr to std::memcmp
2019-03-14 22:15:57 +03:00
Bret Curtis
cb1a5f3679
Merge pull request #2245 from elsid/navigator_refactor
...
Refactor navigator related code
2019-03-11 07:51:43 +01:00
Bret Curtis
7b793b8809
Merge pull request #2244 from elsid/navmesh_cache_item_refactor
...
Make NavMeshCacheItem consistent
2019-03-11 07:51:22 +01:00
elsid
68948bc847
Avoid key allocation to find tile in cache
2019-03-11 03:01:41 +03:00
elsid
849f2078c1
Swap outside critical section
2019-03-10 23:58:49 +03:00
elsid
8d2af94b75
Use default objects for NavigatorStub methods result
2019-03-10 23:58:49 +03:00
elsid
ece111d05a
Check for jobs using predicate
2019-03-10 23:58:49 +03:00
elsid
c05fc9e054
Add missing cleanup
2019-03-10 23:58:49 +03:00
elsid
ce9aebcba1
Clear all changed tiles after post
2019-03-10 23:58:48 +03:00
elsid
9d61c49478
Store key by reference in tiles map
2019-03-10 23:56:52 +03:00
elsid
614d5243c3
Make NavMeshCacheItem consistent
...
Move all logic related to this type into its methods.
2019-03-10 23:07:36 +03:00
elsid
f6a1d3cecf
Store weak pointers to navmesh in jobs queue
...
To avoid useless processing for removed navmeshes.
2019-03-10 17:06:19 +03:00
elsid
ccc709a316
Store guarded navmesh cache item in shared_ptr
...
Remove useless SharedGuarded type.
2019-03-10 17:06:19 +03:00