This question was triggered by the following tooltip
For context I am rotating the material to face the camera but this breaks the vertex normals. I’ve seen some [examples] of custom UV use but I don’t understand what is the purpose and how they work.
Hi, Custom UV is the same as using a vertex interpolator node, only that you plug it manually into a custom UV of your material and then access it again by using the texcoord node. By using custom UVs/vertex interpolator you do the computation inside the vertex shader instead of the pixel shader. Most of the time that will save performance (those times were you have less vertices than pixels covered by the material).
Doc on Custom UVs: Customized UVs | Unreal Engine Documentation
And Unreal Engine 4.16 Release Notes | Unreal Engine Documentation under New: Vertex Interpolator Material Expression Node
Should be something like this then
I don’t know whether to use the normal output in tangent or in world space though.
Thanks for the explanation! It’s a lot clearer now.