|DarkTree 2.5 [from Darkling Simulations of Los Alamos, NM], is a node-based procedural texture editing, rendering and management application that's been around for five years. It has attracted an active user-base and merits the attention of the Renderosity community. DarkTree 2.5 offers a great interface, portability across applications, versatility, and some clever innovations that make it a powerful way to save and reuse textures.|
For users of 3D Studio, Hash Animation Master, Cinema 4D, Lightwave, and Truespace, I recommend that you download and install the free Symbiont plugin from Darkling. Also, download the free DarkTree materials.
Install the relevant plugin into your 3D application, and you'll be able to load and manipulate DarkTree textures. Note, that these are fully functional freeware plugins which are complete and won't timeout or nag you for serial numbers [the freeware plugins differ from the DarkTree application; which adds material creation and editing, library management, and rendering capabilities]. The Symbiont plugin functions similarly, but not identically, in each host application, and it loads the same DarkTree files, whether you’re using C4D, Lightwave or 3D Studio.
DarkTree textures come in two “flavors” — full materials and maps. A material is rendered through the Darktree render engine, rather than the host. A map controls a channel in the native renderer. As a result, you’ll find that many host effects, including shaders and render effects, will recognize DarkTree maps, whereas they won’t work with DarkTree materials.
As an example, the popular FPrime plugin for Lightwave will recognize a DarkTree map, but it won't "see" a Darktree material. The trickiest part of using the Symbiont can be mapping choices, and there are occasionally sticky points where some effort is necessary to make a texture work as expected. One simple solution is to render the texture out as a bitmap, and then apply the bitmap to the object . . . this solves most problems.
While there are a number of applications for editing procedural textures, most are embedded within their applications. Bryce's Deep Texture Editor, and similar editors found in XSI and Maya, are available [or are being developed] as 3rd party plugins for 3D Studio and Lightwave. Among standalone products, three strike me as relevant comparisons: Artmatic, Genetica, and Slim.
Artmatic, is a terrific application, but can easily be distinguished from DarkTree. It is Mac-only, and renders only a textured bitmap, not channels. Spiral Graphics' Genetica, recently reviewed by Paula Sanders, on these boards, is a simpler tool without the program hooks to link to 3D applications. DarkTree's most direct competitor is a product that the majority of 3D artists probably haven't heard of: Slim from Pixar. It is used to build and manage shaders in the Renderman environment, and works only with Renderman. Slim is included as part of the $2,000 Renderman Artist Tools package, and only is useful if one has access to a Renderman render license, which is also expensive.
Product Definition: Free Plugin, Versus Commercial Application.
I've already detailed the free downloads … so, what’s in the $400 application? DarkTree 2.5 is an application with three parts:
1. DarkTree — Texture Library Management Application
DarkTree has a very sophisticated material and map library. This folder-based "Explorer-like" application allows you to navigate your own libraries of DTs with ease. Maps and materials get colored icons corresponding to their type (Purple for shaded material, green for color, blue for bump, and grey for percentage types). Having used DT for a number of years, I'll say that the management utility is part of what makes DT useful to me. All the textures I've ever created with DarkTree are there, and I can find them, together with associated notes (DarkTree helpfully allows you to insert text notes to a texture).
2. Texture Editor
The Editor is the core application of DarkTree, which allows you to place tile-like nodes and connect them with "wires" to create materials and maps; a process familiar to those who've used the Material Room in Poser, Hypergraph in Maya, or XSI. Many users find that the tree view is greatly preferable when editing complex materials.
The Editor has some significant advantages over the built-in materials editors in many 3D applications. 3D Studio users, for instance, may have found the Material Editor difficult to use precisely, because it’s hard to see what's connected to what. It’s not that complex textures can't be created in the Material Editor, but, rather the challenge is keeping track of how the bump map enhances the specularity map.
Working in DarkTree, by contrast, is easy — you can see many levels into a "deep" texture at a glance, and understand what's connected to what. One notable Editor feature is the ability to highlight any node in your tree and right click to "examine" it. Examine opens a little menu that reflects the channels presently being output by the node you've selected. Each of these channels can be expanded into a little preview window — this is a great feature that allows you to visualize each of the channels of a texture independently.
Along similar lines, DarkTree's node icons have a dynamic graphic — they show a quick render of a specific branch of the tree, at each level. This is another thoughtful feature; one which makes it easy to understand the flow of a tree.
One group of special purpose DT components are the "blend tiles,” these help create seamless repeatable textures. Along similar lines, DT's "carousel tile" is used to make a tree "loopable," meaning that it repeats without a discontinuity when it loops in time.
If DT has a “killer feature” I’d say that it would be "Tweaks." A tweak is a parameter, or group of parameters, defined in the Editor, which then can be accessed at render time. Let's say you're working on an animated explosion texture. You can do this in 3D Studio, in Lightwave, in Maya, in any application with a decent materials editor.
Now, let's say you want to offset the explosion in time … how do you do it? If you're designing the material, you may remember all the places where material components are driven by time, on the other hand you may not. In DarkTree, at design time, you define a tweak and give it the name "Explosion time offset."
When you load this DarkTree in any host application, you simply enter the value or parameter that you want into this tweak. Tweaks can do so many things, the exact range is determined by which parameters the host application makes available through its API.
At a bare minimum, all supported applications can be expected to be able to link colors, gradients, and images to tweaked parameters. In Lightwave, for example, the Tweak will accept an Envelope or a Texture as an input — opening an incredible range of parameters that can be passed to the Tweak. In 3D Studio, one can use Materials as inputs to Tweaks, and also engineer some clever inputs using parameter wiring. In both applications, weight maps are available as tweaks, and this is a boon … a way of "painting in" complex texture attributes.
3. Bitmap Renderer
This application takes your completed DarkTrees, and renders them to bitmaps. These maps can be done with most standard projection mappings (cubic, spherical, plane, cylinder), and one can also load a UV-mapped Wavefront (Obj) or Lightwave (LWO) object and render a bitmap which corresponds to this objects UV parameters.
For folks who are experimenting with the free Symbiont, the Renderer will be the surprise when they purchase the full DarkTree package. What's striking about it are all the options that one possesses: choice of size, choice of frame number in animated textures, choice of channels, and the ability to render numbered bitmaps corresponding to each channel of a shader, and to do so to defined folders on your hard drive. All of these options make management a lot easier.
Artists creating game graphics will appreciate the Renderer's organization: the ability to render to multiple resolutions and multiple directories is helpful to those preparing texture resources.
The DarkTree Community
No review of DT would be complete without mentioning the users and 3d party support that DT has generated. There’s a very active mailing list, which features smart answers to abstruse questions, and friendly folks!
There’s been considerable third party development for DarkTree as well. Marvin Landis coded new noise functions, and made them available, as a free download, to DT users.
Also, a UK based developer, ShadersRJJ, has produced a valuable extension of the DarkTree component set, which can be purchased at sharders.org
DarkTree 2.5 is a well-supported, robust, and cleverly designed application for generating, managing and editing procedural textures. Users interested in textures would do well to take a look at Darkling Simulations' DarkTree.
CD: $419 USD
Download $399 USD
System Requirements: PC Only
Windows XP 500MHz 2GHz + recommended/128 MB Ram
A special "thank you" to
contributing columnist, artist, Alexander Polsky [crocodilian],
for taking time out of his busy schedule
to be a part of our writing team this week.
We invite you to view crocodilian's Gallery