When we first compute when a ray his a surface, we essentially take a patch of the surface. This patch contains the point p, our hit location, a normal n, and it sometimes has its own coordinate system (in u/v). These will always be defined for any surface. From here we can make alterations - for example, using a bump map would change the normal that is defined for a surface patch.

When we first compute when a ray his a surface, we essentially take a patch of the surface. This patch contains the point p, our hit location, a normal n, and it sometimes has its own coordinate system (in u/v). These will always be defined for any surface. From here we can make alterations - for example, using a bump map would change the normal that is defined for a surface patch.