a couple of procedural facades

A few weeks back I put together these two as examples of how to create a procedural facades from a static facade image.

This image is from the fantastic project from Washington. They had a project to stitch images, and were good enough to publish some hi res street fronts. Charleston, South Carolina:

The second image is of the willard hotel - around the corner from the White House (image by dbking):

The Willard Hotel

Some of the issues that came up:
  • There is a limit to how far you procedural-ize. For example, windows in the above were atomic units. Tricks like content aware image resizing (seam carving et al) might help do this automatically.
  • How do we tell if an element should scale or repeat with size? should some elements keep the same size and others be scaled relative to each other?
  • In the vanishing case (as the facade become small) which elements disappear first?
  • Negative space often plays a part (first met this concept in latex)
  • Many different schemes for layouts (see Java's Swing for lots of examples) - only one data point (the input image) which do we use?
  • Conflict between top-down (layout downwards - space subdivision at each step) and bottom up (components know how big they should be, eg a window, rather than a side of a house, knows how big it should be). Similar in principle to top down vs bottom up design arguments
  • Many features to balance, and everyone's goals are different - feels a lot like software engineering.