Buildings design doc
So, we're trying to add some buildings, now. I'm going for mesoamerican architecture, because the parameters are simple, and the aesthetics amuse me.
I've scanned two papers. Will reference them later.
One starts with a rectangle, then branches, moves, scales, and extrudes parametrically. The other starts at the top with an arbitrary shape, and continually extrudes downward.
This sounds like a decent way to go about things. I'll try starting with a rectangle, then move, scale, and extrude. I'll toss in one more nice command: swap, which changes the shapes.
How am I going to represent this?
Well, integrating with minecraft worked OK... but I think I'll be better off NOT doing that until I'm good and ready. So, I'll generate several levels, and render them side by side. Once that's working satisfactorily, we can shift into rendering in three dimensions.
What are my steps?
Well, first I'll need to create a small library of shapes. My initial thoughts are to use squares, Pentagons, and Equilateral triangles—or even just squares. Those all seem blocky enough to be mesoamericanesque.
How do I define collisions? Will I need to?
Anything that touches the exterior will be a “room”. Anything else will be filled with “gravel”. To simplify things, I could just make all the rooms rectangles, and then wouldn't need to write maths to
check for collisions.
Next, I'll need to extend my library to support parametric systems. Shouldn't be hard. (famous last words, eh?)
As for the actual system...
Each iteration will represent a floor. Ground floor is either the axiom (a starting square), or the first pass through. After that, we'll immediately branch twice, move closer to the center, and scale down. Perhaps we'll add in a swap somewhere.
After that, We'll “perforate” the exterior with rooms—rectangles that have doorholes in places.
So, we're trying to add some buildings, now. I'm going for mesoamerican architecture, because the parameters are simple, and the aesthetics amuse me.
I've scanned two papers. Will reference them later.
One starts with a rectangle, then branches, moves, scales, and extrudes parametrically. The other starts at the top with an arbitrary shape, and continually extrudes downward.
This sounds like a decent way to go about things. I'll try starting with a rectangle, then move, scale, and extrude. I'll toss in one more nice command: swap, which changes the shapes.
How am I going to represent this?
Well, integrating with minecraft worked OK... but I think I'll be better off NOT doing that until I'm good and ready. So, I'll generate several levels, and render them side by side. Once that's working satisfactorily, we can shift into rendering in three dimensions.
What are my steps?
Well, first I'll need to create a small library of shapes. My initial thoughts are to use squares, Pentagons, and Equilateral triangles—or even just squares. Those all seem blocky enough to be mesoamericanesque.
How do I define collisions? Will I need to?
Anything that touches the exterior will be a “room”. Anything else will be filled with “gravel”. To simplify things, I could just make all the rooms rectangles, and then wouldn't need to write maths to
check for collisions.
Next, I'll need to extend my library to support parametric systems. Shouldn't be hard. (famous last words, eh?)
As for the actual system...
Each iteration will represent a floor. Ground floor is either the axiom (a starting square), or the first pass through. After that, we'll immediately branch twice, move closer to the center, and scale down. Perhaps we'll add in a swap somewhere.
After that, We'll “perforate” the exterior with rooms—rectangles that have doorholes in places.