mirror of
https://git.stillkill.net/MinecraftLeak/MinecraftLegends.git
synced 2026-10-22 21:32:19 +01:00
Initial commit
This commit is contained in:
commit
86efc669e9
5013 files changed
+237743
No files matched your search
@@ -0,0 +1,63 @@
|
||||
// __multiversion__
|
||||
// This signals the loading code to prepend either #version 100 or #version 300 es as apropriate.
|
||||
|
||||
#include "shaders/fragmentVersionSimple.h"
|
||||
|
||||
uniform sampler2D TEXTURE_0;
|
||||
uniform sampler2D TEXTURE_1;
|
||||
uniform sampler2D TEXTURE_2;
|
||||
|
||||
varying vec2 uv;
|
||||
varying vec4 color;
|
||||
varying vec4 worldPosition;
|
||||
varying vec4 fogColor;
|
||||
|
||||
void main()
|
||||
{
|
||||
vec4 albedo = texture2D( TEXTURE_0, uv);
|
||||
|
||||
#ifdef ALPHA_TEST
|
||||
if (albedo.a < 0.5)
|
||||
discard;
|
||||
#endif
|
||||
|
||||
albedo.a *= color.a;
|
||||
|
||||
vec2 occlusionUV = worldPosition.xz;
|
||||
vec4 occlusionTexture = texture2D( TEXTURE_1, occlusionUV);
|
||||
|
||||
#ifndef FLIP_OCCLUSION
|
||||
#define OCCLUSION_OPERATOR <
|
||||
#else
|
||||
#define OCCLUSION_OPERATOR >
|
||||
#endif
|
||||
|
||||
#ifdef SNOW
|
||||
#define OCCLUSION_HEIGHT occlusionTexture.g
|
||||
#define OCCLUSION_LUMINANCE occlusionTexture.r
|
||||
#else
|
||||
#define OCCLUSION_HEIGHT occlusionTexture.a
|
||||
#define OCCLUSION_LUMINANCE occlusionTexture.b
|
||||
#endif
|
||||
|
||||
// clamp the uvs
|
||||
if ( occlusionUV.x >= 0.0 && occlusionUV.x <= 1.0 &&
|
||||
occlusionUV.y >= 0.0 && occlusionUV.y <= 1.0 &&
|
||||
worldPosition.y OCCLUSION_OPERATOR OCCLUSION_HEIGHT) {
|
||||
albedo.a = 0.0;
|
||||
}
|
||||
|
||||
float mixAmount = (worldPosition.y - OCCLUSION_HEIGHT)*25.0;
|
||||
vec2 lightingUVs = vec2(OCCLUSION_LUMINANCE, 1.0);
|
||||
lightingUVs.x = mix(lightingUVs.x, 0.0, mixAmount);
|
||||
|
||||
vec3 lighting = texture2D( TEXTURE_2, lightingUVs ).rgb;
|
||||
vec4 finalOutput = albedo;
|
||||
finalOutput.rgb *= lighting.rgb;
|
||||
|
||||
//apply fog
|
||||
gl_FragColor.rgb = mix( finalOutput.rgb, fogColor.rgb, fogColor.a );
|
||||
gl_FragColor.a = finalOutput.a;
|
||||
}
|
||||
|
||||
|
||||
Reference in new issue
Block a user