Procedurally generating classic 80s houses


Procedurally generating classic 80s houses
#1
Hello  Smile 

I've written some code to generate random houses, classic 80s town style!

At the moment, everything is random: the floorplan, colours, window/door counts and placement. It is limited to classic colours and a few windows and doors that were widespread in the 80s. The bricks are laid well, using an algorithm to maximise interlocking between levels. The roof is always a brick-built hipped roof. There is lots of potential to add new building features of course but I'm not sure where it will go after this first very basic version. Here is a picture of some houses generated today.


Attached Files Thumbnail(s)
   
Reply
RE: Procedurally generating classic 80s houses
#2
(2022-04-05, 20:09)Mark Wellas Wrote: Hello  Smile 

I've written some code to generate random houses, classic 80s town style!

At the moment, everything is random: the floorplan, colours, window/door counts and placement. It is limited to classic colours and a few windows and doors that were widespread in the 80s. The bricks are laid well, using an algorithm to maximise interlocking between levels. The roof is always a brick-built hipped roof. There is lots of potential to add new building features of course but I'm not sure where it will go after this first very basic version. Here is a picture of some houses generated today.
Very nice! How is it programmed? would make a fine script for LDCad...
Reply
RE: Procedurally generating classic 80s houses
#6
(2022-04-06, 6:58)Philippe Hurbain Wrote: Very nice! How is it programmed? would make a fine script for LDCad...

Thanks Smile  It's written in Java, and generates output as LDraw. It can of course be called directly using Java code, and I'm not familiar with Lua that LDCad uses for its plugins, but I believe Lua can call Java. It also has a REST API and a basic UI, written in Angular/Typescript and using three.js's Ldraw loader. It does currently need a database, which is a set of scores of for a lines of bricks with scores for studs:brick ratio and connection strength.  This does mean it has a limit on the length of walls (currently 24 studs).

This random procedural generation feature is actually an after thought. The original propose is to build models using a simple DSL language.

Both the UI and REST API are mainly concerned with the original purpose of layouting walls. I've attached a screenshot of the editor.


Attached Files Thumbnail(s)
   
Reply
RE: Procedurally generating classic 80s houses
#3
This is awesome. I wonder if the concepts from the "Neighborhood Book" could pragmatically described. This would enable a row of facades to be generated for building out city streets.
Reply
RE: Procedurally generating classic 80s houses
#7
(2022-04-06, 12:22)Cam's Bricks Wrote: This is awesome. I wonder if the concepts from the "Neighborhood Book" could pragmatically described. This would enable a row of facades to be generated for building out city streets.

Thank you  Smile Yes they definitely can. It would be rather lovely to implement enough features such as those in those books, but also other things like more roof styles, that it could generate random modular buildings.

I can't quite decide whether that means it would be super clever, or that modulars are becoming formulaic  Big Grin
Reply
RE: Procedurally generating classic 80s houses
#4
Very neat! But I would suggest it's more 50s style than 80s; except for the specific window/door elements, these look exactly like the example models from the very first ABB and Mursten sets!
Reply
RE: Procedurally generating classic 80s houses
#5
(2022-04-05, 20:09)Mark Wellas Wrote: Hello  Smile 

I've written some code to generate random houses, classic 80s town style!

At the moment, everything is random: the floorplan, colours, window/door counts and placement. It is limited to classic colours and a few windows and doors that were widespread in the 80s. The bricks are laid well, using an algorithm to maximise interlocking between levels. The roof is always a brick-built hipped roof. There is lots of potential to add new building features of course but I'm not sure where it will go after this first very basic version. Here is a picture of some houses generated today.

I would love to see the code for this.
Reply
RE: Procedurally generating classic 80s houses
#8
(2022-04-06, 23:06)Matthew Morrison Wrote: I would love to see the code for this.

It's not open source but maybe that will change after release 1.0  Smile
Reply
RE: Procedurally generating classic 80s houses
#9
(2022-04-07, 18:42)Mark Wellas Wrote: It's not open source but maybe that will change after release 1.0  Smile

Yes please!
Reply
« Next Oldest | Next Newest »



Forum Jump:


Users browsing this thread: 1 Guest(s)