I would need to check it manually. But it looks ok.
Strange.. My node setup* doesn’t need it to get the same result.
* see below
It’s just reorienting the tangent vector. The first cross product, makes the incoming vector perpendicular to the Normal, and the second one, rotates it by 90º around the Normal.
Here’s how I would make it. The “Center Change” doesn’t need to be a constant vector, and it can in fact be a vector field (that should allow having different centers on the bottom and top of the cone).
The shading is starting to look acceptable, at least on this example simplified shape. Not shown much here, but I think I have nailed down the machining marks as well, but the node tree I’ve come up with is an absolute mess. The two disk polar and two cylindrical polar surfaces are “easy enough” (I’ve done it so many times already), but Ḯ’m curious how you would approach that special fifth surface? See this for the eccentric lathing process, using a ball turner going at a radius that ends up being tangent to the smaller cylinder and perpendicular to the larger cylinder. Note that this comes from CAD, so I don’t have any UVs to work with.
I asked this same question many years ago. In my case I wanted a material to glow when the light dimmed, or glow when a certain colour of light hit it (like glow in the dark or fluorescent materials do).
Unfortunately there is no way to do this with Cycles.
I believe the old Blender internal render could do it - but that was removed from Blender many years ago - but one option would be to fire up an older version of Blender (i.e. before 2.80).
I suppose you could use a driver from the lights strength param to drive the strength of a bloom node in the compositor (with crypromatte to get the material). Might not work in real-time compositor because of lack of layer passes but should in final render.
I’ve come to that question with the exact idea in mind, fluorescent stars that would glow automatically depending on the global illumination around the mesh, or (maybe easier) depending on the light source directly hitting the mesh..
I thought it would be a bit more tedious to create the shader but so much time gained at the end, not making the lights reacting correctly in compositor, mighty compositor it is !