ScienceMag’s annual scientific visualization challenge has announced the winners of 2007.
My favorite was this video, showing Mobius Transformations (demonstrating the equivalence to projections from a sphere to a plane).
Ah. The first release of Structure Synth.
Still alpha quality and the binaries are Windows only for the time being. It should compile on Linux too (perhaps even on Mac OS X)
I’ve started a new Flickr Group for Structure Synth creations. It is open to everyone, so feel free to post.
Of course the number of Structure Synth users is probably quite limited since no binaries have been released yet. I still plan to release the first windows executables in next month (Sep ’07).
As a side note, Flickr is extremely nice and well-organized, even better than Picassa Web Albums. Looks like Yahoo actually win this one over Google.
Structure Synth has its own website now.
…though I must say, SourceForge is not exactly the fastest web host I’ve tried.
Experimental Gameplay started out as a student project at Carnegie Mellon University in 2005.
Given three basic rules (“Each game must be made in less than seven days / by only one person / be based around a central theme (e.g. gravity or swarms)”) some very interesting projects were created. Since then the website has opened up, and everyone is allowed to post their experimental games.
The experiences gained from the project are summed up in: How to Prototype a Game in Under 7 Days (Gamasutra Feature).
This post describes the ongoing development of Structure Synth
A lot of progress in the past week. First of all Structure Synth is no longer hosted at Google Code Hosting, but instead at SourceForge.
A few of the new features:
New primitives: I’ve added box, line and dot as new drawing primitives. I’ve also added a new coloring model (based on the HSV color space). Notice the spherical structure above – it was kind of surprising (given the rules) that a spherical structure was produced.
Rule retirement: It is now possible to specify a maximum recursive depth for individual rules. Optionally, it is possible to specify an alternate rule to use as an substitution when the ‘maxdepth’ is reached. The is demonstrated for the Menger sponge above, where the recursion is terminated at the given level.
Ambiguous rules: This one is taken straight from Context Free: it is possible to specify multiple definitions of a rule, each with individual weights. When an ambiguous rule is executed, one of it definitions is chosen at random, taken the weights into account.
The prototype code is now able to actually render something:
The parser, builder and OpenGL engine are now all working at a rudimentary level. The EisenScript for the above picture is:
Still a long way to go, but a nice milestone anyway.
Well, I started worked on a spare time project, called Structure Synth: a small application for generative structure synthesis (in 3D). The app itself will be built around an embedded editor with a OpenGL visualization window next to it. Here is a mock-up shot:
The structures are designed in a simple language, EisenScript (named after the Great Russian director, Sergei Eistenstein, of course). It will be similar, but not identical, to the Context Free Design Grammer that Context Free uses.
An EisenScript defines a Rule Set, where each rule is defined as a number of Actions.
An Action would typically be to perform a Transformation and either call another rule, or one of the built-in drawing primitives. As in Context Free rules can be defined recursively in terms of themselves.
Rules are allowed to be ambiguous: more than one definition for a rule can exist, and when ambiguous rules are encountered the Builder will choose one at random. Again, as in Context Free, it will also be possible to specify a weighting for each of the rule definitions.
Here is an example of how an EisenScript rule set might look:
Structure Synth will be built in C++/Qt4.3/OpenGL and will be Open Source (GPL). It should be cross-platform (Windows, Linux, and Mac).
I’ve started a subversion repository here (Google Code Hosting), but will probably move to SourceForge.
However, I’ve been thinking of ways of extending Context Free into 3D, and will start posting some of my design sketches for Structure Synth – an IDE/Language for creating generative art (like Context Free).
I plan to write it in C++/Qt4.3/OpenGL and it should be runnable on Windows/Mac/Linux.
For an example of a Context Free script, the syntax for the above picture can be downloaded here: circles.cfdg.
The syntax for Structure Synth will be quite similar to CFDG-script but with a few twists: like the ability to ‘retire’ rules after a certain number of either recursions or iterations, and the option to change (rendering) settings when a rule is executed. Naturally the ‘state’ operators (like rotations and deformations) also need to be adapted to a 3D world.
There will be an integrated OpenGL viewer, and I plan to add PovRay support for creating high-quality views of the 3D-models.
More details will follow in the next weeks.
Dark Roasted Blend is a daily updated photo blog with “weird and wonderful things”. And yes, some of them really are. This blog entry is a highlight of some of my favorite sights.
Tokyo Storm Water System
Located below Tokyo and looking like something straight out of Total Recall, these cathedral-like caverns are built as buffers to prevent flooding during heavy rain and typhoon seasons.
Be sure to check out the original photos as well.
Dubai has a lot of fascinating architecture. Their artificial islands are some of the more prominent. They can also be found on Google Maps.
Mega Machines and Big Structures
Almost a trademark of Dark Roasted Blend. A few selected entries:
Creepy High Voltage Installations
Alternative Energy Super Projects
Ultimate Moving Experience II
The Biggest and Hungriest Machines
Even Bigger Machines Dig Bigger Holes
Now that is one mean machine. Can’t help thinking of Naked Lunch: “I use a Krupps Dominator myself. Company policy.”