mirror of
https://github.com/X0nk/Bliss-Shader.git
synced 2026-10-10 05:03:04 +08:00
add alternate mode for SSRT handheld light shadows to only work in first person view
This commit is contained in:
@@ -400,7 +400,7 @@ vec2 SSRT_Shadows(vec3 viewPos, bool depthCheck, vec3 lightDir, float noise, boo
|
||||
}
|
||||
return vec2(shadows, SSS / samples );
|
||||
}
|
||||
#ifdef HANDHELD_LIGHTSOURCE_SSRT_SHADOWS
|
||||
#if HANDHELD_LIGHTSOURCE_SSRT_SHADOWS > 0
|
||||
float handHeldLight_SSRT_Shadows(vec3 viewPos, vec3 shadowHandPos, float noise){
|
||||
|
||||
vec3 shadowHandViewPos = mat3(gbufferModelView) * shadowHandPos;
|
||||
@@ -1250,9 +1250,14 @@ void main() {
|
||||
,mainHandPos, mainHandCol, offHandPos, offHandCol
|
||||
);
|
||||
|
||||
#ifdef HANDHELD_LIGHTSOURCE_SSRT_SHADOWS
|
||||
#if HANDHELD_LIGHTSOURCE_SSRT_SHADOWS > 0
|
||||
// make sure not to calculate ssrt shadows if there is no light being held.
|
||||
if(!hand && (heldBlockLightValue > 0 || heldBlockLightValue2 > 0)){
|
||||
#if HANDHELD_LIGHTSOURCE_SSRT_SHADOWS == 1
|
||||
if(!hand && (heldBlockLightValue > 0 || heldBlockLightValue2 > 0)){
|
||||
#elif HANDHELD_LIGHTSOURCE_SSRT_SHADOWS == 2
|
||||
if((firstPersonCamera && !hand) && (heldBlockLightValue > 0 || heldBlockLightValue2 > 0)){
|
||||
#endif
|
||||
|
||||
// whichever held light is brighter gets the shadows
|
||||
vec3 shadowHandPos = heldBlockLightValue > heldBlockLightValue2 ? mainHandPos : offHandPos;
|
||||
|
||||
|
||||
@@ -210,6 +210,9 @@ screen.Ambient_light = Ambient Light
|
||||
option.HANDHELD_LIGHTSOURCE_G = Light Color G
|
||||
option.HANDHELD_LIGHTSOURCE_B = Light Color B
|
||||
option.HANDHELD_LIGHTSOURCE_SSRT_SHADOWS = Shadows from Handheld Light
|
||||
value.HANDHELD_LIGHTSOURCE_SSRT_SHADOWS.0 = §cOFF
|
||||
value.HANDHELD_LIGHTSOURCE_SSRT_SHADOWS.1 = ON §bⓘ First & Third Person§r
|
||||
value.HANDHELD_LIGHTSOURCE_SSRT_SHADOWS.2 = ON §bⓘ First Person only§r
|
||||
|
||||
option.FLASHLIGHT_BOUNCED_INDIRECT = (Flashlight) Bounced light §c⚠ CURRENTLY BROKEN§r
|
||||
option.FLASHLIGHT_FOG_ILLUMINATION = (Flashlight) Fog illumination §c⚠ CURRENTLY BROKEN§r
|
||||
|
||||
@@ -96,7 +96,7 @@
|
||||
#define HANDHELD_LIGHTSOURCE_G 0.5 // [0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.11 0.12 0.13 0.14 0.15 0.16 0.17 0.18 0.19 0.2 0.21 0.22 0.23 0.24 0.25 0.26 0.27 0.28 0.29 0.3 0.31 0.32 0.33 0.34 0.35 0.36 0.37 0.38 0.39 0.4 0.41 0.42 0.43 0.44 0.45 0.46 0.47 0.48 0.49 0.5 0.51 0.52 0.53 0.54 0.55 0.56 0.57 0.58 0.59 0.6 0.61 0.62 0.63 0.64 0.65 0.66 0.67 0.68 0.69 0.7 0.71 0.72 0.73 0.74 0.75 0.76 0.77 0.78 0.79 0.8 0.81 0.82 0.83 0.84 0.85 0.86 0.87 0.88 0.89 0.9 0.91 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 1.0]
|
||||
#define HANDHELD_LIGHTSOURCE_B 0.25 // [0.01 0.02 0.03 0.04 0.05 0.06 0.07 0.08 0.09 0.1 0.11 0.12 0.13 0.14 0.15 0.16 0.17 0.18 0.19 0.2 0.21 0.22 0.23 0.24 0.25 0.26 0.27 0.28 0.29 0.3 0.31 0.32 0.33 0.34 0.35 0.36 0.37 0.38 0.39 0.4 0.41 0.42 0.43 0.44 0.45 0.46 0.47 0.48 0.49 0.5 0.51 0.52 0.53 0.54 0.55 0.56 0.57 0.58 0.59 0.6 0.61 0.62 0.63 0.64 0.65 0.66 0.67 0.68 0.69 0.7 0.71 0.72 0.73 0.74 0.75 0.76 0.77 0.78 0.79 0.8 0.81 0.82 0.83 0.84 0.85 0.86 0.87 0.88 0.89 0.9 0.91 0.92 0.93 0.94 0.95 0.96 0.97 0.98 0.99 1.0]
|
||||
#define HANDHELD_LIGHTSOURCE_SPECULAR
|
||||
#define HANDHELD_LIGHTSOURCE_SSRT_SHADOWS
|
||||
#define HANDHELD_LIGHTSOURCE_SSRT_SHADOWS 2 // [0 1 2]
|
||||
|
||||
// #define FLASHLIGHT_BOUNCED_INDIRECT
|
||||
// #define FLASHLIGHT_FOG_ILLUMINATION
|
||||
|
||||
File diff suppressed because one or more lines are too long
Reference in New Issue
Block a user