|January push towards Web Site, City demo, and Alpha Release.|
|Example of blocks with shared connectivity but height discontinuities|
- Block location/bounds/size.
- Access along each side (left/right of opening within any barrier present).
- Follow the underlying landscape shape, or both share flat ground level at a given height.
- Connectivity via each side (to the outer most city sides).
- Variation seed to drive arbitrary design decisions.
- Bounds size, orientation and location
- Surface height within the space (or if we are to follow the landscape)
- Is it an interfacing piece, i.e. responsible for handling transition to neighbouring block interface? (Edge - one interface along block boundary, Corner - two interfaces along block boundary, Side - three interfaces along block boundary)
- If not an interface, then an interior piece, with same type all round (flat or landscape)
- For each boundary interface: Specific flat elevation or landscape following. Do we 'own' this side (are responsible for interfacing geometry). Is this a barrier, i.e. will access be blocked? Is there a barrier to the left/right that we may need to provide transition geometry for?
- Ownership - all, none, adjacent, opposite
- Surfaces - all landscape, all flat, mixture
- Access - Closed corners, all open, all closed (bar one), some on left, some narrow, mixture
|Unit tests for a lot of the block interfacing cases|
|Example test rig showing corner results produced|
|Playing with block algorithm ideas in Excel|
|First pass at the content space and interfacing algorithm|
|A specific flavour of spaghetti: arrays of connections|
- Append - take a list and add another element (any type).
- Get - index a list, returning the element value (any type).
- Set - replace a value at a specific index with a new value (any type).
- Count - query how many elements are in the list.
|Passing structures and collections around as lists|
|Some of the content space generation results so far|