shader vacuuming
[carveJwlIkooP6JGAAIwe30JlM.git] / shaders / scene_standard_alphatest.h
index f9aa65097ef062bad94d53314e50ab81060a4cfa..ed4417ba6350cb4cc63e653b79370e80e18802d3 100644 (file)
@@ -107,6 +107,13 @@ static struct vg_shader _shader_scene_standard_alphatest = {
 "   return texture( g_world_depth, depth_coord ).r;\n"
 "}\n"
 "\n"
+"float world_water_depth( vec3 pos )\n"
+"{\n"
+"   vec2 depth_coord = (pos.xz - g_depth_bounds.xy) * g_depth_bounds.zw; \n"
+"   float ref_depth = g_water_plane.y*g_water_plane.w;\n"
+"   return texture( g_world_depth, depth_coord ).g - ref_depth;\n"
+"}\n"
+"\n"
 "float shadow_sample( vec3 vdir )\n"
 "{\n"
 "   vec3 sample_pos = aWorldCo + vdir;\n"