Dynamic on-mesh procedural generation control

Procedural representations are powerful tools to generate highly detailed objects through amplification rules. However controlling such rules within environment contexts (e.g., growth on shapes) is restricted to CPU-based methods, leading to limited performances. To interactively control shape grammars, we introduce a novel approach based on a marching rule on the GPU. Environment contexts are encoded as geometry texture atlases, on which indirection pixels are computed around each chart borders. At run-time, the new rule is used to march through the texture atlas and efficiently jumps from chart to chart using indirection information. The underlying surface is thus followed during the grammar development. Moreover, additional texture information can be used to easily constrain the grammar interpretation. For instance, one can paint directly on the mesh allowed growth areas or the leaves density, and observe the procedural model adapt on-the-fly to this new environment. Finally, to preserve smooth geometry deformation at shape instantiation stage, we use cubic Bezier curves computed using a depth-first grammar traversal.

[1]  Sylvain Lefebvre,et al.  Appearance-space texture synthesis , 2006, ACM Trans. Graph..

[2]  Pascal Gautron,et al.  GPU Shape Grammars , 2012, Comput. Graph. Forum.

[3]  Eugene Zhang,et al.  Geometry Synthesis on Surfaces Using Field-Guided Shape Grammars , 2011, IEEE Transactions on Visualization and Computer Graphics.