The next great hurdle in consumer graphics technology is the successful implementation of self-shadowing. In every successive generation of graphics technology, programmers have made massive steps toward approximating the rendering equation. We've moved from simple vertices and shaded polygons to advanced geometry and multi-pass shader engines. But real-time graphics remain stuck in an uncanny valley [...]