Is there an alternative to the Geometry -> Normal Output? This is the matte I need, created from the mesh with this ring displacement using the &quot;normal&quot; output. I will be using a different displacement in the end but I need this specific information. I am making a fully procedural material and want to avoid baking this texture. I could just manually make circles where they are here but I'd rather use this idea so I don't have to manually change them later if I need too. Is there some way of locking this texture to stay how it is now or is there an alternative node with a similar effect? I just want a matte that's white where the outside and inside wall of this displaced ring would be.
Taking the dot-product of the Normal output of the Texture Coordinate node with (0,0,1) will return the Z component of the surface normals, in Object space.

This ring has a curved profile on the inside, and is tapered on the outside.
This discrimination is good.. if you had displacements on the curved surfaces which resulted in |Z| = 1 normals, you could further discriminate by absolute Z location in Generated texture space...

Either way.. or both ?