AnyOldName3
9ec59783ba
Add basic support for distant terrain CLSB
...
(cherry picked from commit 0f9dc3e65b72e6fff762f7a0933bae6f861e5fd4)
2018-02-23 23:37:04 +00:00
AnyOldName3
cb6767b4fc
Move the declaration of ComputeLightSpaceBounds to the header so that it can be accessed from other compilation units.
...
(cherry picked from commit 8ac4fb208897a18da4934dd6f2fe84560b44ba9d)
2018-02-23 23:35:01 +00:00
AnyOldName3
6251e0519e
Use CLSB results to reduce maximum shadow map distance when sensible.
2018-02-23 23:31:53 +00:00
AnyOldName3
9f20aaccfb
Add some more advanced settings to control shadows.
2018-01-25 16:08:34 +00:00
AnyOldName3
6ec893b618
Merge remote-tracking branch 'refs/remotes/upstream/master'
2018-01-22 15:54:13 +00:00
scrawl
bba9a8dd91
Don't update off-screen animations
...
Make flying creatures animate in-place when out of processing range
2018-01-11 01:49:35 +00:00
AnyOldName3
bf9a1ded63
Mark a function as override
2018-01-02 16:39:05 +00:00
AnyOldName3
c3e0398d1c
Add settings
2017-12-27 02:32:17 +00:00
AnyOldName3
c192c851db
Make disabling shadows disable their performance impact, too.
2017-12-26 23:51:50 +00:00
AnyOldName3
8957c92a36
Switch to a more industry-standard shadow map splitting scheme
2017-12-17 00:52:10 +00:00
AnyOldName3
7cce2d6f87
Implement a more sensible shadow map cascading system
2017-12-12 22:37:40 +00:00
AnyOldName3
98cd9fc144
Add preliminary support for global shader defines.
2017-11-22 20:07:07 +00:00
AnyOldName3
e201e359a9
Move Shadow to Components
2017-11-08 01:44:49 +00:00
scrawl
03554b2f4b
Fix some style issues flagged by cppcheck
2017-10-15 17:06:58 +02:00
Miloslav Číž
380a5799dd
use bbox as wrap range & apply to all particle systems
2017-10-14 21:42:19 +02:00
Miloslav Číž
33a1459b11
search for particle system by class name
2017-10-14 21:41:47 +02:00
scrawl
dca31b7ffa
Remove redundant _boundingBoxComputed which no longer exists in osg master ( Fixes #4075 )
2017-09-04 19:35:42 +00:00
scrawl
2e58024f1c
Fix intersections with Rig/MorphGeometry, was caused by an issue in the LineSegmentIntersector not respecting the cullingActive flag of a drawable.
2017-09-03 14:14:15 +00:00
scrawl
5e790b567e
Fix node path issue
...
Needs to be set so that the 'cullingActive' flag of the node path's end can be checked
2017-09-01 22:12:40 +00:00
scrawl
4bef8260ab
Add const qualifiers
2017-09-01 21:42:36 +00:00
scrawl
5d524a6a10
Add custom version of MorphGeometry replacing osgAnimation
...
Double buffering, custom bounding box and the update in the cull visitor (instead of update) are now all handled internally rather than needing hacks and/or callbacks.
2017-09-01 21:42:36 +00:00
scrawl
209e139aa8
Move double buffering implementation inside RigGeometry
...
The double buffering is an implementation detail so it should be handled as such, rather than mandating the scene graph to be structured in a certain way.
Override accept(NodeVisitor&) instead of using callbacks.
2017-09-01 21:42:34 +00:00
scrawl
45f7563a55
Revert "Revert "Check for a Geometry node when attaching bodyparts""
...
Issue with shaders has been fixed with b9931fb71cb028aa8f8bb9eefb611ecb23ec096e
This reverts commit a1e3fb7604a11307ed08f1ec84b31a359cb5ead5.
2017-08-31 21:40:35 +00:00
scrawl
a1e3fb7604
Revert "Check for a Geometry node when attaching bodyparts"
...
This reverts commit 3fc86342061bab0c30bed6821f66933fef546930.
2017-08-29 22:40:19 +00:00
scrawl
3fc8634206
Check for a Geometry node when attaching bodyparts ( Fixes #3957 )
2017-08-29 12:55:42 +00:00
Allofich
42402976e3
Fixes for building in MSVC
2017-06-13 19:38:12 +09:00
Bret Curtis
f0b21cca22
use own inline hash_combine function
2017-06-12 00:32:28 +02:00
Bret Curtis
154d7cffa2
replace and purge boost::function
2017-06-09 19:08:53 +02:00
Bret Curtis
07f75e1104
replace boost::shared_ptr in extern and components
2017-06-09 19:08:53 +02:00
Ewan Higgs
38a2de3c51
convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis
2017-06-09 16:49:25 +02:00
scrawl
8d84869432
Fix commit 8f71b65d38f (don't overwrite the previous user data)
...
This resulted in a crash/corruption because the KeyframeController, for performance reasons, does not check that the expected user data is there and of correct type.
(Fixes #3829 )
2017-05-05 05:27:00 +02:00
scrawl
8f71b65d38
sceneutil/attach: inherit the UserDataContainer to avoid the resource cache from being cleared incorrectly
2017-04-14 15:04:53 +02:00
scrawl
3d58ba7301
Fix boolean test
2017-03-15 17:50:13 +01:00
scrawl
34130fc5cc
Fix handling in LightListCallback when the node is not a Group
2017-03-14 19:27:55 +01:00
scrawl
b78a9f89af
Refactor LightListCallback to allow for integration in custom Drawables.
2017-03-14 19:27:55 +01:00
scrawl
13a6070629
Remove warning spam in skeleton.cpp
...
If the root bone is missing, that is caused by all bones being missing which will have been logged already.
2017-03-13 02:48:22 +01:00
scrawl
c1b1d502ee
Fix up commit 330e5fefd1274b21e42af59f5ed2b01ebefb0f01
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
29556a1802
More consistent wording of errors/warnings
...
A Warning indicates a potential problem in the content file(s) that the user told OpenMW to load. E.g. this might cause an object to not display at all or as intended, however the rest of the game will run fine.
An Error, however, is more likely to be a bug with the engine itself - it means that basic assumptions have been violated and the engine might not run correctly anymore.
The above mostly applies to errors/warnings during game-play; startup issues are handled differently: when a file is completely invalid/corrupted to the point that the engine can not start, that might cause messages that are worded as Error due to the severity of the issue but are not necessarily the engine's fault.
Hopefully, being a little more consistent here will alleviate confusion among users as to when a log message should be reported and to whom.
2017-03-04 21:48:31 +01:00
scrawl
706ac45c76
Fix missing particles caused by shallow copy of ParticleSystemController
2017-02-26 23:10:41 +01:00
scrawl
5caf53b6a3
optimizer: avoid reordering nodes
...
Fixes an osgParticle cloning issue.
(Fixes #3773 )
2017-02-26 03:25:17 +01:00
scrawl
a95773beef
Fix unnecessary copy of ParticleSystem in SceneUtil::CopyOp
2017-02-26 03:15:57 +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