On an unrelated note - I also agree that the determination of the normal direction should probably happen inside `sphere:hit`. _Originally posted by @vchizhov in https://github.com/RayTracing/raytracing.github.io/issues/137#issuecomment-558321059_