Initial commit: Minecraft 光追着色器包(从零实现的 path tracing)
This commit is contained in:
@@ -0,0 +1,32 @@
|
||||
// MinecraftPT — Beacon Beam Fragment Shader (emissive beam)
|
||||
|
||||
#include "/Lib/Settings.glsl"
|
||||
#include "/Lib/Utilities.glsl"
|
||||
|
||||
in vec2 texcoord;
|
||||
in vec3 worldPos;
|
||||
in vec3 worldNormal;
|
||||
in vec3 vertexNormal;
|
||||
in vec4 color;
|
||||
in vec2 lightmap;
|
||||
|
||||
layout(location = 0) out vec4 colortex0Out;
|
||||
layout(location = 1) out vec4 colortex1Out;
|
||||
layout(location = 2) out vec4 colortex2Out;
|
||||
layout(location = 3) out vec4 colortex3Out;
|
||||
layout(location = 4) out vec4 colortex4Out;
|
||||
layout(location = 5) out vec4 colortex5Out;
|
||||
|
||||
void main(){
|
||||
vec4 albedo = texture(tex, texcoord) * color;
|
||||
|
||||
if (albedo.a < 0.004) discard;
|
||||
|
||||
colortex0Out = vec4(albedo.rgb, 1.0); // fully emissive
|
||||
colortex1Out = vec4(EncodeNormal(worldNormal), EncodeNormal(vertexNormal));
|
||||
colortex2Out = vec4(0.0, 0.0, 0.0, 0.0);
|
||||
colortex3Out = vec4(1.0, 1.0, 1.0, 1.0);
|
||||
|
||||
colortex4Out = vec4(0.0);
|
||||
colortex5Out = vec4(0.0);
|
||||
}
|
||||
Reference in New Issue
Block a user