SimbiontBlender tutorial

DarkTree textures are component-based procedural textures that can be used to create a wide array of great looking effects ranging from realistic wood, stone, water, and biological effects through to awesome metallic, technical and abstract textures. Part of the power of DarkTrees is that they combine coordinated colour, bump, specular and other channels. DarkTrees are created using Darkling Simulations "DarkTree" editor. There is a demo of the editor available, and you can also freely access a large repository of DarkTrees for use in any of the modelling programs for which there is a Simbiont written. The SimbiontBlender plugin brings this capability to Blender!

NB. I have no affiliation with Darkling Simulations, I'm just an enthusiastic user. :)

An example

Example SimbiontBlender render

In clockwise order from top-left, these are "Anasazi", "Red Sector", a leafy texture and green marble.

Installation

Download the latest SimbiontBlender installer for Blender 2.4 on Win32 here: SimbiontBlender 0.5 Installer
Download SimbiontBlender 0.4 installer for Blender 2.3 on Win32 here: SimbiontBlender 0.4.1 Installer

The SimbiontBlender installer should put everything in the correct place for you. When installing, be sure to select the correct installation directory as no checking is done. The directory you want is the one with blender.exe in it.

Note that SimbiontBlender can be easily uninstalled either by using Add/Remove programs or by running the uninstall executable (found in a subdirectory of the SimbiontBlender plugin directory).

Requirements

A full python install, and a recent version of Blender.

Usage

SimbiontBlender should be fairly simple to use, but there are a few concepts to understand. The plugin is in two parts: a python script accessible from the Materials script menu, and a texture plugin, which you will need to load from the SimbiontBlender plugin directory.

DarkTree Configuration

Open the SimbiontBlender python script (found in the Scripts/Materials menu).

Rust render, diffuse only

Open DarkTrees

The top section of the UI (Textures) lists the open and available textures. Scripts can be removed from this list using the X button. The Activate button allows you to access the details and tweaks for a loaded DarkTree. In the above shot the first Rust texture is activated, and its Channel Outputs, Details and Tweaks are shown below.

Note the number next to the opened DarkTrees: this is the ID that will be used to link a DarkTree with a Blender texture.

Details

The Details section gives you some information provided by the DarkTree author.

Channel Outputs

The Channel Outputs section is perhaps the most difficult to understand. This section is where we map some of the many DarkTree output channels to the available Blender texture channels. The Blender plugin system allows plugins to write to 3 channels:

  1. Intensity
  2. Colour (incl. Alpha)
  3. Normal

Each of the Blender texture channels expects to find data in one of the above channels. For example, the Blender colour and specular colour mappings take their data from the Colour channel while the Blender normal channel takes its data from the above Normal channel.

Blender Mapping UI, in case you've forgotten

In the Channel Outputs section, you need to tell SimbiontBlender what DarkTree channels to map to the above 3 'transport' channels. You also need to pay attention to your Blender texture mapping settings, to ensure they correspond to your settings.

The above two screenshots show an example of a complementary mapping. The intensity channel is not being used, but the DarkTree is writing its colour output to the colour channel, and is also writing to the normal channel. The Blender mapping has this texture being routed to the colour and normal outputs. Note that if the DarkTree had a meaningful alpha channel we could toggle that on as well.

Waaaaah, my texture is always black

You probably have the colour mapping set to None.

Tweaks

This section should be obvious. Change values to alter the way the texture renders.

Combining multiple colour/intensity channels

The amount of information transferred to Blender by a single plugin instance is limited to 3 channels, Intensity, Colour and Normal. But what if you want to use a DarkTree with both diffuse and specular colour mapping?

Rust render, diffuse and specular

In this render, we've combined two DarkTrees to give both Diffuse and Specular output. To do this, simply load two instances of the same texture, mapping them appropriately. There will now be two Blender textures with the SimbiontBlender plugin loaded, and these textures will have IDs set to, say, 0 and 1. As usual, the Blender texture mapping should match up with the corresponding DarkTree mapping.

Limitations

  1. Perhaps the plugin should have its own preview rendering in the script window. I'll leave that for another release.

If you want to help develop SimbiontBlender, download the developer release here: Developer release