i’m working with triplanar mapping (Tri-Planar Mapping Material | Babylon.js Documentation). I just found the material does not work correctly when meshes are translated (any position different from 0,0,0).
I made an example here: https://playground.babylonjs.com/#E6OZX#495
When you add any position to the ground the textures are not correctly mixed.
I think worldNormal calculation, in vertex shader, is not right. Ignoring “world” seems to solve, but i’m not sure if this is a good solution. Any help?
//triplanar vertex shader ... #ifdef NORMAL ... //vec3 worldNormal=(world*vec4(normalize(normal),1.0)).xyz; vec3 worldNormal=(vec4(normalize(normal),1.0)).xyz; ... #endif