Step (3) : Surface normal
Project reference: Cycles Raytracer v1.0 by griffpatch https://scratch.mit.edu/projects/412737809/ Thank you griffpatch Tutorial reference: https://www.realtimerendering.com/raytracing/Ray%20Tracing%20in%20a%20Weekend.pdf Thank you Peter Shirley