1
0
Fork 0
mirror of https://github.com/OpenMW/openmw.git synced 2025-01-16 18:59:57 +00:00
Commit graph

42 commits

Author SHA1 Message Date
elsid
50d8bd9cdd
Disable clang-format for files that should have minimal diff with OSG 2022-09-12 23:57:10 +02:00
psi29a
b551e69b6f #5534 remove OSG 3.4 support and require at least 3.6.5 support 2022-08-09 21:07:28 +00: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 #6684

See merge request OpenMW/openmw!1732
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 (#3222)
This PR restores a minor peculiarity of `_mergeAlphaBlending` behaviour unintentionally changed by PR #3162.
2021-11-07 10:36:22 +01:00
Bo Svensson
031871cd48
speeds up optimizer (#3162)
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 (#3111)
* 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 #5463: 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 #4812) 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 #4301) 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 #3773)
2017-02-26 03:25:17 +01:00
scrawl
48e0f098ff Add missing copy of callbacks when a Transform is replaced by Group
(Fixes #3770)
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