1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-03-03 19:39:41 +00:00
Commit graph

41 commits

Author SHA1 Message Date
psi29a
cec1429c0f Merge branch 'cleanup' into 'master'
 remove OSG 3.4 support and require at least 3.6.5 support

Closes  and 

See merge request 
2022-08-09 23:08:37 +02:00
Andrei Kortunov
de58c9dff3 Get rid of obsolete osg::Geode where it is possible 2022-07-20 15:28:56 +04:00
psi29a
1ac7eaa6b0 Merge branch 'NiFltAnimationNode' into 'master'
Add NiFltAnimationNode support

Closes 

See merge request 
2022-04-06 23:59:04 +00:00
Wolfgang Lieff
ead73fce31 initial NiFltAnimationNode support 2022-04-07 00:09:11 +02:00
Alexei Dobrohotov
81e9212db9 Slightly optimize MergeGroupsVisitor's xenophobia 2022-04-06 06:37:42 +03:00
Cody Glassman
d85f772269 Depth refactor 2021-11-21 02:25:05 +00:00
Bo Svensson
726653087e
restores _mergeAlphaBlending behaviour ()
This PR restores a minor peculiarity of `_mergeAlphaBlending` behaviour unintentionally changed by PR .
2021-11-07 10:36:22 +01:00
Bo Svensson
031871cd48
speeds up optimizer ()
We can expect marginally improved loading times with this PR. Drawable, Transform and Node counts in stats panels are expected to remain unchanged - this PR does not add new scene graph optimisations, it just increases the speed with which we apply existing ones.

1. We add explicit `NodeVisitor::apply` overrides for commonly encountered node types to avoid additional virtual function calls per node associated with the default `apply` implementation.
2. We skip pushing `StateSet`s when  `_mergeAlphaBlending` is enabled or the `StateSet` contains no relevant state.
3. We add a specialised variant of `CollectLowestTransformsVisitor::addTransform` accepting `MatrixTransform` to avoid matrix copies and multiplications.
2021-10-10 18:09:15 +02:00
Bo Svensson
08608da62c
optimizer.cpp 2021-10-07 08:29:38 +00:00
Bo Svensson
c6f7137ee1
fixes bugs with share state ()
* optimizer.cpp merge fix

* objectpaging.cpp

* optimizer.hpp setSharedStateManager

* optimizer.cpp shareState

* scenemanager.cpp shareState

* scenemanager.cpp

* optimizer.cpp

* optimizer.cpp

* scenemanager.cpp

* optimizer.cpp
2021-09-27 20:41:24 +02:00
glassmancody.info
09e03fde2e refactor and fix wobbly shores 2021-08-04 17:49:57 -07:00
glassmancody.info
70fac33940 initial reverse-z depth implementation 2021-08-04 17:39:11 -07:00
Andrei Kortunov
8ca3c3b123 Mark overrided methods by override keyword 2020-10-16 22:18:54 +04:00
psi29a
f94ca28dbe : Optimizer fix, problem was indeed related to tangents not being transformd properly. 2020-06-18 17:23:16 +00:00
bzzt lost a hitlab login
26ab176389 profiling
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
daa2761c2d alphablending & billboardfix
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
9f0398c021 intersection by refnum tag + enable paging for acti,door,cont
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:28 +02:00
bzzt lost a hitlab login
ce505a9bb3 crashfix + optimiziation
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
bzzt
d684f1a78f terrainbased objectpaging
Signed-off-by: Bret Curtis <psi29a@gmail.com>
2020-06-13 00:22:27 +02:00
Capostrophic
957d2a890f Ignore empty children of osg::LOD and osg::Switch like in OSG 2020-04-30 15:04:58 +03:00
Capostrophic
6622e36226 Only merge pure osg::Groups in the optimizer 2019-06-09 11:47:43 +03:00
Capostrophic
de572226e4 Update optimizer with upstream improvements 2019-03-17 07:59:16 +03:00
Andrei Kortunov
3032b177a1 Remove redundant includes 2019-02-23 08:02:12 +04:00
Andrei Kortunov
03b71d3c30 Improve switchable nodes handling by optimizer 2019-01-27 15:19:48 +04:00
Andrei Kortunov
2c38e337ae Support NiSwitchNode (feature ) 2019-01-23 21:01:54 +04:00
Andrei Kortunov
e06f0b797a Replace all NULLs to nullptr 2018-10-09 10:21:12 +04:00
scrawl
25a6a67508
Fix the optimizer messing up LOD node's children (Fixes ) 2018-01-29 19:44:12 +00:00
scrawl
3d58ba7301 Fix boolean test 2017-03-15 17:50:13 +01:00
scrawl
c1b1d502ee Fix up commit 330e5fefd1 2017-03-04 21:48:31 +01:00
scrawl
4051018862 optimizer: fix FlattenStaticTransformsVisitor not respecting the is permissible callback 2017-03-04 21:48:31 +01:00
scrawl
5caf53b6a3 optimizer: avoid reordering nodes
Fixes an osgParticle cloning issue.

(Fixes )
2017-02-26 03:25:17 +01:00
scrawl
48e0f098ff Add missing copy of callbacks when a Transform is replaced by Group
(Fixes )
2017-02-24 07:38:03 +01:00
scrawl
330e5fefd1 optimizer: consider a Group with more than one child redundant as well
While there could be some value in this hierarchy (i.e. improved culling), we don't know if this is being used sensibly; and using a 'flat' hierarchy helps other optimizations.
2017-02-24 02:58:41 +01:00
scrawl
e4c12e5e56 optimizer: don't merge Geometry that has transparency sorting enabled 2017-02-24 02:58:27 +01:00
scrawl
ebfd845eae optimizer: run MERGE_GEOMETRY after removing redundant nodes 2017-02-23 23:28:50 +01:00
scrawl
43f31d6e54 optimizer: fix MERGE_GEOMETRY to work with Geometries not attached to a Geode 2017-02-23 23:28:50 +01:00
scrawl
f2a323238f optimizer: merge groups as part of REMOVE_REDUNDANT_NODES 2017-02-23 23:28:50 +01:00
scrawl
af716d4b61 optimizer: remove hardcoded condition in RemoveRedundantNodesVisitor 2017-02-23 23:28:50 +01:00
scrawl
698738c649 optimizer: use asXYZ() instead of dynamic_cast 2017-02-23 23:28:50 +01:00
scrawl
f7cb4bd245 optimizer: remove some cruft 2017-02-23 23:28:50 +01:00
scrawl
e33829d493 Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
Remove optimizers that won't be used.
2017-02-23 23:28:50 +01:00