I’m trying to make a post-processing hatching shader material in UE 5.5. I’m applying the hatching as a texture and want it to stick to the surfaces of objects in the scene, instead of following the camera.
I know that using WorldAlignedTexture or making a basic Triplanar mapping system can get you some of the way, but that only works with static objects and not objects that move or are animated like skeletal meshes.
Is there a way to make a post-process material that can do triplanar mapping on animated meshes, so that the texture sticks to their surface, even when they move? I’ve been researching a lot, and can’t find a solution on how to do it.
1 Like
You can make the mapping translate with the object by subtracting the object position
( near the end ). But this won’t cope with rotation.
This guy
does several vids on triplanar, might be worth checking out. He probably does cover rotation.
I used renderBucket’s system for my current setup, it works for a standard material, but the problem is that it doesn’t work for a post-processing material. I found out that you can get the accurate normals for the post-processing material by replacing VertexNormalWS with SceneTexture:WorldNormal. But it doesn’t support translations, I found out that it seems to be an inherent limitation of how post-processing works, because it doesn’t have direct access to object-specific information like vertex positions. I’m wondering if there’s a hack around this, or if I’ll have to rethink my approach.
1 Like
I was wondering how you made it work with PP 
It might be time for a re-think.