AnyOldName3
ce2bcba5d4
Replace deprecated alpha test in shader visitor
2020-12-17 14:57:43 +00:00
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
2020-11-16 21:01:20 +00:00
AnyOldName3
1e0df23d14
Merge branch 'shadows-bin' into 'master'
...
Use a custom renderbin to avoid pointless OpenGL state switches
See merge request OpenMW/openmw!402
2020-11-13 16:29:41 +00:00
AnyOldName3
55f65752fd
Don't bind unnecessary colour buffer when drawing shadow maps
2020-11-12 17:55:10 +00:00
AnyOldName3
72f7e6a702
Handle all shadow alpha uniforms in shadowsbin
2020-11-12 00:26:30 +00:00
Alexei Dobrohotov
53f91a3aa5
Merge pull request #3018 from akortunov/emplace
...
Use emplace_back instead of push_back
2020-11-01 01:58:56 +03:00
AnyOldName3
f7dddb8857
Merge branch '3' of https://gitlab.com/bzzt/openmw into shadows-bin
...
This won't actually work.
2020-10-23 17:55:15 +01:00
Andrei Kortunov
065ed5138e
Use emplace_back instead of push_back
2020-10-18 10:27:35 +04:00
Andrei Kortunov
8ca3c3b123
Mark overrided methods by override keyword
2020-10-16 22:18:54 +04:00
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.
2020-08-20 03:01:43 +01:00
AnyOldName3
707204133d
Double-buffer shadow uniforms that change each frame
2020-08-20 00:38:13 +01:00
AnyOldName3
ce98d7053b
Double buffer view-dependent data stateset
2020-08-19 22:55:41 +01:00
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.
2020-08-19 19:29:19 +01:00
elsid
40ad87bc4d
Replace OpenThreads by std types
2020-06-25 22:16:09 +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
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.
2020-04-10 15:45:37 +01:00
bzzt
d340224c95
shadowsbin for gl state reduction
2019-11-20 13:37:00 +00:00
bzzt
b6ed2f1718
Add optional shadow map max distance and fading
2019-11-02 18:06:39 +03:00
Andrei Kortunov
b2fca46206
Fix a couple of minor issues in shadows
2019-03-19 09:14:07 +04:00
Andrei Kortunov
bacaa1f789
Get rid of C-style limits in the shadows code
2019-03-09 13:52:03 +04:00
elsid
47e87cc2bd
Fix ODR violation for VDSMCameraCullCallback
...
This class is also defined in OpenSceneGraph at global namespace.
2019-03-07 23:49:23 +03:00
AnyOldName3
0c8ad0a3bb
Double buffer debug HUD frustum geometries to prevent race conditions.
2019-02-19 18:13:03 +00:00
AnyOldName3
15547750ba
Correct behaviour of use front face culling setting to not use back face culling either when disabled.
2019-02-01 00:29:13 +00:00
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.
2019-01-24 23:07:38 +00:00
AnyOldName3
7b108ae9a2
Disable depth sorting for translucent objects in the shadow maps
2018-12-19 01:45:05 +00:00
AnyOldName3
2d5da1a6fa
Don't exclusively rely on a shadow map if its bounds have been expanded since the cull traversal.
2018-12-08 20:39:41 +00:00
AnyOldName3
0a409c0ab8
Make shadow map front-face culling configurable
2018-12-01 00:26:43 +00:00
AnyOldName3
dd207d9e54
Make the shadow polygon offset parameters configurable
2018-11-30 00:55:54 +00:00
AnyOldName3
aa11832949
Resolve bugs with depth-clamped shadow maps
2018-11-29 01:17:58 +00:00
AnyOldName3
7ad4882f0c
Fix debug hud frustum outline disappearence
2018-11-21 23:45:47 +00:00
AnyOldName3
061fa57335
Switch to better-performing data types for debug hud geometry
2018-11-21 22:38:50 +00:00
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.
2018-11-20 23:02:28 +00:00
AnyOldName3
660e423e99
Correct debug hud frustum colour
2018-11-20 23:01:04 +00:00
AnyOldName3
b0907f8929
Add todos in case they're left until after the shadow PR is merged
2018-10-18 16:01:36 +01:00
AnyOldName3
474770eca8
Switch shadow map rendering to a specialised, simplified shader.
2018-10-16 21:23:31 +01:00
AnyOldName3
db707a31ec
Add clipping planes when allow shadow map overlap is enabled
2018-08-23 13:14:02 +01:00
AnyOldName3
15e820825f
Fix another convex hull clipping issue and restore z-clipping
2018-08-21 14:00:29 +01:00
AnyOldName3
dd501f4132
Make ConvexHull::clip more resilient against large values.
2018-08-17 17:47:52 +01:00
AnyOldName3
987306feb9
Fix ConvexHull::extendTowardsNegativeZ
2018-08-16 23:48:19 +01:00
AnyOldName3
71778e2552
Disable convex hull clipping based on render leaf traverser results in the z direction.
2018-07-31 23:42:44 +01:00
AnyOldName3
02ab3b466a
Use simplified convex hull clipping maths from the other function doing hte same thing
2018-07-31 23:30:15 +01:00
AnyOldName3
ed68db5ef9
Fix issue where the camera frustum cropping wouldn't consider where casters might cast shadows, just where they actually were.
2018-06-19 23:48:59 +01:00
AnyOldName3
f5b144ef77
Improve bounds calculation for shadow casters outside of the viewing frustum
2018-06-12 17:04:56 +01:00
AnyOldName3
50fdd0be99
Resolve computed near plane issues with extremely high viewing distances.
2018-05-29 00:52:43 +01:00
AnyOldName3
2c30bc1b4f
Accidentally fix the one remaing case where shadows look awful while refactoring some stuff.
2018-05-18 22:39:57 +01:00
AnyOldName3
9f0a49c303
Disable CSM when disabled in the settings.
2018-05-17 20:27:10 +01:00
AnyOldName3
5d05aadb37
Begin to let settings toggle between CSM and PSSM
2018-05-17 16:57:01 +01:00
AnyOldName3
1b30d47d7f
Add a hacky temporary version of cascading shadow maps
2018-05-13 12:56:40 +01:00
AnyOldName3
166e7df778
Improve debug HUD frustum
2018-05-11 19:08:42 +01:00
AnyOldName3
4547151863
Add the view frustum to the debug HUD (in the most annoying way possible)
2018-05-05 00:08:00 +01:00