reak;
   }
   return vec4(0.0);
}

void main()
{
   vec3 off = vec3(0.0);
   if (moveCamera) off.z -= time*5.0;
   
   vec2 p = gl_FragCoord.xy / resolution.xy;
   vec3 ro = cameraPos + off;
   vec3 rd = normalize(GetRay((cameraLookat-off)-cameraPos+off, p));
   
   vec4 res = March(ro, rd);
   if (res.a == 1.0) res.rgb = clamp(Shading(res.rgb, rd, GetNormal(res.rgb), ro).rgb, 0.0, 1.0);
   else res.rgb = Sky(rd);
   if (postEffects) res.rgb = PostEffects(res.rgb, p);
   
   gl_FragColor 