diff --git a/procedural/mudlord-emeraldenvy4.slang b/procedural/mudlord-emeraldenvy4.slang index 1f186b9..ea17ad9 100644 --- a/procedural/mudlord-emeraldenvy4.slang +++ b/procedural/mudlord-emeraldenvy4.slang @@ -9,7 +9,7 @@ layout(std140, set = 0, binding = 0) uniform UBO } global; #pragma stage vertex -layout(location = 0) in vec4 Position; +layout(location = 0) in vec4 Position; layout(location = 1) in vec2 TexCoord; layout(location = 0) out vec2 vTexCoord; const vec2 madd = vec2(0.5, 0.5); @@ -21,7 +21,7 @@ void main() } #pragma stage fragment -layout(location = 0) in vec2 vTexCoord; +layout(location = 0) in vec2 vTexCoord; layout(location = 0) out vec4 FragColor; float time = float(global.FrameCount)*0.0325; @@ -35,42 +35,42 @@ float ground_x = 0.125 - 0.25*cos(PI*speed*0.25); float ground_y = 0.125 + 0.25*sin(PI*speed*0.25); float ground_z = speed*0.125; -vec2 rotate(vec2 k,float t) +vec2 rotate(vec2 k, float t) { - return vec2(cos(t)*k.x-sin(t)*k.y, sin(t)*k.x+cos(t)*k.y); + return vec2(cos(t)*k.x - sin(t)*k.y, sin(t)*k.x + cos(t)*k.y); } float scene(vec3 p) { float ball_p = 0.25; float ball_w = ball_p*1.0; - float ball = length(mod(p.xyz,ball_p)-ball_p*0.5)-ball_w; + float ball = length(mod(p.xyz, ball_p) - ball_p*0.5) - ball_w; float hole_w = ball_p*0.55; - float hole = length(mod(p.xyz,ball_p)-ball_p*0.5)-hole_w; + float hole = length(mod(p.xyz, ball_p) - ball_p*0.5) - hole_w; float pipe_p = 0.015; - float pipe_w = pipe_p*0.42;//-0.00375*sync; - float pipe_y = length(max(abs(mod(p.xy,pipe_p)-pipe_p*0.5)-pipe_w,0.0)); - float pipe_z = length(max(abs(mod(p.xz,pipe_p)-pipe_p*0.5)-pipe_w,0.0)); + float pipe_w = pipe_p*0.42; //-0.00375*sync; + float pipe_y = length(max(abs(mod(p.xy, pipe_p) - pipe_p*0.5) - pipe_w,0.0)); + float pipe_z = length(max(abs(mod(p.xz, pipe_p) - pipe_p*0.5) - pipe_w,0.0)); - return max(max(ball,-hole),max(pipe_y,max(pipe_y,pipe_z))); + return max(max(ball, -hole), max(pipe_y, max(pipe_y, pipe_z))); } vec3 getNormal(vec3 pos) { vec3 e = vec3(0.0, 0.0001, 0.0); - return normalize(vec3(scene(pos+e.yxx) - scene(pos-e.yxx), - scene(pos+e.xyx) - scene(pos-e.xyx), - scene(pos+e.xxy) - scene(pos-e.xxy))); + return normalize(vec3(scene(pos + e.yxx) - scene(pos - e.yxx), + scene(pos + e.xyx) - scene(pos - e.xyx), + scene(pos + e.xxy) - scene(pos - e.xxy))); } -float render_scene(vec3 ray_origin, vec3 ray_dir,float t) +float render_scene(vec3 ray_origin, vec3 ray_dir, float t) { - const int ray_n=96; - for(int i = 0; i