Bounding Volumes
A ray-tracing intersection [see page 19, optimisation-technique] which wraps complex objects in simpler objects and detects intersection with them before checking all the polygons in the complex object.
Essentially do a quick trial-check before doing a proper full-polygon check. The efficiency of this approach is limited by how well the object can be surrounded by the simpler object.
Examples (with [see page 22, comparisons]) [see page 21, include]:
- Spheres
- AABB (Axis Aligned Bounding Boxes)
- OBB (Oriented Bounding Box) - Local to objects local coordinate system
Combinations
We can use combinations of different volumes (eg. spheres and AABB) to create a better object fit (at the expense of extra complexity).
We can also use a [see page 23, hirearchy] of objects where we intersect different wrappers at each branch of the tree until none are intersected or we intersect the object directly. These can be hard to create and may need to be updated while animating.