mirror of
https://github.com/X0nk/Bliss-Shader.git
synced 2025-06-27 02:32:39 +08:00
add DISTANT HORIZONS SHADER PROGRAMS, and then make them work.
This commit is contained in:
19
shaders/world0/dh_shadow.fsh
Normal file
19
shaders/world0/dh_shadow.fsh
Normal file
@ -0,0 +1,19 @@
|
||||
#version 120
|
||||
//#extension GL_ARB_shader_texture_lod : disable
|
||||
|
||||
#include "/lib/settings.glsl"
|
||||
|
||||
flat varying int water;
|
||||
varying vec2 texcoord;
|
||||
uniform sampler2D tex;
|
||||
//////////////////////////////VOID MAIN//////////////////////////////
|
||||
//////////////////////////////VOID MAIN//////////////////////////////
|
||||
//////////////////////////////VOID MAIN//////////////////////////////
|
||||
//////////////////////////////VOID MAIN//////////////////////////////
|
||||
//////////////////////////////VOID MAIN//////////////////////////////
|
||||
|
||||
void main() {
|
||||
// if(water > 0) discard;
|
||||
|
||||
gl_FragData[0] = texture2D(tex, texcoord.xy);
|
||||
}
|
63
shaders/world0/dh_shadow.vsh
Normal file
63
shaders/world0/dh_shadow.vsh
Normal file
@ -0,0 +1,63 @@
|
||||
#version 120
|
||||
|
||||
/*
|
||||
!! DO NOT REMOVE !!
|
||||
This code is from Chocapic13' shaders
|
||||
Read the terms of modification and sharing before changing something below please !
|
||||
!! DO NOT REMOVE !!
|
||||
*/
|
||||
#include "/lib/settings.glsl"
|
||||
|
||||
#define SHADOW_MAP_BIAS 0.5
|
||||
const float PI = 3.1415927;
|
||||
varying vec2 texcoord;
|
||||
uniform mat4 shadowProjectionInverse;
|
||||
uniform mat4 shadowProjection;
|
||||
uniform mat4 shadowModelViewInverse;
|
||||
uniform mat4 shadowModelView;
|
||||
uniform mat4 gbufferProjection;
|
||||
uniform mat4 gbufferProjectionInverse;
|
||||
|
||||
flat varying int water;
|
||||
|
||||
|
||||
|
||||
|
||||
#include "/lib/Shadow_Params.glsl"
|
||||
|
||||
#define diagonal3(m) vec3((m)[0].x, (m)[1].y, m[2].z)
|
||||
#define projMAD(m, v) (diagonal3(m) * (v) + (m)[3].xyz)
|
||||
|
||||
// uniform float far;
|
||||
uniform float dhFarPlane;
|
||||
|
||||
#include "/lib/DistantHorizons_projections.glsl"
|
||||
|
||||
vec4 toClipSpace3(vec3 viewSpacePosition) {
|
||||
|
||||
mat4 projection = DH_shadowProjectionTweak(gl_ProjectionMatrix);
|
||||
|
||||
return vec4(projMAD(projection, viewSpacePosition),1.0);
|
||||
}
|
||||
|
||||
|
||||
|
||||
// uniform int renderStage;
|
||||
|
||||
void main() {
|
||||
water = 0;
|
||||
|
||||
// if(gl_Color.a < 1.0) water = 1;
|
||||
|
||||
texcoord.xy = gl_MultiTexCoord0.xy;
|
||||
|
||||
vec3 position = mat3(gl_ModelViewMatrix) * vec3(gl_Vertex) + gl_ModelViewMatrix[3].xyz;
|
||||
|
||||
#ifdef DISTORT_SHADOWMAP
|
||||
gl_Position = BiasShadowProjection(toClipSpace3(position));
|
||||
#else
|
||||
gl_Position = toClipSpace3(position);
|
||||
#endif
|
||||
|
||||
gl_Position.z /= 6.0;
|
||||
}
|
5
shaders/world0/dh_terrain.fsh
Normal file
5
shaders/world0/dh_terrain.fsh
Normal file
@ -0,0 +1,5 @@
|
||||
#version 330 compatibility
|
||||
|
||||
#define OVERWORLD_SHADER
|
||||
|
||||
#include "/dimensions/DH_solid.fsh"
|
5
shaders/world0/dh_terrain.vsh
Normal file
5
shaders/world0/dh_terrain.vsh
Normal file
@ -0,0 +1,5 @@
|
||||
#version 330 compatibility
|
||||
|
||||
#define OVERWORLD_SHADER
|
||||
|
||||
#include "/dimensions/DH_solid.vsh"
|
5
shaders/world0/dh_water.fsh
Normal file
5
shaders/world0/dh_water.fsh
Normal file
@ -0,0 +1,5 @@
|
||||
#version 330 compatibility
|
||||
|
||||
#define OVERWORLD_SHADER
|
||||
|
||||
#include "/dimensions/DH_translucent.fsh"
|
5
shaders/world0/dh_water.vsh
Normal file
5
shaders/world0/dh_water.vsh
Normal file
@ -0,0 +1,5 @@
|
||||
#version 330 compatibility
|
||||
|
||||
#define OVERWORLD_SHADER
|
||||
|
||||
#include "/dimensions/DH_translucent.vsh"
|
@ -96,8 +96,19 @@ bool intersectCone(float coneHalfAngle, vec3 coneTip , vec3 coneAxis, vec3 rayOr
|
||||
}
|
||||
#define diagonal3(m) vec3((m)[0].x, (m)[1].y, m[2].z)
|
||||
#define projMAD(m, v) (diagonal3(m) * (v) + (m)[3].xyz)
|
||||
|
||||
|
||||
|
||||
// uniform float far;
|
||||
uniform float dhFarPlane;
|
||||
|
||||
#include "/lib/DistantHorizons_projections.glsl"
|
||||
|
||||
vec4 toClipSpace3(vec3 viewSpacePosition) {
|
||||
return vec4(projMAD(gl_ProjectionMatrix, viewSpacePosition),1.0);
|
||||
|
||||
mat4 projection = DH_shadowProjectionTweak(gl_ProjectionMatrix);
|
||||
|
||||
return vec4(projMAD(projection, viewSpacePosition),1.0);
|
||||
}
|
||||
|
||||
|
||||
@ -171,8 +182,12 @@ void main() {
|
||||
position = mat3(shadowModelView) * worldpos + shadowModelView[3].xyz ;
|
||||
}
|
||||
#endif
|
||||
|
||||
gl_Position = BiasShadowProjection(toClipSpace3(position));
|
||||
|
||||
#ifdef DISTORT_SHADOWMAP
|
||||
gl_Position = BiasShadowProjection(toClipSpace3(position));
|
||||
#else
|
||||
gl_Position = toClipSpace3(position);
|
||||
#endif
|
||||
|
||||
|
||||
if(mc_Entity.x == 8 || mc_Entity.x == 9) gl_Position.w = -1.0;
|
||||
|
Reference in New Issue
Block a user