Hi @Mike Bowen ,
In my calculations I get a direction with positive values towards the observer. That would be a left-hand coordinate system. As you get a right-hand coordinate system, it would be nice, if you point me to the error in my calculations.
Insert a circle, save to Rich Text Format (RTF). Toggle extrusion on, set 'Parallel' and 'Center', 'Surface' to 'Plastic', 'Lighting' to 'Normal'. Tilt circle up by 90deg. You get a rectangle with some bright facets.
Imagine you look from the top on to the solid. Then you see a circle. The x-axis points right and the y-axis points away from you. The observer looks from bottom to top. I assume, that the facet is brightest, if the reflected light is parallel to the z-axis.
The incoming light strikes the circle in one point P so, that the reflected light is parallel to the z-axis. This point P has a center angle 'beta'. The incoming light has an angle 'alpha'. Because of rule 'the angle of incidence equals the angle of reflection' you get the equation alpha=2*beta-90deg. (Angles measured clockwise against the positive part of the x-axis). The observer sees the brightest facet at position width/2+width/2*cos(beta) measured from the left edge of the 90deg rotated, extruded circle.
Try a RTF light direction (40000, 0 , 30000) and look at the actual rendering. That looks like 'z-axis towards observer' for me. And that would be a left-hand coordinate system. Unfortunately the comment does not allow long explanation. May I sent you a document with explanations and illustrations and an RTF example?