Nelsson Huotari
6e77ad1f6a
OSG-Collada animation support
4 years ago
Nelsson Huotari
f78a5d795c
Separate keyframes logic to provide basis for osgAnimation integration.
4 years ago
AnyOldName3
37661bffea
Merge branch 'shadowdisable-fix' into 'master'
...
Make disableShadowsForStateSet a no-op when shadows are disabled
See merge request OpenMW/openmw!205
4 years ago
AnyOldName3
7768556ce6
Set dummy state when disabling shadows indoors
...
As we don't reconfigure all shaders without shadows when we disable them
indoors (as it'd probably add a hitch to transitioning in and out) we
need to set up dummy state so the shaders don't do anything illegal.
This hadn't had symptoms for most objects as when indoors, nearly
everything would be drawn first in one of the water RTTs, which had
dummy state to disable shadows already. This wasn't true of the water
plane itself, though, yet somehow it took until just now for anyone to
report that.
This resolves vtastek's issue where the water would be invisible indoors
4 years ago
AnyOldName3
1e0df23d14
Merge branch 'shadows-bin' into 'master'
...
Use a custom renderbin to avoid pointless OpenGL state switches
See merge request OpenMW/openmw!402
4 years ago
AnyOldName3
fcfd340c69
Actually copy alpha blended drawables to the new stategraph
4 years ago
AnyOldName3
55f65752fd
Don't bind unnecessary colour buffer when drawing shadow maps
4 years ago
AnyOldName3
cdbf19a508
Tidy up run-on lines
4 years ago
AnyOldName3
296dce470a
Spelling fix
4 years ago
AnyOldName3
72f7e6a702
Handle all shadow alpha uniforms in shadowsbin
4 years ago
AnyOldName3
5d046bc95d
Mark override
4 years ago
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
4 years ago
AnyOldName3
449506fef1
Attempt to explain what shadowsbin is doing
4 years ago
Alexei Dobrohotov
4fc5e22e9e
NIF fixes and cleanup
...
Get rid of NodeIndexHolder
Use unsigned 32-bit type for NIF record index
Fix calculation of the number of UV sets
4 years ago
AnyOldName3
f7dddb8857
Merge branch '3' of https://gitlab.com/bzzt/openmw into shadows-bin
...
This won't actually work.
4 years ago
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
4 years ago
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
4 years ago
Alexei Dobrohotov
9f08dc9968
Revert "Merge branch 'skinning' into 'master'"
...
This reverts merge request !327
4 years ago
Alexei Dobrohotov
6be808e301
RigGeometry: convert some pairs to structs
4 years ago
AnyOldName3
fd14dad789
const osg::ref_ptf reference should be faster than value as constructor and destructor are non-trivial
...
I played around in GodBolt and got into an argument to determine this. The difference will be immeasurably small, but my curiosity has been satisfied.
4 years ago
AnyOldName3
707204133d
Double-buffer shadow uniforms that change each frame
4 years ago
AnyOldName3
ce98d7053b
Double buffer view-dependent data stateset
4 years ago
AnyOldName3
98b2d5d921
Make shadow debug HUD thread-safe
...
* Double buffer the frustum uniforms.
* Don't mess with the debug geometry's StateSet.
* Change two-element vectors to arrays so the size is explicit.
4 years ago
Andrei Kortunov
215ddb9106
Do not print warnings for VisController
4 years ago
Capostrophic
46825e8a4d
Move NIF record index back to a separate user object
...
This makes sure it's never erroneously optimized out. NodeIndexHolders don't need to be cloned as their record index is never supposed to be changed.
5 years ago
Capostrophic
cc791af0f5
Serialization fixes
...
Make sure NifOsg::MatrixTransform serialization behaves as intended
Add a dummy serializer for NifOsg::UVController
5 years ago
Capostrophic
3b55d657e5
CopyRigVisitor: Log the number of parents in multiple parents error
5 years ago
Capostrophic
a61267f57d
Replace NodeUserData with a custom transform node
5 years ago
Capostrophic
4c9cefefdd
Get rid of NifOsg::CollisionSwitch
5 years ago
Bret Curtis
0c2fea8254
Merge pull request #2932 from elsid/replace_open_threads
...
Replace OpenThreads by std types
5 years ago
Andrei Kortunov
ef6fe8d52a
Fix crash in the stateset updater (regression #5478 )
5 years ago
elsid
40ad87bc4d
Replace OpenThreads by std types
5 years ago
elsid
3251687a3d
Use std types for WorkQueue
5 years ago
psi29a
f94ca28dbe
#5463 : Optimizer fix, problem was indeed related to tangents not being transformd properly.
5 years ago
psi29a
66b5cf9f1d
Merge branch 'master' into 'near_far_mode_in_launcher'
...
# Conflicts:
# files/settings-default.cfg
5 years ago
bzzt lost a hitlab login
26ab176389
profiling
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt lost a hitlab login
daa2761c2d
alphablending & billboardfix
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt lost a hitlab login
f12879a04c
allow statesetupdater as cullcallback = faster + works in paging
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt lost a hitlab login
9f0398c021
intersection by refnum tag + enable paging for acti,door,cont
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt lost a hitlab login
ce505a9bb3
crashfix + optimiziation
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
bzzt
d684f1a78f
terrainbased objectpaging
...
Signed-off-by: Bret Curtis <psi29a@gmail.com>
5 years ago
Icecream95
f14db21745
Make disableShadowsForStateSet a no-op when shadows are disabled
...
Otherwise the GPU has to do useless shadow comparisons when shadows
are disabled.
5 years ago
Capostrophic
78b1bbe130
Remove unnecessary null check
5 years ago
Capostrophic
72e5043eda
CopyRigVisitor fixes
...
Make sure it copies all relevant drawable parent nodes (e.g. including the node with the environment map effect)
Make sure it doesn't copy nodes multiple times
5 years ago
psi29a
b72720f357
Merge branch 'shadow-transparency-rework' into 'master'
...
Only alpha-test shadows when necessary
See merge request OpenMW/openmw!170
5 years ago
Bret Curtis
aaa8990006
Merge pull request #2799 from Capostrophic/simplewaterfog
...
Fix simple water with radial fog enabled
5 years ago
Bret Curtis
f51476a3c5
Merge pull request #2816 from Capostrophic/switchlod
...
CollisionSwitch and Switch/LOD node fixes
5 years ago
Bret Curtis
5f0f2f0f16
rename to better reflect what is going on per AnyOldName3 comment; added none option
5 years ago
Bret Curtis
bf6daa7269
Merge pull request #2811 from Capostrophic/emitter
...
Allow particle emitters to be attached to an arbitrary node
5 years ago
Capostrophic
957d2a890f
Ignore empty children of osg::LOD and osg::Switch like in OSG
5 years ago
Capostrophic
63fe02b1ba
CollisionSwitch and Switch/LOD node fixes
...
Properly apply transformations to both switch and LOD nodes
Allow both NiSwitchNode and NiLODNode to be the root node
Properly add CollisionSwitch into the scene graph
5 years ago
psi29a
bb5fe13e13
Make sure it is either one or the other with the default to bounding volumes.
5 years ago
Bret Curtis
d38c3e971c
remove extra line
5 years ago
Bret Curtis
ae729a1ac7
add ability to set the type of near far method to be used in shadow calculation; default to bounding volumes; cleaned up code while there and re-ordered items
5 years ago
Capostrophic
6b874e397b
Make particle system cloning map names more sensible
5 years ago
Capostrophic
f516178ec9
Fix particle processor cloning
...
Extend emitter handling comment in NIF loader
5 years ago
psi29a
476a74c2d3
Merge branch 'bzzt_5_tight_scene_bound' into 'master'
...
Allow use of OSG's Bounding Volumes
See merge request OpenMW/openmw!189
5 years ago
Bret Curtis
31a75a962a
Add 3 additional classes to be ignored who dumping "showscenegraph" debug output; less spammy
5 years ago
Bret Curtis
ca0adc25bb
add two additional classes we do not need to serialize; less pam during `showscenegraph` debug dump.
5 years ago
Bret Curtis
886b9813ad
Something changed in OSG 3.6 that makes the command "showscenegraph" less useful; it writes out raw data of images to the debug output file openmw.ogst. This commit adds the hint and restores default behaviour found in OSG 3.4
5 years ago
bzzt
dc33eeadf1
tightscenebound is uncessary after water bbfix
5 years ago
elsid
c59c8ae1f4
Remove unused macro
5 years ago
Capostrophic
688e804548
Fix simple water with radial fog enabled
5 years ago
Bret Curtis
8a8107e837
as it says; revert vismask and uncomplicate openmw
5 years ago
AnyOldName3
1cf2036386
Don't add empty PrimitiveSets (prevent undefined behaviour)
5 years ago
AnyOldName3
12044a607b
Only alpha-test shadows when necessary
...
Previously we always discarded shadow map fragments if the alpha channel of the output would have been low, but there were some (modded) assets that have non-one alpha but have testing or blending disabled so end up opaque anyway. This lets the shadows of those objects match.
5 years ago
Andrei Kortunov
02d7b13075
Merge pull request #2529 from akortunov/nodecopy
...
Copy transformations data when we clone node
5 years ago
elsid
7ae7cb181d
Support recast mesh rendering
5 years ago
Andrei Kortunov
84979fa8b7
Move VisMask to components
5 years ago
bzzt
d340224c95
shadowsbin for gl state reduction
5 years ago
elsid
2e1d8a5e55
Remove unused virtual modifiers in DebugHUD
...
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
addAnotherShadowMap();
^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is true. Entering loop body
for (int i = 0; i < 2; ++i)
^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is true. Entering loop body
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3094:5: note: Loop condition is false. Execution continues on line 3102
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3126:21: note: Assuming 'i' is < 'numberOfShadowMapsPerLight'
for (int i = 0; i < numberOfShadowMapsPerLight; ++i)
^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3126:5: note: Loop condition is true. Entering loop body
for (int i = 0; i < numberOfShadowMapsPerLight; ++i)
^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: note: This constructor of an object of type 'DebugHUD' has not returned when the virtual method was called
addAnotherShadowMap();
^
/home/elsid/dev/openmw/components/sceneutil/mwshadowtechnique.cpp:3127:9: note: Call to virtual function during construction
5 years ago
elsid
bd149b909f
Remove unused virtual modifiers in ShadowManager
...
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯 9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
setupShadowSettings();
^
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯 9: note: This constructor of an object of type 'ShadowManager' has not returned when the virtual method was called
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp💯 9: note: Call to virtual function during construction
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: warning: Call to virtual function during construction [clang-analyzer-optin.cplusplus.VirtualCall]
enableOutdoorMode();
^
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: note: This constructor of an object of type 'ShadowManager' has not returned when the virtual method was called
/home/elsid/dev/openmw/components/sceneutil/shadow.cpp:104:9: note: Call to virtual function during construction
5 years ago
Andrei Kortunov
f09d20434c
Clamp number of shadow maps
5 years ago
Andrei Kortunov
7074baa1c2
Clamp number of shadow maps, as described in docs
5 years ago
bzzt
b6ed2f1718
Add optional shadow map max distance and fading
5 years ago
Andrei Kortunov
e568ad30ea
Copy transformations data when we clone node (bug #5163 )
5 years ago
Andrei Kortunov
d4a8023e1a
Merge pull request #2485 from Capostrophic/lighting
...
Add support for QuadraticMethod/LinearMethod setup (bug #4965 , continuation)
5 years ago
capostrophic
62fd2d47a5
Rewrite flickering/pulsing to work more like vanilla (bug #4952 )
5 years ago
capostrophic
c0d5cbdc8b
Add support for QuadraticMethod/LinearMethod setup (bug #4965 )
5 years ago
Andrei Kortunov
8557346fbd
Use glow for enchanted arrows (feature #5122 )
5 years ago
Capostrophic
6622e36226
Only merge pure osg::Groups in the optimizer
6 years ago
Alexei Dobrohotov
1444ef6f43
Merge pull request #2298 from akortunov/optimize
...
Do not allocate eight dummy LightStateAttribute's for every stateset
6 years ago
Capostrophic
05d94d35f9
Make disabled shadow defines map static
6 years ago
Capostrophic
85e99182ce
Revise light source configuration (bug #4965 )
...
Set up attenuation less awkwardly
Use global attenuation settings for magic light source
Use constant attenuation settings
6 years ago
bzzt
1a65adacdd
Do not allocate dummy LightStateAttribute's for every stateset
6 years ago
Andrei Kortunov
b466bfee40
Enable light sources directly to avoid virtual calls
6 years ago
Andrei Kortunov
b2fca46206
Fix a couple of minor issues in shadows
6 years ago
Capostrophic
de572226e4
Update optimizer with upstream improvements
6 years ago
Bret Curtis
7917f1fc84
Merge pull request #2252 from akortunov/terrain
...
Do not allocate empty callbacks in the RigGeometry
6 years ago
bzzt
4ab93aeffe
Do not allocate empty callbacks in the RigGeometry
6 years ago
elsid
8e09468f45
Don't set display list usage for navmesh
6 years ago
elsid
4395a92c35
Use display list to render navmesh
...
Slightly improves performance of massive navmesh rendering.
6 years ago
Andrei Kortunov
bacaa1f789
Get rid of C-style limits in the shadows code
6 years ago
Bret Curtis
551563cbfb
Merge branch 'clsb-warning' into 'master'
...
Hopefully fix Clang warning about hiding overloaded virtual functions
See merge request OpenMW/openmw!82
6 years ago
elsid
47e87cc2bd
Fix ODR violation for VDSMCameraCullCallback
...
This class is also defined in OpenSceneGraph at global namespace.
6 years ago
AnyOldName3
d34724a3c4
Hopefully fix Clang warning about hiding overloaded virtual functions
6 years ago
Grigory Latyshev
3872d7476b
Move makeOsgVec3f() to settingsutils.hpp
...
Remove all other makeOsgVec3f() implementations
6 years ago
bzzt
8c649f05e6
Don't reallocate light list vector unnecessarily
6 years ago
bzzt
a567111400
Use emplace instead of find-assign
6 years ago
Andrei Kortunov
3032b177a1
Remove redundant includes
6 years ago
Chris Djali
cb5a57e41b
Merge pull request #1547 from AnyOldName3/osgshadow-test-vdsm
...
Shadows
6 years ago
AnyOldName3
0c8ad0a3bb
Double buffer debug HUD frustum geometries to prevent race conditions.
6 years ago
Bret Curtis
f4313c02e1
Merge pull request #2153 from akortunov/glowing_windows
...
Native glowing windows support
6 years ago
Andrei Kortunov
60c9806d62
Share RigGeometry node data
6 years ago
Andrei Kortunov
9e4a339ad3
Daytime node switch support (feature #4836 )
6 years ago
AnyOldName3
15547750ba
Correct behaviour of use front face culling setting to not use back face culling either when disabled.
6 years ago
AnyOldName3
cfe921fb82
Remove uneeded includes.
6 years ago
AnyOldName3
2761a38562
Prettify shadow define map setup.
6 years ago
AnyOldName3
57e10e26b2
Make variable name less confusing
6 years ago
AnyOldName3
a24b8ec3d2
Fix enable/disable mixup.
6 years ago
AnyOldName3
556c9a3382
Add normal-offset shadow mapping to remove shadow acne (flicker)
6 years ago
Andrei Kortunov
03b71d3c30
Improve switchable nodes handling by optimizer
6 years ago
AnyOldName3
8482236a82
Merge remote-tracking branch 'upstream/master' into osgshadow-test-vdsm
6 years ago
AnyOldName3
d82c85913a
Don't bother multiplying a matrix by its inverse and applying that to the light direction.
...
Hopefully this will improve numerical stability and reduce shadow flicker a little.
6 years ago
AnyOldName3
4438ab4493
Use CullVisitor traversal mask for light manager.
6 years ago
Andrei Kortunov
2c38e337ae
Support NiSwitchNode (feature #4812 )
6 years ago
Andrei Kortunov
8e6fd348d1
RigGeometry optimization: optimize geometry optimization
6 years ago
Andrei Kortunov
254f01b89d
RigGeometry optimization: vector iteration is more cheap than map iteration
6 years ago
Ilya Zhuravlev
07e9ce84b3
Replace volatile bools with std::atomic<bool>
6 years ago
AnyOldName3
199e6ed82d
Revert "Use forward declaration to reduce build times."
...
This reverts commit 305b9826df
.
6 years ago
AnyOldName3
305b9826df
Use forward declaration to reduce build times.
6 years ago
AnyOldName3
7b108ae9a2
Disable depth sorting for translucent objects in the shadow maps
6 years ago
AnyOldName3
53188f61fc
Fix animation bug with VAOs
6 years ago
Bret Curtis
fc19c842cf
Revert "fix a rig bug visible with OSG_VERTEX_BUFFER_HINT=VAO"
6 years ago
AnyOldName3
2d5da1a6fa
Don't exclusively rely on a shadow map if its bounds have been expanded since the cull traversal.
6 years ago
mp3butcher
7a85e10d2f
fix a rig bug visible with OSG_VERTEX_BUFFER_HINT=VAO
6 years ago
AnyOldName3
0a409c0ab8
Make shadow map front-face culling configurable
6 years ago
AnyOldName3
dd207d9e54
Make the shadow polygon offset parameters configurable
6 years ago
AnyOldName3
aa11832949
Resolve bugs with depth-clamped shadow maps
6 years ago
AnyOldName3
7ad4882f0c
Fix debug hud frustum outline disappearence
6 years ago
AnyOldName3
061fa57335
Switch to better-performing data types for debug hud geometry
6 years ago
AnyOldName3
632b0d8979
Make shadow maps use their whole depth range for the overlap with the view frustum and rely on depth clamping to ensure objects outside the frustum still cast shadows.
6 years ago
AnyOldName3
660e423e99
Correct debug hud frustum colour
6 years ago
AnyOldName3
3785ba6aa0
Merge upstream/master
6 years ago
AnyOldName3
1ca7ea23d1
Add extra uniforms to the disabled shadows StateSet so that the shadow texture samplers are bound ot the dummy shadow maps correctly.
6 years ago
AnyOldName3
b0907f8929
Add todos in case they're left until after the shadow PR is merged
6 years ago
AnyOldName3
474770eca8
Switch shadow map rendering to a specialised, simplified shader.
6 years ago
elsid
dc09674362
Add command and settings option to enable actors paths render
6 years ago
elsid
70a369f70e
Add command to enable NavMesh render
...
togglenavmesh or tnm
6 years ago
AnyOldName3
0124be5713
Merge upstream/master
6 years ago
Andrei Kortunov
e06f0b797a
Replace all NULLs to nullptr
6 years ago
Andrei Kortunov
87394f2ebb
Revert "Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437 )"
...
This reverts commit 09427d3f5e
since the
fix is not entirely correct.
6 years ago
Kyle Cooley
6bece13a32
Use new Log class for error message
6 years ago
Kyle Cooley
e2ac392a40
Move common stuff to scene util, fix errors with 1st person meshes
6 years ago
Kyle Cooley
8444ee9981
Start rendering npc's
6 years ago
Andrei Kortunov
09427d3f5e
Take in account transformations of NiTriShape and NiSkinData in skinning (bug #4437 )
6 years ago
Marc Zinnschlag
24ce8cce72
Merged pull request #1898
6 years ago
Andrei Kortunov
0ddd0e4edc
Fix light flicker amplitude calculation
6 years ago
Andrei Kortunov
c677f7ca27
Rework pulsing light sources (bug #4615 )
6 years ago
Marc Zinnschlag
232ea4f793
Merged pull request #1887
6 years ago
Sophie Kirschner
c412f99963
Remove commented lines in UnrefWorkItem::doWork
6 years ago
Andrei Kortunov
ff241fb787
Optimize skinning (task #4605 )
6 years ago
Sophie Kirschner
4dd9386c4f
Fix error: member access into incomplete type 'SceneUtil::UnrefWorkItem'
...
Fixes compile error encountered on OSX 10.9 with g++
sophie:build pineapple$ g++ --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/usr/include/c++/4.2.1
Apple LLVM version 6.0 (clang-600.0.56) (based on LLVM 3.5svn)
Target: x86_64-apple-darwin13.4.0
Thread model: posix
The compilation error:
[ 24%] Building CXX object apps/openmw/CMakeFiles/openmw.dir/mwrender/renderingmanager.cpp.o
In file included from /Users/pineapple/git/openmw/apps/openmw/mwrender/renderingmanager.cpp:1:
In file included from /Users/pineapple/git/openmw/apps/openmw/mwrender/renderingmanager.hpp:4:
/Users/pineapple/git/openmw/openmw-deps/include/osg/ref_ptr:35:36: error: member access into incomplete type 'SceneUtil::UnrefWorkItem'
~ref_ptr() { if (_ptr) _ptr->unref(); _ptr = 0; }
^
/Users/pineapple/git/openmw/./components/sceneutil/unrefqueue.hpp:14:11: note: in instantiation of member function
'osg::ref_ptr<SceneUtil::UnrefWorkItem>::~ref_ptr' requested here
class UnrefQueue : public osg::Referenced
^
/Users/pineapple/git/openmw/./components/sceneutil/unrefqueue.hpp:10:11: note: forward declaration of 'SceneUtil::UnrefWorkItem'
class UnrefWorkItem;
6 years ago
AnyOldName3
db707a31ec
Add clipping planes when allow shadow map overlap is enabled
6 years ago
AnyOldName3
15e820825f
Fix another convex hull clipping issue and restore z-clipping
6 years ago
AnyOldName3
80082308f0
Merge upstream (shadermanager log system revamp)
6 years ago
AnyOldName3
dd501f4132
Make ConvexHull::clip more resilient against large values.
6 years ago
AnyOldName3
987306feb9
Fix ConvexHull::extendTowardsNegativeZ
6 years ago
Andrei Kortunov
1452684d9e
Use new logging system for components
6 years ago
AnyOldName3
3b3721897d
Make indoor shadows disableable.
6 years ago
AnyOldName3
6286f5a1d4
Ensure RigGeometry child geometries have sensible bounds without actually computing them.
6 years ago
AnyOldName3
71778e2552
Disable convex hull clipping based on render leaf traverser results in the z direction.
7 years ago
AnyOldName3
02ab3b466a
Use simplified convex hull clipping maths from the other function doing hte same thing
7 years ago
AnyOldName3
85aba2e1da
Add toggleable shadow debug overlay.
7 years ago
AnyOldName3
ed68db5ef9
Fix issue where the camera frustum cropping wouldn't consider where casters might cast shadows, just where they actually were.
7 years ago
AnyOldName3
f5b144ef77
Improve bounds calculation for shadow casters outside of the viewing frustum
7 years ago
AnyOldName3
50fdd0be99
Resolve computed near plane issues with extremely high viewing distances.
7 years ago
AnyOldName3
2c30bc1b4f
Accidentally fix the one remaing case where shadows look awful while refactoring some stuff.
7 years ago
AnyOldName3
9f0a49c303
Disable CSM when disabled in the settings.
7 years ago
AnyOldName3
84284a60a7
Make CSM shader changes controllable by the setting.
7 years ago
AnyOldName3
5d05aadb37
Begin to let settings toggle between CSM and PSSM
7 years ago
AnyOldName3
7255c266ba
Merge branch 'osgshadow-test-vdsm' into osgshadow-test-dicking-around-with-cascading-shadow-maps
7 years ago
AnyOldName3
fc1aee10f4
Remove function declaration that somehow snuck in.
7 years ago
AnyOldName3
1b30d47d7f
Add a hacky temporary version of cascading shadow maps
7 years ago
AnyOldName3
44b2cf2b7f
Merge upstream.
7 years ago
AnyOldName3
166e7df778
Improve debug HUD frustum
7 years ago
AnyOldName3
4547151863
Add the view frustum to the debug HUD (in the most annoying way possible)
7 years ago
scrawl
6c79c0fb35
Add an empty compileGLObjects implementation to Rig/MorphGeometry to avoid unnecessary creation of display list done by osg
7 years ago
elsid
14daadded7
Add virtual destructors
...
To fix warnings:
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:588:8: warning: delete called on non-final 'NifOsg::ControllerFunction' that has virtual functions but non-virtual destructor
[-Wdelete-non-virtual-dtor]
delete __p;
^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:595:4: note: in instantiation of function template specialization
'std::__shared_count<__gnu_cxx::_S_atomic>::__shared_count<NifOsg::ControllerFunction *>' requested here
: __shared_count(__p)
^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr_base.h:1079:17: note: in instantiation of function template specialization
'std::__shared_count<__gnu_cxx::_S_atomic>::__shared_count<NifOsg::ControllerFunction *>' requested here
: _M_ptr(__p), _M_refcount(__p, typename is_array<_Tp>::type())
^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/shared_ptr.h:129:25: note: in instantiation of function template specialization 'std::__shared_ptr<NifOsg::ControllerFunction,
__gnu_cxx::_S_atomic>::__shared_ptr<NifOsg::ControllerFunction, void>' requested here
shared_ptr(_Yp* __p) : __shared_ptr<_Tp>(__p) { }
^
/home/elsid/dev/openmw/components/nifosg/nifloader.cpp:242:39: note: in instantiation of function template specialization 'std::shared_ptr<NifOsg::ControllerFunction>::shared_ptr<NifOsg::ControllerFunction, void>' requested here
callback->setFunction(std::shared_ptr<NifOsg::ControllerFunction>(new NifOsg::ControllerFunction(key)));
^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/unique_ptr.h:78:2: warning: delete called on non-final 'MWGui::ResponseCallback' that has virtual functions but non-virtual destructor
[-Wdelete-non-virtual-dtor]
delete __ptr;
^
/usr/bin/../lib64/gcc/x86_64-pc-linux-gnu/7.3.1/../../../../include/c++/7.3.1/bits/unique_ptr.h:268:4: note: in instantiation of member function 'std::default_delete<MWGui::ResponseCallback>::operator()' requested here
get_deleter()(__ptr);
^
/home/elsid/dev/openmw/apps/openmw/mwgui/dialogue.cpp:58:23: note: in instantiation of member function 'std::unique_ptr<MWGui::ResponseCallback, std::default_delete<MWGui::ResponseCallback> >::~unique_ptr' requested here
PersuasionDialog::PersuasionDialog(ResponseCallback* callback)
^
7 years ago
AnyOldName3
e885612bd7
Make a dynamic cast static
7 years ago
AnyOldName3
b553b58de5
Fix another compiler warning
7 years ago
AnyOldName3
3bed2a7b01
Fix some copiler warnings (hopefully)
7 years ago
AnyOldName3
fc41902798
Replace a dynamic cast with string comarison
7 years ago
AnyOldName3
bc4b4c66e4
(Hopefully) add include which G++ requires even though VC++ doesn't.
7 years ago
AnyOldName3
d1a2955fa1
Merge upstream
7 years ago
AnyOldName3
66a114d6ec
Fix a couple of warnings
7 years ago
AnyOldName3
f9cf1ac94b
Separate indoor and outdoor shadow casting masks.
7 years ago
AnyOldName3
35eb71052e
Tidy up the shadow manager
7 years ago
AnyOldName3
882b63cba9
Make split point control parameters configurable with the new shadow technique.
7 years ago
AnyOldName3
e233dae1cd
Hook up the new shadow technique
7 years ago
AnyOldName3
97b607fc66
Make whitespace match upstream OSG
7 years ago
AnyOldName3
99db93510c
Undo minor cockup where the same file appeared twice
7 years ago
AnyOldName3
639a4f5e8c
Remove TODO left in by accident. Also, become 100 commits ahead of upstream.
7 years ago
AnyOldName3
478367bef3
Ensure the debug HUD won't crash if settings are changed at runtime.
7 years ago
AnyOldName3
7b52091a82
Make the debug hud enableable
7 years ago
AnyOldName3
5d719e9d5f
Add the debug HUD to the new shadow technique
7 years ago
AnyOldName3
76f23c28b1
Make shadows disableable.
7 years ago
AnyOldName3
0f1e770c53
Transfer changes to cull to new shadow technique
7 years ago
AnyOldName3
4c31b38f77
Move CLSB changes to new shadow technique
7 years ago
AnyOldName3
06b2ce6646
Fix alignment issues caused by renaming classes
7 years ago
AnyOldName3
02d0ee3485
Rename old shadow class to shadow manager
7 years ago
AnyOldName3
ce02c83089
Copy debug shader source into new shadow technique
7 years ago
AnyOldName3
7bd4c5e4b3
Change class name
7 years ago
AnyOldName3
c815366044
Move to the correct namespace part 2
7 years ago
AnyOldName3
11e59d3c11
Move to the correct namespace.
7 years ago
AnyOldName3
324b398d29
Add a notice clarifying the source of the shadow technique files.
7 years ago
AnyOldName3
7467248555
Undo a modification from the upstream shadow technique which breaks compatibiltiy with OSG 3.4
7 years ago
AnyOldName3
273914aba8
Add osgShadow ViewDependentShadowMaps as they can be found in OSG's GitHub Repository
7 years ago
AnyOldName3
9ec59783ba
Add basic support for distant terrain CLSB
...
(cherry picked from commit 0f9dc3e65b72e6fff762f7a0933bae6f861e5fd4)
7 years ago
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)
7 years ago
AnyOldName3
6251e0519e
Use CLSB results to reduce maximum shadow map distance when sensible.
7 years ago
scrawl
25a6a67508
Fix the optimizer messing up LOD node's children ( Fixes #4301 )
7 years ago
AnyOldName3
9f20aaccfb
Add some more advanced settings to control shadows.
7 years ago
AnyOldName3
6ec893b618
Merge remote-tracking branch 'refs/remotes/upstream/master'
7 years ago
scrawl
bba9a8dd91
Don't update off-screen animations
...
Make flying creatures animate in-place when out of processing range
7 years ago
AnyOldName3
bf9a1ded63
Mark a function as override
7 years ago
AnyOldName3
c3e0398d1c
Add settings
7 years ago
AnyOldName3
c192c851db
Make disabling shadows disable their performance impact, too.
7 years ago
AnyOldName3
8957c92a36
Switch to a more industry-standard shadow map splitting scheme
7 years ago
AnyOldName3
7cce2d6f87
Implement a more sensible shadow map cascading system
7 years ago
AnyOldName3
98cd9fc144
Add preliminary support for global shader defines.
7 years ago
AnyOldName3
e201e359a9
Move Shadow to Components
7 years ago
scrawl
03554b2f4b
Fix some style issues flagged by cppcheck
7 years ago
Miloslav Číž
380a5799dd
use bbox as wrap range & apply to all particle systems
7 years ago
Miloslav Číž
33a1459b11
search for particle system by class name
7 years ago
scrawl
dca31b7ffa
Remove redundant _boundingBoxComputed which no longer exists in osg master ( Fixes #4075 )
7 years ago
scrawl
2e58024f1c
Fix intersections with Rig/MorphGeometry, was caused by an issue in the LineSegmentIntersector not respecting the cullingActive flag of a drawable.
7 years ago
scrawl
5e790b567e
Fix node path issue
...
Needs to be set so that the 'cullingActive' flag of the node path's end can be checked
7 years ago
scrawl
4bef8260ab
Add const qualifiers
7 years ago
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.
7 years ago
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.
7 years ago
scrawl
45f7563a55
Revert "Revert "Check for a Geometry node when attaching bodyparts""
...
Issue with shaders has been fixed with b9931fb71c
This reverts commit a1e3fb7604
.
7 years ago
scrawl
a1e3fb7604
Revert "Check for a Geometry node when attaching bodyparts"
...
This reverts commit 3fc8634206
.
7 years ago
scrawl
3fc8634206
Check for a Geometry node when attaching bodyparts ( Fixes #3957 )
7 years ago
Allofich
42402976e3
Fixes for building in MSVC
8 years ago
Bret Curtis
f0b21cca22
use own inline hash_combine function
8 years ago
Bret Curtis
154d7cffa2
replace and purge boost::function
8 years ago
Bret Curtis
07f75e1104
replace boost::shared_ptr in extern and components
8 years ago
Ewan Higgs
38a2de3c51
convert std::autor_ptr to std::unique_ptr, originally by Ewan Higgs and updated by Bret Curtis
8 years ago
scrawl
8d84869432
Fix commit 8f71b65d38
(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 )
8 years ago
scrawl
8f71b65d38
sceneutil/attach: inherit the UserDataContainer to avoid the resource cache from being cleared incorrectly
8 years ago
scrawl
3d58ba7301
Fix boolean test
8 years ago
scrawl
34130fc5cc
Fix handling in LightListCallback when the node is not a Group
8 years ago
scrawl
b78a9f89af
Refactor LightListCallback to allow for integration in custom Drawables.
8 years ago
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.
8 years ago
scrawl
c1b1d502ee
Fix up commit 330e5fefd1
8 years ago
scrawl
4051018862
optimizer: fix FlattenStaticTransformsVisitor not respecting the is permissible callback
8 years ago
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.
8 years ago
scrawl
706ac45c76
Fix missing particles caused by shallow copy of ParticleSystemController
8 years ago
scrawl
5caf53b6a3
optimizer: avoid reordering nodes
...
Fixes an osgParticle cloning issue.
(Fixes #3773 )
8 years ago
scrawl
a95773beef
Fix unnecessary copy of ParticleSystem in SceneUtil::CopyOp
8 years ago
scrawl
48e0f098ff
Add missing copy of callbacks when a Transform is replaced by Group
...
(Fixes #3770 )
8 years ago
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.
8 years ago
scrawl
e4c12e5e56
optimizer: don't merge Geometry that has transparency sorting enabled
8 years ago
scrawl
ebfd845eae
optimizer: run MERGE_GEOMETRY after removing redundant nodes
8 years ago
scrawl
43f31d6e54
optimizer: fix MERGE_GEOMETRY to work with Geometries not attached to a Geode
8 years ago
scrawl
f2a323238f
optimizer: merge groups as part of REMOVE_REDUNDANT_NODES
8 years ago
scrawl
af716d4b61
optimizer: remove hardcoded condition in RemoveRedundantNodesVisitor
8 years ago
scrawl
698738c649
optimizer: use asXYZ() instead of dynamic_cast
8 years ago
scrawl
f7cb4bd245
optimizer: remove some cruft
8 years ago
scrawl
e33829d493
Add fork of osgUtil::Optimizer with backported fixes that have not been released yet
...
Remove optimizers that won't be used.
8 years ago
scrawl
305cccd263
Don't print Geometry data (vertices, triangles, etc.) in showscenegraph
8 years ago
scrawl
c231b06320
Remove boneOffset node after using it
8 years ago
scrawl
8f79fa3d72
Add resource statistics panel opened with F4
8 years ago
scrawl
4aa40d16bc
Increase the importance of light radius when sorting lights (Bug #2759 )
8 years ago
scrawl
67e4a7e37b
Change some osg::clone's to direct copy constructor to avoid dynamic_cast overhead
8 years ago
scrawl
839928e210
Fix light data being reset for the wrong light
8 years ago
scrawl
a46593fa74
Add PreloadItem::abort() to avoid no longer required cells from blocking the work thread
8 years ago
scrawl
c00532d82d
Add LightStateCache to avoid redundantly setting the same gl_Light
...
Normally, osg::State would do this for us (via lastAppliedAttribute), but since we're using a custom StateAttribute to apply all lights at once, we have to track ourselves.
Further reduction of GL calls in a typical scene by ~2%
8 years ago
scrawl
4d4dc1b9c1
Add specialized DisableLight state attribute for more efficient undoing of light state
...
Seems to reduce # of GL calls by 10-15% in a typical scene.
8 years ago
scrawl
a1069dce3c
Change UnrefQueue to accept osg::Referenced instead of osg::Object
8 years ago
scrawl
33e654f94d
Add explicit handling of most commonly used nodes to NodeVisitors to avoid excessive virtual function calls
8 years ago
scrawl
767eba941f
Speed up finding of attachment node by using the cached nodeMap
8 years ago
scrawl
a76d693627
Speed up ControllerVisitor by skipping sub graphs that have no ChildrenRequiringUpdateTraversal()
8 years ago
scrawl
30b101b175
Fix build error in OSG_USE_FLOAT_MATRIX=OFF mode due to a double implicit conversion to double (pun doubly intended)
8 years ago
scrawl
84a92e665c
Improve performance in RigGeometry by optimizing for the most common case of identity geomToSkelMatrix
8 years ago
scrawl
53e4db8a8f
Add dummy serializer for CameraRelativeTransform to allow serializing content of Sky Root
8 years ago
scrawl
34deb6e7b1
Add 'showSceneGraph' command to export the scene or a particular object to .osgt for debugging purposes
8 years ago
scrawl
eae35af13d
Check if the bounding box changed before calling dirtyBound()
8 years ago
scrawl
cca75499ee
Clear the Skeleton's bone cache when a node is added/removed ( Fixes #3663 )
8 years ago
scrawl
c0faeea938
RigGeometry check if mesh has normals ( Fixes #3667 )
8 years ago
MiroslavR
11565b5966
Make actors with non-portable lights in inventory glow ( Closes #2042 , #3338 )
8 years ago
scrawl
513e1da8a3
Remove unneeded casts
9 years ago
Aesylwinn
5753f52b47
Move water mesh + simple state generation to components library.
9 years ago
scrawl
8f62ea2e80
Fix for "RigGeometry rendering with no skeleton" errors
9 years ago
scrawl
d5f497c47d
Pass the node path instead of the node visitor
9 years ago
scrawl
6fa95e72c5
Pass the traversal number instead of the node visitor
9 years ago
scrawl
824cd3be22
Do not set _boundingBoxComputed which is no longer used
9 years ago
Aesylwinn
b83f522ecd
Changes to color scheme, slight change to drag indicator,
...
change tooltip description.
9 years ago
Aesylwinn
1781aaaa27
Drag indicator.
9 years ago
Aesylwinn
32ba5bf8b8
Initial pathgrid editting, support for selection and movement.
9 years ago
scrawl
17a0353a85
Fix forward declaration mismatch
9 years ago
Aesylwinn
14ae232938
Remove now unnecessary factory class.
...
It was originally used for storing normals, but that functionality
was removed.
9 years ago
Aesylwinn
b11f5b2717
Make edges differently colored.
9 years ago
Aesylwinn
0eb863d8fc
Change color to blue to match the pathgrid visibility selector in the
...
editor and slightly increase the scaling.
9 years ago
Aesylwinn
7f0cc6e583
Add a color gradiant to pathgrid nodes to make them less of an eyesore.
9 years ago
Aesylwinn
3d26ff08c4
Get rid of lighting.
9 years ago
Aesylwinn
d141672b53
Pathgrid geometry creator
9 years ago
scrawl
2f8be401cc
Add the unref work items to the front of the workqueue (Bug #3273 )
...
Ensures that memory still gets freed even if the workqueue is overloaded.
9 years ago
scrawl
8052225460
Remove leftover call to setTexCoordArrayList
9 years ago
scrawl
cc0afe901f
Store a pointer to tangents array to avoid potential type casting issue
9 years ago
scrawl
d1f6169889
Add special handling of RigGeometry tangents in ShaderVisitor
9 years ago
scrawl
95e80e7eff
RigGeometry: don't directly modify the primitive set list
...
This is to ensure that an element buffer object will be assigned to the primitive sets if necessary.
9 years ago
scrawl
c73ec71123
Revert "Store the RigGeometry's source vertices and normals directly"
...
This reverts commit 7a347e3483
.
9 years ago
scrawl
60c8c4fdda
Revert "Animate tangents in RigGeometry"
...
This reverts commit 9cf963b751
.
9 years ago
scrawl
9cf963b751
Animate tangents in RigGeometry
9 years ago
scrawl
7a347e3483
Store the RigGeometry's source vertices and normals directly
9 years ago
scrawl
d986b1a48b
Add comment
9 years ago
scrawl
1abb77f8a1
Cleanup
9 years ago
scrawl
9f03982e0b
Use a dedicated VBO for RigGeometry's vertices and normals
...
The VBO used by the source geometry's arrays may be unintentionally shared with other RigGeometries.
The vertices and normals are the only attributes that are modified at all, so using a dedicated VBO for these should improve performance further.
9 years ago
scrawl
50b8260a39
Disable VBOs in RigGeometry while investigating a crash possibly related to commit cda8a88f0d
9 years ago
scrawl
4eb090a8d0
Set the RigGeometry vertex buffer object usage to GL_DYNAMIC_DRAW
9 years ago
scrawl
174dd82894
Manually apply the osg::Light state
...
Reduce the amount of virtual function calls. Don't use the osg::Light's lightNum. Don't set spotlight state that we're not using (yet).
9 years ago
scrawl
58e0e8bd4e
Enable vertex buffer objects in RigGeometry
9 years ago
scrawl
f898bf493f
Don't use Geodes
9 years ago
scrawl
137dde7cf8
Include cleanup
9 years ago
scrawl
0df975a4d7
Properly detach nodes in CopyRigVisitor ( Fixes #3234 )
9 years ago
scrawl
563807ee53
Share the StateSet used to invert front face
9 years ago
scrawl
8791063110
Fix "RigGeometry rendering with no skeleton" warnings in rare cases
9 years ago
scrawl
1e5b4bea0a
Don't create an unnecessary osg::Group when copying over a rig
9 years ago
scrawl
90a99991d1
Use empty() instead of !size()
9 years ago
scrawl
3e854a84a2
Slightly more efficient applying of light state
9 years ago
scrawl
f93b7ec943
Fix light state issue
...
GLSL does not respect gl_Disable(GL_LIGHTX), so we have to set unused lights to zero.
Sadly, this change makes the applying of the modelView matrix less efficient. So far I couldn't find a better solution, osg's state tracker keeps getting in the way. :(
9 years ago
scrawl
9376811213
Vertex lighting shader
9 years ago
scrawl
c4d38bb42d
Fix clang analyzer warnings
9 years ago
scrawl
5824619a95
Clean up includes
9 years ago
scrawl
8b596dfcbe
Remove support for OSG 3.2
...
Since commit e8662bea31
, we're using OSG functionality that contains an unfixed crash bug in version 3.2. The bug is fixed in version 3.4 (OSG commit 6351e5020371b0b72b300088a5c6772f58379b84)
9 years ago
Marc Zinnschlag
da6dcfc49e
Merge remote-tracking branch 'scrawl/resource'
9 years ago
scrawl
afe533e670
Accept a const Object in UnrefQueue
9 years ago
scrawl
40a6e05e17
Use a deque instead of vector in UnrefQueue
9 years ago
scrawl
d11c2864df
Introduce UnrefQueue to handle the deleting of no longer needed objects in the background thread
9 years ago
scrawl
84f01b7527
Remove unneeded forward declaration
9 years ago
scrawl
b7e69cbc64
Refactor WorkQueue, merge WorkTicket and WorkItem
...
Allow the caller to hold on to the WorkItem. This makes it possible for a derived WorkItem to store the result of the work within the WorkItem itself.
9 years ago
scrawl
e02f35264f
Work around OSG 3.2 not respecting the DEEP_COPY_CALLBACK flag ( Fixes #3183 )
9 years ago
scrawl
8360cccce7
Don't clone Drawable UpdateCallbacks twice
...
The Drawable copy constructor takes care of that already.
9 years ago
scrawl
aec8c38461
Move observer_ptr include where it belongs
9 years ago
Tobias Kortkamp
0659687bfb
Some fixes for building on FreeBSD
9 years ago
scrawl
458a305bff
OpenCS: add lighting mask
9 years ago
scrawl
e1c7165bfb
Fix bounds calculation for addLight to a transform node
9 years ago
scrawl
93cc08a09c
Lighting fix for LightListCallbacks attached to a Transform node
9 years ago
scrawl
3089aeccc4
Factor out SceneUtil::addLight
9 years ago
scrawl
438b30d6f0
Move configureLight to a separate file
9 years ago
scrawl
daa94cc50e
Fix cppcheck warnings
9 years ago
scrawl
0597c8fd9c
Pass a Vec4f by reference
9 years ago
scrawl
624809c8dc
Minor fix for error handling in skeleton.cpp
9 years ago
scrawl
e39f49a88f
OSG extensions namespace fixes
9 years ago
scrawl
c60f4ba7bd
Make RigGeometry bone references case-insensitive ( Fixes #3058 )
9 years ago
scrawl
258f7a2b42
LightController fixes
9 years ago
scrawl
4a9b37aa53
Fix copy constructor issue
9 years ago
scrawl
c442af09c5
Write more documentation for the lighting system
9 years ago
scrawl
8e9571d155
Double buffer the light StateAttributes and StateSets
...
Fixes a race condition where the position of a light could jump a frame ahead.
9 years ago
scrawl
1f8ee9b8d1
StateSetUpdater: use the frameNumber
...
More robust in case a node is updated twice in the same frame (e.g. because it has multiple parents).
9 years ago
scrawl
eb458bf9c8
Fix inactive RigGeometry not rendering correctly
9 years ago
scrawl
1b77428c59
Use const reference, thanks ace13
9 years ago
scrawl
94e8560bf8
RigGeometry: do not allocate new NodePath every frame
9 years ago
scrawl
6d5aa272fc
RigGeometry: do not update the geomToSkelMatrix more than once per frame
9 years ago
scrawl
75a464f7ec
Fix a typo
9 years ago
scrawl
fc7456e0a1
Explicitely opt for float matrices in performance critical places
9 years ago
scrawl
62169a7039
Use a single-precision PositionAttitudeTransform in speed critical places
9 years ago
scrawl
3bd2aaddea
Adjust PulseSlow light controller ( Fixes #1963 )
9 years ago
scrawl
21e25f4756
Use the traversalNumber as frame number
9 years ago
scrawl
054c3eb24e
Do not deep copy PrimitiveSets when build with OSG 3.5
9 years ago
scrawl
0409e5a043
Use OSG_VERSION_GREATER_EQUAL / LESS_THAN rather than MIN_VERSION_REQUIRED (cosmetic change)
9 years ago
scrawl
f1ac408f35
Place Drawables directly in the scene graph when built with OSG 3.4
...
OSG 3.4 adds the ability to place Drawables directly in the scene graph, without a Geode decorating them. Leveraging this should give a small performance boost, because the redundant Geodes increase culling overhead.
There is still an oustanding issue with the RemoveDrawableVisitor no longer working correctly, because Drawables can have multiple parents.
9 years ago
scrawl
35459f20d5
Refactor lighting mask
9 years ago
scrawl
bd8332d2b0
Remove default copyop argument for nodecallback copy constructors
...
Works around a compiler warning with OSG 3.4:
warning: base class 'class osg::Callback' should be explicitly initialized in the copy constructor [-Wextra]
With no default argument for osg::CopyOp&, the compiler no longer sees the function as a real copy constructor and stops warning about the missing virtual initializations.
We don't care about this warning because there is nothing interesting to initialize in the osg::NodeCallback base anyway.
A proper fix for the warning would require to inserting OSG_VERSION conditional compiling all over the place, that is as long as we are still supporting OSG 3.2.
9 years ago
scrawl
1200ff9186
RigGeometry: fix incorrect bounding box in the first frame
...
The default computeBound() was overriding the manually set bounding box.
9 years ago
scrawl
0210b87ffc
Revert "Fix LightSource crash"
...
This reverts commit f336c6db87
.
Root cause should be fixed in next commit.
9 years ago
scrawl
c996702b56
Fix some uninitialised variables found by static analysis
9 years ago
scrawl
c23609e22b
Cache the light list in LightListCallback
...
When multiple cameras are rendering, the later cameras can reuse the light lists from the first camera.
9 years ago
scrawl
fd1ccd21ff
Disable freezeOnCull for weather particles
9 years ago
scrawl
5ca0ae5232
Don't add the same AlphaFader to multiple nodes
9 years ago
scrawl
f336c6db87
Fix LightSource crash
9 years ago
scrawl
49df6b7450
LightManager: fix incorrect view matrix for RELATIVE_RF cameras
9 years ago
scrawl
6dff11f847
Duplicate code fix
9 years ago
scrawl
8552a9d82c
Add multiple camera support to LightManager
9 years ago
scrawl
8e69c80bf6
Add framenumber checks in various cull callbacks, so we don't update more than once per frame when multiple cameras are used
9 years ago
scrawl
f7e5a40143
Fix typo
9 years ago
scrawl
e9acd135a6
Update todo comment
9 years ago
scrawl
cda8a88f0d
Use DEEP_COPY_PRIMITIVES to work around problem in osg::Geometry copy constructor (Bug #2754 )
9 years ago
scrawl
b3f5ac5dbb
Include cleanup
10 years ago
scrawl
49c07de773
Merge pull request #643 from ace13/win-build-fix
...
Fix build error and a pair of warnings
10 years ago
Alexander "Ace" Olofsson
aaaee74a4d
Fix the comments
10 years ago
scrawl
631cec7304
Take the radius of lights into account when sorting
10 years ago
scrawl
43f9c7f295
Skip the Update traversal for inactive skeletons
10 years ago
scrawl
aad8e7b6d0
Light culling fix
10 years ago
scrawl
18f4eaa8dc
Preliminary handling for overflowing light lists
10 years ago
scrawl
acf9fc2d37
Enable per-frame light list updates (Bug #2638 , Bug #2654 )
...
The performance impact isn't so big anymore since the last commit.
10 years ago
scrawl
1d198a5592
Keep the light list StateSet cache for more than one frame
10 years ago
scrawl
b204396b57
Minor fix
10 years ago
scrawl
a1e74a35a2
Revert "Use the WorkQueue to update skinning"
...
This reverts commit d52d0d9640
.
Moving to branch
10 years ago
scrawl
9c86d4f8bc
Race condition fix
10 years ago
scrawl
d52d0d9640
Use the WorkQueue to update skinning
10 years ago
scrawl
cc71e894e1
Add WorkQueue class
10 years ago
scrawl
9c9b83f8e2
Changes to compile with osg-svn 3.3.8
10 years ago
scrawl
5a7f2a4f1f
Restore light attenuation settings
10 years ago
scrawl
01944c33f5
Basic water rendering
10 years ago
scrawl
c85764b654
Wireframe mode
10 years ago
scrawl
fd50be0fb8
Restore various gameplay
10 years ago
scrawl
6231cd8557
RigGeometry clone fix
10 years ago