Category Archives: Structure Synth

Structure Synth v0.8.5 Released (“Exonautica Reloaded”)

Well, it turned out that version 0.8.0 missed a few dependencies for the Windows build (so it would not run on a clean Windows XP SP2 install). So, before going away on my summer holiday, I made a quick intermediate release of Structure Synth. Now, if it would just stop raining…


Version 0.8.5 changes:
The provided Windows binaries did not work for Windows XP (without installing the VS2008 C++ Runtime manually)
Size and position of window are now stored in registry.
Fixed a missing include statement causing compilation errors on Debian.
Fixed a bug which caused errors to be highlighted on the wrong text line in GUI, when comments were present.
Fixed a newly introduced bug which caused the ‘maxdepth’ property for a custom rule to fail.
Bug fix: TemplateExporter: All objects may now use the {UID} tag.
Bug fix: Reset View did not reset scale.

Structure Synth 0.8 (Exonautica) Released

A new version of Structure Synth – version 0.8.0 – has been released.

Binaries available for Windows XP and Vista. Source available for Linux and OS X (a binary OS X build is on its way).

– The new template rendering system allows for easily defining custom exporters (with examples for PovRay and Sunflow).
– Control of the random seed from GUI.
– Minor bug fixes.
– Splash Screen.

Download at:

Third Party Structure Synth Export

David Bucciarelli has written a nice Structure Synth template for creating Luxrender export:

He has also written a very useful Blender import script, that makes it possible to import Structure Synth creations directly into Blender:

This opens up a lot of possibilities since it is now possible to control the lightning and tweak the objects and textures and so on, before rendering.

David’s scripts can be found here together with some more examples.

In order to use the template export in Structure Synth it is necessary to pull the source from SVN and compile it, since the latest binary version (0.7) does not support export templates.

BTW, I plan to release version 0.8 of Structure Synth as soon as I pull myself together to create a build of the current SVN sources.

Structure Synth on Mac OS X

Structure Synth development has been quite idle for the past month (due to lots of work including a Japan visit).

But after a few hours of frustation, I managed to get Structure Synth to compile on Mac OS X – so now Structure Synth is officially supported on Windows, Linux and Mac OS X.

Build instruction (and probably binary builds – if I manage to create an installer) will be added at next release.

Structure Synth – Mac OS X screenshot

Structure Synth – Mac OS X screenshot

Are Boxes too Square for Sunflow?

Structure Synth is now able to export boxes to Sunflow. That was actually a lot harder than spheres.

Boxicity (Sunflow render)

Boxicity (Sunflow render).

Sunflow has some amazing global illumination lightning, but why doesn’t it have a ‘box’ primitive in its scene graph language? I mean, it has Banchoff Surfaces, tori and teapots, but not a simple box?

By the way, for those who really dig boxes, check out the Flickr Boxclub (a few Structure Synth creations may also be spotted there).

Structure Synth Rendering Templates

Creating a reasonable way of exporting Structure Synth objects to other renderers, like Sunflow and POV-Ray turned out to be more difficult than I expected. Not because they have complicated scene description languages – they don’t – but because there are a lot of settings and parameters, and I do not want to wrap and support every single one of them.

Sunflow export

Example Sunflow rendering with Global Illuminated Ambient Occlusion.

The approach I came up with is quite simple – it is now possible to define a number of rendering templates which are XML-files containing a number of text fragments, one for each of the primitives (box, sphere, …) and a ‘start’ and ‘end’ fragment.

For instance, a fragment (for a Sunflow exporter) for the ‘sphere’ primitive could look like this:

object {
  shader "s05"
  type sphere
  c {cx} {cy} {cz}
  r {rad}

where the center and radius parameters would be substituted for each instance of the primitive.

Structure Synth v0.7 (“Nostromo”) released

I am pleased to announce that a new version of Structure Synth – Version 0.7 (“Nostromo”) – has been released.

Available as Windows binaries or Linux source.

Structure Synth V0.7 (Nostromo)

Structure Synth V0.7 (Nostromo)

New Features:

  • The GUI has tabs now.
  • Syntax highlighting.
  • Better Linux support, fewer compile warnings.
  • Screenshot support.
  • The tokenizer/parser has been improved.
  • Very preliminary and experimental POVRay support.
  • Bug fixes.

Assorted stats:

So far 95 hours of work has been put into Structure Synth, with 2/3 of the time spent coding, the rest of the time spent on design and web site creation.

Structure Synth is currently 4788 lines of C++ code (.h and .cpp files)

POV-Ray support

From time to time I still get a moment to work on Structure Synth, and I’ve just started working on some nice new features.

POV-Ray support is coming along quite nicely. Here is a preview:


POV-Ray rendered output.

Also, the user interface will be improved with tabs, full-screen and screendump support:


The new user-interface.