mirror of
https://github.com/luanti-org/luanti.git
synced 2025-11-16 06:35:30 +01:00
More minor shader cleanups
This commit is contained in:
@@ -42,7 +42,6 @@ uniform float crackTextureScale;
|
||||
|
||||
|
||||
VARYING_ vec3 vNormal;
|
||||
VARYING_ vec3 vPosition;
|
||||
// World position in the visible world (i.e. relative to the cameraOffset.)
|
||||
// This can be used for many shader effects without loss of precision.
|
||||
// If the absolute position is required it can be calculated with
|
||||
@@ -63,7 +62,8 @@ vec4 perm(vec4 x)
|
||||
}
|
||||
|
||||
// Corresponding gradient of snoise
|
||||
vec3 gnoise(vec3 p){
|
||||
vec3 gnoise(vec3 p)
|
||||
{
|
||||
vec3 a = floor(p);
|
||||
vec3 d = p - a;
|
||||
vec3 dd = 6.0 * d * (1.0 - d);
|
||||
@@ -96,7 +96,10 @@ vec3 gnoise(vec3 p){
|
||||
}
|
||||
|
||||
vec2 wave_noise(vec3 p, float off) {
|
||||
return (gnoise(p + vec3(0.0, 0.0, off)) * 0.4 + gnoise(2.0 * p + vec3(0.0, off, off)) * 0.2 + gnoise(3.0 * p + vec3(0.0, off, off)) * 0.225 + gnoise(4.0 * p + vec3(-off, off, 0.0)) * 0.2).xz;
|
||||
return (gnoise(p + vec3(0.0, 0.0, off)) * 0.4 +
|
||||
gnoise(2.0 * p + vec3(0.0, off, off)) * 0.2 +
|
||||
gnoise(3.0 * p + vec3(0.0, off, off)) * 0.225 +
|
||||
gnoise(4.0 * p + vec3(-off, off, 0.0)) * 0.2).xz;
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -110,13 +113,16 @@ vec3 getLightSpacePosition()
|
||||
{
|
||||
return shadow_position * 0.5 + 0.5;
|
||||
}
|
||||
// custom smoothstep implementation because it's not defined in glsl1.2
|
||||
// https://docs.gl/sl4/smoothstep
|
||||
|
||||
#if __VERSION__ >= 130
|
||||
#define mtsmoothstep smoothstep
|
||||
#else
|
||||
float mtsmoothstep(in float edge0, in float edge1, in float x)
|
||||
{
|
||||
float t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
||||
return t * t * (3.0 - 2.0 * t);
|
||||
}
|
||||
#endif
|
||||
|
||||
float shadowCutoff(float x) {
|
||||
#if defined(ENABLE_TRANSLUCENT_FOLIAGE) && MATERIAL_TYPE == TILE_MATERIAL_WAVING_LEAVES
|
||||
|
||||
@@ -7,7 +7,6 @@ uniform highp vec3 cameraOffset;
|
||||
uniform float animationTimer;
|
||||
|
||||
VARYING_ vec3 vNormal;
|
||||
VARYING_ vec3 vPosition;
|
||||
// World position in the visible world (i.e. relative to the cameraOffset.)
|
||||
// This can be used for many shader effects without loss of precision.
|
||||
// If the absolute position is required it can be calculated with
|
||||
@@ -43,14 +42,13 @@ CENTROID_ VARYING_ float nightRatio;
|
||||
VARYING_ highp vec3 eyeVec;
|
||||
// Color of the light emitted by the light sources.
|
||||
const vec3 artificialLight = vec3(1.04, 1.04, 1.04);
|
||||
const float e = 2.718281828459;
|
||||
const float BS = 10.0;
|
||||
|
||||
#ifdef ENABLE_DYNAMIC_SHADOWS
|
||||
|
||||
uniform float xyPerspectiveBias0;
|
||||
uniform float xyPerspectiveBias1;
|
||||
uniform float zPerspectiveBias;
|
||||
|
||||
#ifdef ENABLE_DYNAMIC_SHADOWS
|
||||
|
||||
vec4 getRelativePosition(in vec4 position)
|
||||
{
|
||||
vec2 l = position.xy - CameraPos.xy;
|
||||
@@ -77,14 +75,16 @@ vec4 applyPerspectiveDistortion(in vec4 position)
|
||||
return position;
|
||||
}
|
||||
|
||||
// custom smoothstep implementation because it's not defined in glsl1.2
|
||||
// https://docs.gl/sl4/smoothstep
|
||||
#if __VERSION__ >= 130
|
||||
#define mtsmoothstep smoothstep
|
||||
#else
|
||||
float mtsmoothstep(in float edge0, in float edge1, in float x)
|
||||
{
|
||||
float t = clamp((x - edge0) / (edge1 - edge0), 0.0, 1.0);
|
||||
return t * t * (3.0 - 2.0 * t);
|
||||
}
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
float smoothCurve(float x)
|
||||
@@ -189,7 +189,6 @@ void main(void)
|
||||
worldPosition = (mWorld * pos).xyz;
|
||||
gl_Position = mWorldViewProj * pos;
|
||||
|
||||
vPosition = gl_Position.xyz;
|
||||
eyeVec = -(mWorldView * pos).xyz;
|
||||
#ifdef SECONDSTAGE
|
||||
normalPass = normalize((inVertexNormal+1)/2);
|
||||
|
||||
Reference in New Issue
Block a user