Since this doesn't scale and won't let me achieve the ambition of large procedural worlds, we need something more. This is where Phase II comes in; a system to hierarchically synthesise multiple objects of successively reducing scale and increasing detail when and where it's needed. This is based around a kind-of 3D subdivision of the world with more subdivision and detail near the observer and less further away. There are a number of parts to this investigation:
- The synthesis system needs to support the concept of closures; snapshots of a procedure and its input values that can independently drive further synthesis.
- Graphical bodies need to support sub-bodies, each capable of containing procedure closures to drive successive synthesis steps.
- Procedures need to be able to generate higher detail closures from sub-sections of a procedural model to be used to populate these sub-bodies.
- The renderer needs to be able to switch between low density bodies and equivalent high density sub-bodies according to distance from camera (and when they are available to draw).
Wish me luck, I'm going in...