Using L Systems to model cities

I’d been meaning to research L Systems in Houdini for some time, and wow had I been missing something. I first came across them in some of Akira Saito‘s posts where he had made some interesting mech-like beings using their organic structure:

A recent tweet from Akira Saito

I’d squinted at them before in Houdini’s L System documentation but didn’t really make sense of it. I then came across a great in-depth tutorial (if you’re as geeky as me it’s well worth the time) by the eloquent houdinikitchen who overviews the theory well with lots of examples to give a good understanding:

HoudiniKitchen’s tutorial on L-Systems

The basic idea is that you provide a set of simpl(ish) instructions called Turtle commands that describe a starting state, such as:

F+FF

…which means “Branch up one (F), rotate 90 degrees (+), and then branch up twice (FF)

Then you give it more ‘simple’ rules using the same language that alter this basic structure every generation, such as:

F=FF++F++F+F++F-F

…which says “next generation, replace all the Fs in the previous statement with the instructions here”.

This can give rise to some complex plant-like structures like the ones shipped with Houdini:

Basic L-System Tree

But interestingly you can create things like hexagonal structures as well. After a little experimentation I quickly got what looks like a snowflake:

I then tweaked the “Generations” parameter so that Houdini was part-way through a generation, which gives a more distorted structure like this:

The same hexaganol structure but at generation 4.8

I then used my own random 3D Shape Generator node and a Copy to Points node to randomly create building like structures for each point in the ‘tree’ and got this effect:

Zoomed out…
…zoomed in a bit more….
…and closer

You can download the sample file here – it will require the Shape Generator asset to work, which maybe you’ll humbly consider supporting me by taking a look at it on Gumroad here:

Nebula Generator goes Panoramic

I’ve just updated the Nebula Generator‘s 2D and 3D versions in Blender to have an additional panoramic set up, available as separate files in the downloads.

This allows you to render a panoramic view of a nebula which can then be used to produce hdris for evironments such as game backgrounds.

The 2D version was fairly straightforward to set up by switching the camera type to Panoramic and the Panorama Type to Equirectangular. This is because the set up is linked to Blender’s Cycles environment:

The 2D Nebula setup in Cycles

The 3D version was a little more challenging as the EEVEE setup does not support the Equirectangular camera mode yet. I did however come across a really useful video tutorial by United Filmdom Ltd. that describes how to set up multiple cameras to render out the views and then re-assemble them in a cube map, using a Cycles camera to to the work. It’s a little trickier and doesn’t end up with perfect seams mainly due to EEVEE’s bloom filtering (which can be edited using something like the smudge tool in Photoshop).

From this I got some good examples of the 3D nebula as a background:

A sample HDRI is here and here.

I’ve incorporated this set up as an additional set of files on the Nebula Generator available on Blender Market. If there are any questions about it do get in touch.

Re-lifeing the Blog

The storefront on Blender Market

It’s been a long road getting from there to here, as they say – I decided to temporarily close this blog a few months ago due to the high level of neglect I’d been giving it, as I have been super busy creating add-ons on the Blender Market site.

Whilst I continue to do that, I think the time’s right to bring it back as I delve even deeper into the realms of Blender, Houdini, 3DS Max and renderers like Octane.

I thought I’d use this blog to share a more permanent record of my work and experiments in the world of CG (whilst still keeping up my Twitter and Youtube presence) along with my continuing development of add-ons and plugins.

I’d also like to get some feedback from you, dear reader – so if there’s anything you’d like me to write about, such as tips n tricks in the world of 3D, let me know.