anchor.diff:  
   vec2 map(vec3 p, vec3 rd) 
   {
  -	vec2 res = vec2(p.y + 3.0, MAT_GROUND);
  +	vec2 res = vec2(-sdBox(p, vec3(5.0)), MAT_GROUND);
  +	res = un(res, vec2(sdBox(p - vec3(0, 0, 3.0), vec3(1.0, 2.0, 0.1)), MAT_MIRROR));
   	res = un(res, vec2(sdBox(p - vec3(0,-0.5, 0), vec3(0.5)), MAT_GROUND));
   	res = un(res, vec2(sdBox(p - vec3(0, 1.0, 0), vec3(0.3)), MAT_GROUND));
   	return res;
  
positive.code: 	float dis = length(-pos);
  	float str = 1.0/(0.5 + 0.01*dis + 0.1*dis*dis); 
  
  	diffRes = diffuse * lightCol;
  	specRes = spec * str;
  }
  
  
  void addLightning(inout vec3 color, vec3 normal, vec3 eye, vec3 pos) {
  	vec3 diffuse = vec3(0.0);
  	float specular = 0.0;
  
  	{
  		vec3 lightPos = lightAPos(pos);
  		addLight(diffuse, specular, normal, eye, lightPos, lightA(lightPos).rgb);
  	}
  	{
  		vec3 lightPos = lightAPos(pos);
  		addLight(diffuse, specular, normal, eye, lightPos, lightA(lightPos).rgb);
  	}
  	//addLight
  
  	color = color * diffuse + specular;
  	//color =  color * (0.05 + 0.9*diffuse*light(pos).xyz + 0.2 * diffuses * lights(pos).xyz ) + spec*str + specs*strs*0.5;
  
  }
  
negative.code: 			vec2 res = map(p, rd);
  			float d = res.x;
  			float m = res.y;
  #ifdef VOLUMETRIC_LIGHTNING
  			float fogAmount = 0.005;
  			vec4 lightColDis = evaluateLight(p);
  			vec3 light = lightColDis.rgb;
  