1
0
Fork 1
mirror of https://github.com/TES3MP/openmw-tes3mp.git synced 2025-01-16 04:19:55 +00:00
Commit graph

4044 commits

Author SHA1 Message Date
Bret Curtis
b819690e82
Merge pull request #2264 from akortunov/optimize_terrain
Delete composite map layers in the background thread
2019-03-18 13:52:17 +01:00
bzzt
aa5a071aef Delete composite map layers in the background thread 2019-03-18 14:00:50 +04:00
Bret Curtis
d56733149c
Merge pull request #2201 from akortunov/optimize_terrain
Optimize terrain
2019-03-18 08:59:10 +01: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
bzzt
6029ed4ecc Reject empty quad tree nodes at the cell level without land data 2019-03-18 10:27:29 +04:00
bzzt
36fa51b6ad Fix bounding box calculation for terrain shapes 2019-03-18 10:27:09 +04: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
2c78d530a2
Use static vector to store stat names 2019-03-17 20:50:15 +03:00
Bret Curtis
ab69ad65ed
Merge pull request #2234 from Capostrophic/terrain
Some more improvements from bzzt's branch
2019-03-17 18:07:19 +01:00
Capostrophic
de572226e4 Update optimizer with upstream improvements 2019-03-17 07:59:16 +03:00
bzzt
b42ad0f610 Inline certain terrain storage functions 2019-03-17 07:27:27 +03:00
bzzt
e131e6699c Match vertex colors data type to source 2019-03-17 07:24:22 +03:00
elsid
c91deaf7af
Use std::vector::data method to avoid reference binding to null pointer 2019-03-16 00:46:00 +03:00
elsid
dd0b45ede6
Do not pass nullptr to std::memcmp 2019-03-14 22:15:57 +03:00
Bret Curtis
7917f1fc84
Merge pull request #2252 from akortunov/terrain
Do not allocate empty callbacks in the RigGeometry
2019-03-14 14:53:35 +01:00
bzzt
4ab93aeffe Do not allocate empty callbacks in the RigGeometry 2019-03-14 12:37:41 +04:00
elsid
8e09468f45
Don't set display list usage for navmesh 2019-03-12 00:05:55 +03:00
Bret Curtis
7b1a62fc1d
Merge pull request #2247 from akortunov/loadtex
Allow to override texture records in the game
2019-03-11 21:05:30 +01:00
Andrei Kortunov
943279abbb Consider land texture with given ID and index as override for base texture with the same ID and index (bug #4736) 2019-03-11 20:19:19 +04:00
Bret Curtis
7efdddd53c
Merge pull request #2242 from elsid/make_shared
Use std::make_shared
2019-03-11 07:53:02 +01: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
4395a92c35
Use display list to render navmesh
Slightly improves performance of massive navmesh rendering.
2019-03-10 23:58:49 +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
b3c5d64ff3
Use std::make_shared 2019-03-10 22:07:46 +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
elsid
0479ebf5ae
Remove unused actors and navmeshes on update
When there is only one actor (player) on a scene and it moving to other
cell first it will be removed from navigator then added. Remove cause
navmesh removing for its half extents. After it is added navmesh for
same half extents is created and added. While this all happens there are
still jobs for old navmesh are processing. Old navmesh still exists
because it is stored by shared pointer. So jobs take tiles from cache
and place them into old navmesh. After that other jobs take same tiles
from cache (half extents and coordinates are equal) and place them into
other navmesh. dtNavMesh changes tile data on add and remove. Adding tile
to two dtNavMesh corrupts tile in both nameshes.
2019-03-10 17:06:15 +03:00
Chris Djali
c328c4a010
Merge pull request #2231 from akortunov/warnfix
Get rid of C-style limits in the shadows code
2019-03-09 19:00:39 +00:00
Andrei Kortunov
bacaa1f789 Get rid of C-style limits in the shadows code 2019-03-09 13:52:03 +04:00
Andrei Kortunov
12f9184d00 Allow to interrupt terrain preloading 2019-03-09 13:15:23 +04:00
Andrei Kortunov
b214c54b3a Calculate bounding volumes when preloading model instance 2019-03-09 13:15:16 +04:00
Bret Curtis
c20e69ef24
Merge pull request #2227 from elsid/fix_twitchy_massive_creatures
Fix twitchy movement for massive creatures (bug #4907)
2019-03-09 02:11:11 +01:00
elsid
b9f21ec81a
Use custom steps size to make smooth path depending on half extents 2019-03-08 22:33:34 +03:00
bzzt
e0cf460ba3 Do not load terrain beyond the viewing distance 2019-03-08 22:15:27 +04:00
Andrei Kortunov
a6fd077537 Render nearby default cells if the Distant Terrain is disabled 2019-03-08 22:15:27 +04:00
Andrei Kortunov
46e1ed660c Revert "Render default land texture for Wilderness cells with distant terrain"
This reverts commit 888c2d9a33.
2019-03-08 22:15:27 +04:00
elsid
f2e47d640d
Add option to limit max number of navmesh tiles 2019-03-08 17:39:04 +03:00
elsid
ff47df4f2c
Repost navmesh update jobs when failed because of out of memory
DT_OUT_OF_MEMORY error is returned when limit of tiles is reached.
2019-03-08 17:39:04 +03:00
elsid
82e2739bae
Notify workers when only at least one job is posted 2019-03-08 15:27:16 +03:00
elsid
b9b8ed177c
Store priority values as named fields 2019-03-08 15:23:36 +03:00
elsid
0c16fef285
Add navmesh update status builder 2019-03-08 15:07:07 +03:00