elsid
020b31395b
Reserve arrays before merging
2024-05-09 17:21:56 +02:00
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