1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-21 09:53:52 +00:00
openmw/apps
elsid a2d596dbc7
Prepare navmesh scene asynchronously
It is expensive operation to generate new osg::Group for updated navmesh tile
which noticeably slows down main thread primarily because of
SceneManager::recreateShaders call. Move it to the preload work queue that is
used by RenderingManager. Leave to main thread only manipulations on the root
node.

Also move deallocation of no more needed data to the work queue. It's also
quite expensive operation because SceneManager::recreateShaders allocates a
new state set for each osg::Geometry. Deallocating them takes time.

Avoid creating another work item if there is existing one that is not started
yet.

Make sure results are accepted in the proper serialized order by selecting
completed work item with maximum {id, version}.
2022-04-20 23:14:31 +02:00
..
benchmarks Move FetchContent for benchmark to extern 2022-01-30 00:44:22 +01:00
bsatool Avoid missusing of CompressedBSAFile with private inheritance 2022-02-27 20:40:35 +01:00
bulletobjecttool Add a tool to load and print information about all bullet objects in all cells 2022-02-04 16:14:52 +01:00
esmtool Print record flags in esmtool 2022-04-17 09:00:58 +02:00
essimporter Remove redundant include from esm3/esmreader.hpp 2022-04-10 22:16:32 +02:00
launcher Merge branch 'issue-6685' into 'master' 2022-04-17 17:13:31 +00:00
mwiniimporter Avoid extra copy for Utf8Encoder::getUtf8 result 2022-02-14 23:01:32 +01:00
navmeshtool Exchange binary messages between navmeshtool and launcher 2022-03-30 19:24:54 +02:00
niftest Avoid redundant conversion to const char* and use make_shared 2022-04-10 22:33:08 +02:00
opencs Merge branch 'VA_OpenMW-CS' into 'master' 2022-04-11 16:03:30 +00:00
openmw Prepare navmesh scene asynchronously 2022-04-20 23:14:31 +02:00
openmw_test_suite Merge branch 'ncc' into 'master' 2022-04-17 20:29:41 +00:00
wizard Merge branch 'fix_6627' into 'master' 2022-04-17 17:13:13 +00:00
doc.hpp