We introduce procedural geometry mapping and ray-dependent grammar development for fast and scalable render-time generation of procedural geometric details on graphics hardware. By leveraging the properties of the widely used split grammars, we replace geometry generation by lazy per-pixel grammar development. This approach drastically reduces the memory costs while implicitly concentrating the computations on objects spanning large areas in image space. Starting with a building footprint, the bounding volume of each facade is projected towards the viewer. For each pixel we lazily develop the grammar describing the facade and intersect the potentially visible split rules and terminal shapes. Further geometric details are added using normal and relief mapping in terminal space. Our approach also supports the computation of per-pixel self shadowing on facades for high visual quality. We demonstrate interactive performance even when generating and tuning large cityscapes comprising thousands of facades. The method is generalized to arbitrary mesh-based shapes to provide full artistic control over the generation of the procedural elements, making it also usable outside the context of urban modeling.
['Jean-Eudes Marvie', 'Pascal Gautron', 'Patrice Hirtzlin', 'Gael Sourimant']
Render-time procedural per-pixel geometry generation