 #version 430
 
-layout(location=0)uniform sampler2D t;
-layout(location=1)uniform sampler3D u;
+layout(location=0)uniform sampler2D surface_texture;
+layout(location=1)uniform sampler3D noise_volume;
 layout(location=2)uniform vec3[10] v;
 #if defined(USE_LD)
 layout(location=19)uniform mat3 m;

  }

  // World chosen affects iteration parameters.
  if(w)D=vec4(.05,.0,.98,.022);

  n=T(p,d,D.w,P,N);
  if(.0<n)
  {
    if(w)q=max(dot(L,N),.0)*mix(vec3(.3,.6,.9),vec3(1),smoothstep(-24.,9.,P.y))+pow(max(dot(d,reflect(L,N)),.0),7.)*.11;
    else
    {
      e=T(P+L*.5,L,D.w*3.,q,q);
      q=(1.-e)*(max(dot(L,N),.0)*mix(vec3(.8,.6,.4),vec3(1),smoothstep(-24.,9.,P.y))+pow(max(dot(d,reflect(L,N)),.0),7.)*.11);
    }
    r=P-v[8];

#endif
out vec4 o;

vec4 march_params = vec4(0.3, 0.0, 0.7, 0.009);
vec3 L=normalize(vec3(2.,.5,-1.));
float l=v[9].y;
bool w=1.<abs(v[7].z);
