float3 getWaterNorm( float2 tex, float dist, float camera_vector_z, inout float3 specNorm ){ float lod = saturate( (camera_vector_z*camera_vector_z) * 50 * m44proj[0][0] /(rcpres.x * dist) ); float2 uvLOD = get2DTex( float3(tex / 1024, frame) ); float2 temp_norm = tex2D( waterSampler, uvLOD ).rg * 2 - 1; float3 norm = normalize(float3(temp_norm * choppiness * lod,1)); specNorm = normalize(float3(temp_norm * choppiness * max(0.5, lod), 1)); return norm;}
float3 getWaterNorm( float2 tex, float dist, float camera_vector_z, inout float3 specNorm ){ float lod = saturate( (camera_vector_z*camera_vector_z) * 50 * m44proj[0][0] /(rcpres.x * dist) ); float2 uvLOD = get2DTex( float3(tex / 1024, frame) ); float2 temp_norm = tex2D( waterSampler, uvLOD ).rg * 2 - 1; float3 norm = normalize(float3(temp_norm * choppiness * lod,1)); specNorm = normalize(float3(temp_norm * choppiness * max(0.5, lod), 1)); return norm;}