Eulergraph
    Preparing search index...
    rotatedBump3DEffectShader: "\n uniform shader color_map;\n uniform shader normal_map;\n\n uniform float3 lightPos;\n uniform float4x4 localToWorld;\n uniform float4x4 localToWorldAdjInv;\n\n float3 convert_normal_sample(half4 c) {\n float3 n = 2 * c.rgb - 1;\n n.y = -n.y;\n return n;\n }\n\n half4 main(float2 p) {\n float3 norm = convert_normal_sample(normal_map.eval(p));\n float3 plane_norm = normalize(localToWorldAdjInv * float4(norm, 0)).xyz;\n\n float3 plane_pos = (localToWorld * float4(p, 0, 1)).xyz;\n float3 light_dir = normalize(lightPos - plane_pos);\n\n float ambient = 0.2;\n float dp = dot(plane_norm, light_dir);\n float scale = min(ambient + max(dp, 0), 1);\n \n\n return color_map.eval(p) * half4(float4(scale, scale, scale, 1));\n }\n " = ...