Shadows, which play an important role in perceiving the shape and texture
of an object, are simulated interactively in a real time, self-shadowing
of a bump mapped surface for a computer rendered object. A computer
graphics textured object function defines a horizon map over an
orientation in a tangent space of the object using different textures or
basis functions. The implementation can be performed using commodity
graphics hardware by precomputing the horizon map for limited visibility
for each point on the bump mapped surface given light in each of a
plurality of radial directions. The horizon map is used to produce
self-shadowing of the bump mapped surface of the object.