ArtMatic Manual

Unique Applications for Artists and Musicians

This reference manual provides detailed documentation for ArtMatic’s functions, features, behaviors and user interface.  It is available in multiple languages via DeepL AI translation. To change languages, click on the list at the bottom of the browser. Each section can be reviewed as-needed to assist in increasing your mastery. However, there are a few things that are worth understanding when reading any of these sections. 

ArtMatic’s Overall Organization

ArtMatic is a 2D, 3D, and Audio Engine that is the core of multiple applications: Designer, Voyager, vQuartz, and Explorer (Designer Lite).

Designer gives users access to math “programming level” to generate 2D images and audio, Voyager integrates with Designer to create 3D landscapes and objects from Designer files and images.

Click on these links to jump to an overview on each application:

  • Designer and Explorer Overview
    • Overview & Basic Concepts
    • Preferences
    • Canvas View, Main Gradient, and View tools
    • Global Input Matrix
    • Tree Editing & Shading area
    • Parameter area
    • Mutations Explorer Dialog
    • Timeline and Keyframes Area
    • Left Tool buttons
    • Component Descriptions
  • Voyager Overview
    • Overview
    • User Interface & References
    • Environment Context
    • Surfaces modes
    • Colors & Textures modes
    • Sky modes
    • Timeline area
    • Camera controls
    • Building Planets
    • Building Objects : DFRM guide

ArtMatic Designer and Explorer Overview

Overview & basic concepts

ArtMatic is a unique kind of software. It can be seen as a resolution-independent modular graphics synthesizer as well as a mathematical visual programming engine.

In ArtMatic you don’t create an image. You design the rules or algorithm that creates images. In a sense, ArtMatic is a development environment, a huge toolbox of over two thousand functions you can assemble in infinite ways.
ArtMatic’s unique user interface allows you to interact with it in various manners. You can create trees from scratch, tweak and mutate any of the provided presets and examples, or discover and explore entirely new image spaces with ArtMatic’s powerful randomization and mutation tools.

ArtMatic Designer is primarily conceived for creating images and animation. With its enormous set of components you can:

  • create natural looking textures and decorative patterns of all kinds.
  • create and explore beautiful 2D and 3D fractals.
  • create procedural terrains for ArtMatic Voyager or 3D applications.
  • create 3D DF objects for ArtMatic Voyager.
  • create density functions for volumetric clouds for ArtMatic Voyager.
  • create modular sound synthesizers to produce a rich variety of sounds much-appreciated by sound designers and electronic music composers.
  • explore and shade mathematical systems of all kinds. With its extensive set of mathematical tools ArtMatic offer a fun way to explore, teach and visualize mathematics.

Keep in mind ArtMatic Designer is an ‘open’ system. There is in fact no limit to what it can be used for. With Compiled Tree you can design your own custom functions that will further enrich the huge toolbox of ArtMatic Engine. ArtMatic Designer and Explorer rendering is limited to 2D. It’s companion ArtMatic Voyager is designed for 3D rendering of terrains, clouds and 3D objects created in ArtMatic Designer. ArtMatic Explorer lets you tweak and render existing ArtMatic systems with all the richness possible with the various shaders and ‘published’ parameter space.

Structure Tree & Components

The structure Tree is a web of Components wired together in limitless combinations. It is essentially a flow chart that defines the procedural mathematics creating the image. The tree takes its initial inputs from image space coordinates, time and various optional global inputs. Values are flowing from top to bottom and transformed by each Component until the bottom Component(s) outputs the final results.

Each component has up to four parameters that can be modified over time using keyframes. Component are represented graphically by a Tile and the term ‘Tile’ is often used in place of ‘Component’. Component can have 1 to 4 input dimensions and 1 to 5 outputs. When a Tree final component outputs a single value, the tree can be seen mathematically as a scalar 2D or 3D function. When the Tree final component outputs a RGBA vector the entire tree is an image rendering algorithm that creates each pixel color and alpha value. The number of input dimension used by the Structure Tree determines if the system is 2D, 3D, or even 4D if the Tree uses global time input as well.

The number of inputs of a Component sets its dimension, the number of outputs sets its type (scalar or vector (2D to 5D)). Component are often referred to using the in-out number before component’s name so that the component’s type and dimension is clear. For example 31 perlin noise will refer to a 3D scalar noise function that has 3 inputs (3D) and 1 output (scalar).

A number of components allow you to access and process external images and movies (up to eight different movies or pictures can be accessed in a single Tree). These components are especially powerful for creating video special effects. Complex fades and wipes and sophisticated distortion and color-processing can all be animated and rendered as movies or image lists.

Components are described individually in the component reference html files organized by input/output dimensions. A particular component’s reference can be invoked from ArtMatic Designer with command-F (OnLine Help Menu) after selecting a Tile. The aim of a full interactive reference system accessible on line is to provide an accurate and scientific database of what each component does to make ArtMatic huge toolbox a seriously documented toolset usable not only in computer graphics but also for education in mathematics and computer science.

1D Components links:
11 components , 12 components , 13 components , 14 components

2D Components links:
21 components , 22 components , 23 components , 24 components , 25 components

3D Components links:
31 components , 32 components , 33 components , 34 components

4D Components links:
41 components , 42 components , 43 components , 44 components

A structure Tree can hold other structure trees in the form of Compiled Tree. That makes highly complex and rich systems with hundreds of components possible and easier to manage.

Parameter space

A structure Tree defines a mathematical system that can have many states depending on all the component’s parameters settings.

The ensemble of parameter values in a Tree is sometimes referred to as the “parameter space”. A point in the parameter space is just a set of all particular parameter values at that point. ArtMatic “parameter space” dimensions can be huge, often over hundred dimensions. Keyframes stores a particular point in that space. Changing a parameter moves the system to another point in parameter space and animation can be seen as a trajectory in the parameter space between keyframes “points”.

Not all points in this giant space give interesting results but ArtMatic was designed to provide many ways to explore this space to find interesting places like randomization, keyframe interpolation and the Mutation dialog.

Resolution and outputs

ArtMatic’s resolution is nearly infinite, both in depth and range. By default the canvas view is centered around zero and has a radius of Π. Moving the virtual camera or zooming it in or out can often reveal vastly different images from the same Tree. As a mathematical procedural function a Tree is resolution-independent. Some fractal function are nearly infinite in depth so you may zoom by several order of magnitude and still find details. The large set of procedural patterns and noises function provided by ArtMatic engine are only limited in extension by the range of what is representable in 64 bit floating point which is huge. Thus you can have a terrain than span an entire planet surface of 30 000 km square.

By default ArtMatic Designer shades 1D output Trees with the current Gradient by implicitly mapping the output values to the current gradient. Trees with 2 outputs are shaded likewise but both outputs gradient are blended into a single color. Trees with 3 outputs are interpreted as RGB Tree and the resulting color is taken directly from the RGB value. Trees with 4 output tile are interpreted as RGBA with the fourth output setting the transparency or Alpha channel. Negative and zero values are treated as transparent.

ArtMatic Tree systems that outputs RGBA can be rendered as PNG or TIFF images that includes an Alpha channel. PNG images can be rendered in 16 bit per channel allowing the maximum quality. Scalar Tree systems (a single-valued output) are usually rendered using specific shaders that maps the output to RGB and will be rendered without alpha channel as RGB tree systems.

The number of output Tile is not limited to 1. ArtMatic Voyager makes use of multi-outputs trees for various shading needs as documented for example in Shading DF Objects / Using extra outputs.
ArtMatic Designer can also render Multi outputs systems in the RGB Multi mode mode or using various shading options like depth cuing.


ArtMatic Engine refers to the toolbox and rendering engine that is shared by ArtMatic Designer, ArtMatic Voyager, V-Quartz and future Apps that will benefit from the same engine.

Structure Tree : The ArtMatic Structure Tree, often called ArtMatic system, is basically the set of Components connected together that define the procedural function described in Structure Tree & Components. An ArtMatic file is composed by its Structure Tree plus additional shading variables and optional gradients data.
Structure Tree design and editing is only available with ArtMatic Designer in the Design Room.

Most of the time you will modify existing trees by changing its components and eventually adding new functions. Advanced users may want to create complete trees from scratch. All the Tree building and editing tools needed for that are found in the Tree Editing & Shading Area.

Learn more about designing tree concepts in the Building trees page.

Compiled Tree : A Compiled Tree (CT for short) packs a Structure Tree in a single Component. With CTs, Structure Tree can be nested without any limit in levels (CTs can contains CTs that contains CTs). A single level can contain several CTs so there is no limit in the complexity of an ArtMatic Structure Tree.

In general Compiled trees that have the same number of inputs than outputs can be used in feedback mode for recursive computation. Compiled trees are described in more details for each Component type in the component references organized by input/output dimensions. For example 21 Compiled tree will discuss 2D scalar CTs while 33 Compiled tree will discuss 3D vector CTs.

Streams : Stream simply refers to the flow of data through a set of components. An RGB-stream refers to the series of components through which RGB or 3D vector data are flowing. RGBA streams are 4D vector data (that can be packed or not) and represents a color + alpha.

Band-limited. A function is band-limited when its frequency content falls within specific intervals. (You can think of frequency as a measure of the size of the function’s features–high frequencies generate small-scale features and low frequencies generate large-scale features). The Perlin Noise function is a good example of a band-limited function whose output falls in a very narrow frequency band.

Continuity. A function is said to be continuous when its derivative (its local slope) does not exhibit any sudden changes. Continuity is an important issue for ArtMatic Voyager. Certain functions (such as the Step Quantize function) produce a non-derivable, non-continuous result. Many discontinuous functions have a “smooth” variant or a smoothing parameter that softens the discontinuity and makes the result continuous

Linearity. A function is said to be linear when its derivative (or slope) has a constant value. If you connect the derivative operator to a linear function (such as the plane Ax+ By +C component), you will just obtain a single color — an expensive way to clear your canvas.

Multi-fractal. A Multi-fractal function is a function with a varying fractal dimension. Fractal dimension is a measure of statistical roughness. Multi-fractals are very good for capturing the complexity of natural textures.

Periodicity. A function is said to be periodic when it repeats itself ad infinitum with a specific period.

Designer Interface Basics & Conventions

Almost everything that you can see in the user interface is active, including the text, icons and glyphs. Pretty much every graphic item can be clicked or dragged to perform a task. Like all U&I Software applications, most tools are accessible directly from the user interface.

Tool Tips :
The Tool Tips area found at the bottom-center of the main window provides useful information about whatever is under the mouse. Move the mouse over any user interface item to display helpful information. Often the tip will include shortcuts keys if any.

Numerical controls and slider:
Numeric controls allow you to change values by typing or by clicking and dragging. When typing, complete entry by pressing return or entry key. Selecting another field should also validate the entry. You can change the number with smaller increments when pressing the option key while dragging a slider horizontally or a number field vertically. Vertical dragging from the number allows a greater accuracy than the sliders as the range is not limited by the scroller dimension and is about 500 pixels.

* ( times 2) changes the field value to twice its value
/ (divide by 2) changes the field value to half its value
i (invert) changes the field value to 1/value ,
d (degrees) interpret the entry as degrees converted to radians and shall be used at the end of keyboard entry. for example to get exactly Pi type 180 then ‘d’. d should validate the entry automatically.
option key: All numeric fields and sliders are sensible to option key to increase precision by 50x. If shift key is pressed along option key the accuracy is augmented by 500x.

Color Pickers
Color swatches allow you to change various colors. Click and hold a swatch to pop up the color picker. The cursor becomes an eyedropper that picks up the color beneath it when the mouse is released which makes it easy to grab color from anywhere in the background. Unfortunately Apple in recent OS makes the reading of screen pixel subject to Authorization so you will have to grant ArtMatic the right to access the screen otherwise the color picker won’t work. Keep in mind the picker can read any color anywhere on the screen which is extremely useful as you can pick a color from a picture unrelated to Voyager on the desktop for example.


(Designer and Explorer)

Aspect Ratio

Sets the overall aspect ratio of the canvas. The 16:8 (or 2:1) ratio is handy to build and visualize 360° environment maps or when using the Voyager 3D Sky Dome Global Input Matrix mode.

  • Square,
  • 4 : 3,
  • 16 : 9,
  • 16 : 8
  • 3 : 4

Maximum iterations for fractals

Determines the number of iterations used by fractal noises and certain iterative functions. The larger the value, the higher the resolution of these functions when zoomed in as iterations adds higher frequencies most of the time. With large values images may take longer to calculate. Setting this value high will produce more higher harmonics that lets you zoom far inside the fractal to discover lovely details found at the “microscopic” level. This will affects also the level of details of ArtMatic based terrains used in ArtMatic Voyager.

Automatic high res render

When ON this checkbox option will trigger an anti-aliased rendering after any changes in the ArtMatic Trees or its parameters. This is generally unneeded as it slows down the workflow and a hi-res render can always be done at will using the render hi-res eye icon below the canvas view.

Preview Resolution

Preview resolution sets the pixel size resolution of preview rendering and fullscreen animation playback. In main UI the animation playback uses an adaptative resolution and this number sets the lowest possible pixel size.
Note that “Preview Resolution” is set at 2 when ArtMatic Designer or Explorer launches.

Window Skin

Sets the skin of the ui among :

  • Blue Steel,
  • Metal Noise 45,
  • Dark Noise,
  • Shaded Metal,
  • Shaded Grays
  • Paper Blueprint


  • Tuning key
    Sets the tuning key reference. (A0 = 0, A1 = 12) A sine wave at frequency 1 will use the pitch defined by tuning key reference.

  • Tuning mode (popup)
    Sets the main tuning mode.
    • View scaled (Pi2 based):
      Tuning is dependent on current canvas scaling. At default view scale the pitch will be exactly the tuning key reference for a sine wave of frequency 1. Pitch will double when canvas zoom double.
    • Absolute (Pi based):
      Tuning is independent on current canvas scaling. This mode is safer for musical application when the view scale shall not affect the pitch.

Random tables

  • random seed
    The seed to generate a new random table. To change the random table, you must change the Random Seed. The same random seed generates the same random table.

  • New tables
    This button generates a new random table. A different table will change all the noises and random fractals components without changing their statistical distribution. The random table is saved in the ArtMatic file to ensure that when you re-open a file that its appearance is the same. You can change the random table by entering a new seed value then pressing the New Random Tables button.

Canvas View, Main Gradient and View tools

Rooms toggle

  • Browse Room:
    This rooms provide the browsing services that were carried out by ArtMatic Browser no longer continued. By default the folder path is set to the Libraries shipped with the software. It offers Thumbnails previews of a folders hierarchy and allow to select ArtMatic files in a nicer and easy way by double clicking on any thumbnail or clicking in the larger preview.
  • Explore Room:
    Available in ArtMatic Designer and ArtMatic explorer this room allows to play with and animate an existing system without having to handle the complexity of a full tree design and editing. Up to 6 components parameters are provided in the UI for adjustments.

  • Design Room:
    Available only in ArtMatic Designer this room provide all the tool for deep-editing an ArtMatic Structure Tree.

  • Listen Room:
    Available only in ArtMatic Designer this room is similar to the design room but is dedicated to sound design applications. Play button will play the sound and specific sound related controls are added in the UI. ArtMatic Engine works in 44100 hertz sampling frequency only.

Explore Room and includes the browsing services. A new room the “Explore” room allows to play with and animate an existing system without having to handle the complexity of a full tree design and editing. It will be the only room in a low cost version of ArtMatic. The advanced user can “publish” parameter from the tree in the designer room even if they are located deep inside CT’s. “Published” parameters will appear on top of the 6 parameters that the explorer room offer to show.

Main Gradient

(top right)

Precisely how the final output value is mapped to a color depends on the whether the tree is scalar or RGB-based. For RGB-based trees, the color is calculated directly from the 3 output values of the last Tree tile. If the tree is scalar or 2D (2 outputs), the color mapping is handled by the active Shading mode function that uses the main gradient to provides the colors. In most cases low values will be mapped to the left-hand color of the gradient and higher values are mapped to the colors further right.
Even when the Tree is RGB and don’t use the Main Gradient it can have components that uses it to shade the component results like 13 Main Gradient .

What is a gradient? A gradient is a special type of palette that has a user-definable number of color slots. Each slot has its own color. ArtMatic automatically generates all the colors that lie between adjacent slots by linear interpolation ; so, with a few mouse clicks you can create rich palettes. For example, if you want to create a palette that goes from black to white with all the shades in between, you only need a gradient with two slots. Select black as the left-hand color and white as the right-hand color, and ArtMatic does the rest. Each keyframe can have its own gradient. You can store your own gradients in ArtMatic’s gradient library. You can also export and import gradient libraries using the Gradient Editor.

Click on any color box of the gradient to choose another color. With shift key down the change is stored into all keyframes. Use the Edit gradient below for structural changes and more editing options.

Edit gradient

This buttons calls the standard U&I Gradient editor to modify the Main Gradient.

Choose gradient

This buttons lets you choose the Main Gradient among the built-in list of gradients.

Canvas View

You can think of the visible canvas as a downward-facing camera’s view of a portion of an infinite grid or plane (the Cartesian plane you may remember from geometry class). Every visible pixel is a point on the plane/grid. (Pixels are the individual dots of which a digital picture is comprised–it is an abbreviation of “picture element”.) When the canvas is in its default centered position, the center point is 0, 0; coordinate values increase to the right and up. The Structure Tree as a whole acts as a giant equation that takes a visible point’s coordinates as input and generates the color used to draw the point. More simply, the Tree is just the sequence of operations that transforms the input canvas coordinates (x,y) into a final pixel color. The canvas view is then just the visible portion of the coordinates send to the Tree for rendering the image.

To change the region of the plane/grid that is visible, click and drag the canvas left, right, up or down or use the zoom tools. When exploring a system, it is a good idea to zoom in and out on the system since the character of many systems varies dramatically when viewed from up close and from afar. Also, dragging the canvas left or right can reveal surprising details. The default center coordinates of a new system are 0,0 with the zoom set at 1 so that the x and y values range from -Π to +Π (from minus to plus Pi).

When shift key is pressed the new view position and zoom level will be stored in all keyframes, thus suppressing any view animation.

The Animation & Camera Setup dialog displays the current zoom level and the x,y coordinates of the canvas’ center point. It can be invoked from the Animation pop up menu or by simply typing ‘a’.

Default view

This button reset the canvas view to the default scale (-Π,+Π) centered around zero. When shift key is pressed the default view scale and position will be stored in all keyframes as well.

zoom slider

Drag this button left-right to change the current canvas view zoom level. The image preview will be at lower resolution while dragging but should redraw at normal resolution when you let go. When shift key is pressed the new zoom level will be stored in all keyframes as well.

Render high resolution (h)

This button Trigger an anti-Aliased higher resolution rendering of the current canvas view. The left tool bar similar icon will trigger a full screen render.

Tree Editing & Shading Area

This area gather all tools to edit the Structure Tree, set up Tree shading variables and choose the global inputs mode. It also display a graphic representation of the Tree (the Structure Tree View) that is fully interactive. The Structure Tree View editing area is only available in the ArtMatic designer “Design” and “Listen” room.

The 3 pop up menu “insert”, “replace” and “tree” provides all the tool you need for advanced and efficient Tree creation and modification. Their most useful functionalities are also echoed in the Tree editing tool bar icons below the Structure presets pop up icon. Knowing and using these menus can save you a lot of tedious work when modifying the Tree structure.

Structures presets (pop up)

The Structure Presets folder provides many structural starting points for Tree building in ArtMatic Designer design room. Use this pop up to choose a new tree structure template from the Structure presets folder. Unless you keep option key down the chosen structure tree will be automatically mutated. With option key down ArtMatic Designer will simply load the structure preset file.

You can add in the Structure Presets folder your own ArtMatic files when they can be used as a generic template.

“Insert” pop up menu

  • Insert top tile:
    If a tree has parallel branches that you would like to connect at the top, choose the Insert menu’s Insert Top Tile. For 2D trees a rotation tile is inserted at the top of the tree to which both branches are connected. You can change the component to something other than rotation if you desire. For 3D tree a 33 space transform will be inserted at the top. Having a common father tile makes also creation of CT easier.
  • Insert perspective:
    Inserts a group of tiles at the top with a perspective component by default.
  • Insert iteration:
    Inserts an iteration tile to make the Tree iterative. A memory component shall be added to accumulate the results.
  • Disconnect:
    Disconnects the selected tile from its predecessor. The selected tile (and any connected tiles after it) become a new branch of the Structure Tree.
  • Insert Above (y):
    Insert a component above the current selected Tile.
  • Insert Below (t):
    Insert a component below the current selected Tile. The component will have the same number of inputs as its father outputs.
  • Insert 2 below scalar first:
    Inserts two tiles below with a scalar tile (1 out) at first.
  • Insert 2 below scalar last:
    Inserts two tiles below with a scalar tile (1 out) at last.
  • Append 1D filters (f):
    Appends a 11 tile to each output of the selected tile.
  • Append 1 out (1):
    Inserts a one output tile after the selected one.
  • Append 2 out (2):
    Inserts a two-output tile after the selected tile. Note: This command is only available when the selected tile has two or more outputs.
  • Append 3 out (3):
    Inserts a three-output tile after the selected one. This command is only available if the selected tile has two or more outputs.
  • Append 4 out (4):
    Inserts a three-output tile after the selected one. This command is only available if the selected tile has two or more outputs.
  • Add branch (b):
    Adds a new branch which forks off from the selected tile. The last component in the system is modified to accommodate the new branch.
  • Add Parallel branch (=):
    Adds a new branch parallel to the selected tile.
  • Complete Tree:
    Completes the Structure Tree by closing it and joining any loose branches.
  • Add Color Pict/Movie item:
    Adds a color RGB Pict/Movie component after the selected tile. This command is only available when the selected tile has two outputs.
  • Pack Outputs (p):
    Adds a pack component to the selected tile. This command is only available if the selected tile has 3 or 4 outputs.

“Replace” pop up menu

  • Split component:
    Split the selected component into several parallel components. A 22 tile, for example, is split into parallel 11 tiles; a three-in/two-out tile is split into a 21 and a 11 tile. This command is only active if the selected tile has two our more outlets.
  • Split scalar & vec:
    Split the tile in two with priority for the first tile to be scalar.
  • Split vec2:
    Split a 4 output tile in two 2 outputs tiles.
  • Make group (g):
    Replace the selected tile with a group of tiles equivalent to the Make Group tool.
  • Make z group:
    Adds tiles to the Structure Tree so that the selected tile feeds a three-input tile.
  • Make RGBA group:
    When applicable it will create a group of tiles with RGBA outputs from 31 or 21 selected tile.
  • Replace with scalar (1 out):
    Change the number of the selected tile’s outlets to one. (Only available if the current number of inlets is compatible with one outlet.)
  • Replace with vector (2 out):
    Change the number of the selected tile’s outlets to 2.
  • Replace with vector (3 out):
    Change the number of the selected tile’s outlets to 3.
  • Replace with vector (4 out):
    Change the number of the selected tile’s outlets to 4.
  • Replace with 1 in:
    Change the number of the selected tile’s inlets to 1.
  • Replace with 2 in:
    Change the number of the selected tile’s inlets to 2.
  • Replace with 3 in:
    Change the number of the selected tile’s inlets to 3.
  • Replace with 4 in:
    Change the number of the selected tile’s inlets to 4.
  • Replace with xz transform:
    Replace a selected 33 tile with a 22 space transform connected to x and z. This can save a lot of connecting time when you need the transform only on the xz plane.
  • Replace with color pict:
    Replace a selected 21 tile with a 23 RGB Pict/Movie component.

“Tree” pop up menu

  • Copy Tile (x):
    Echoes the Edit menu Copy Tile.
  • Paste Tile (v):
    Echoes the Edit menu Paste Tile.
  • Delete Tile (backspace):
    Delete the selected tile. Shortcut: delete key.
  • Send Tile to Main output (m):
    This command makes the selected tile the main output that calculates the image displayed in the canvas. This command is only meaningful when: 1) the selected tile is in the bottom row of tiles, and 2) there is more than one tile in the last row.
  • Send Tile down (o):
    Move a tile down one row. This only has an impact when there is space below the tile.
  • Send Tile up (u):
    Send a tile down up level in the tree.
  • Move Tile left (<):
    Move the tile one space to the left in the tree.
  • Move Tile right (>):
    Move the tile one space to the left in the tree.
  • Compact Tree (c):
    Let ArtMatic re-organize the tree automatically. This command is useful when you have been adding and deleting tiles and want ArtMatic to compact the display of the tree.
  • New Compiled Tree (n):
    You can directly create a CT from any selected tile using this command. You may also select a group of tiles for grouping in a CT using the following method:
    1: select the top tile as usual.
    2: select the output tile using shift click on a tile below. Avoid having loose branches as CTs must have a single output tile. All tiles in between should be selected. The output tile will be highlighted in pink/velvet hue.
    3: Invoke “New Compiled Tree” to make a CT or type the ‘n’ key.
  • Open Compiled Tree… :
    Open a compiled tree INTO the selected tile. ArtMatic will prompt you for the compiled tree to open. Only compiled trees with the same number of inputs and outputs as the selected tile can be chosen.
  • Save Compiled Tree:
    Use this command to save a CT on disk for later use. It is a good idea to store useful functionalities in CTs in a CT folder somewhere.
  • Edit Compiled Tree (e):
    Edit the selected compiled tree will open and display the CT content for editing. When editing a compiled tree, the input matrix changes to make room for CT inputs. Type ‘e’ to enter or leave this edit mode.
  • Rename Compiled Tree… :
    Invoke the dialog to rename trees. The functionality is also available by clicking on the Tree name box.
  • Input Matrix Setup … :
    Invoke the Input Matrix Setup dialog that lets you set the mode described below.

Global Input Matrix

The Global Input Matrix feeds information to the Structure Tree. In addition to the x and y canvas coordinates, time, audio analysis, and ArtMatic Voyager information can be sent to the tree. ArtMatic Voyager information is only sent to the tree when the ArtMatic structure is being used inside of ArtMatic Voyager. The other global inputs are generally used for one of two applications: 1) using time or audio input to influence the tree when rendering animation/movies, 2) using information from ArtMatic Voyager to create color maps influenced by elevation and/or slope.

The information passed out of global inputs (Z, W, A1, A2, A3, and A4) is determined by the Input Matrix mode. The x and y global inputs are always the (x,y) coordinates of the ArtMatic Canvas. The input matrix mode is set in the Input Matrix Setup dialog that is invoked by clicking on any label of the input matrix.

  • Constant mode: Constant mode is the default mode of ArtMatic and is suited for 2D graphics and video applications. Z: relative time normalised (z flows from 0 to 1 during animation span, whatever its duration. This means that the speed of z will slow down when duration increases. Prior ArtMatic Engine 8.0.6 the z input was scaled by 4 ).
    W: absolute time in seconds.
    A1-A4: constant values;
    The Z input is time as a percentage of completion of keyframe animation. When keyframe animation plays, Z will be 0 when the animation starts and 1 (representing 100%) when the animation reaches completion. The W input, which is expressed in absolute time in seconds, is useful when you want some sort of change in the animation to be unaffected by the number of keyframes or the duration of the animation. For example, if you want the canvas to rotate at a rate independent of the animation’s duration, use W. The constant values A1-A4 that can be set in the Input Matrix Setup dialog offers an alternate ways to send global values to component inputs. Unlike the 11, 12 or 13 constant components the input matrix constant can easily be used in the tree and within several level of Compiled Trees with the guaranty that the values will be the same for all sub-functions, thus acting like a global.
  • Audio Input mode :
    Use this mode when you want to animate components with audio (either from audio file or live input) in Design or Explore room. Z & W: relative and absolute time;
    A1-A4: audio bands analysis information : A1 audio bass, A2 audio medium l, A3 audio medium h, A4 audio high.
    For the sound analysis to affect the Tree you will need to use values provided by inputs A1 to A4 to modulate tree parameters. See the examples provided in Libaries/Master Audio Input/ to learn various technics about how to make a Tree sound sensitive. The values in A1 through A4 represent the strength of the audio in the given frequency band. For example, connect a tile to A1 to have the bass frequencies influence the image. The audio can come from either live audio or an audio AIFF file. In audio input mode the following additional parameters are available: Input Device, Input Source, Audio Sensitivity, Sound In Inertia. The A1-A4 values are created by applying eight parallel DFT filters which are summed together in pairs. A1 is the sum of filters centered at 42 and 84 Hz. A2 is the sum of filters centered at 168 and 336 Hz. A3 is the sum of filters centered at 672 and 1344 Hz. A4 is the sum of filters centered at 7688 and 5376 Hz.

  • ArtMatic Engine uses 44100 hertz for sampling rate and audio files needs to be in 44.1 to work properly (this does not apply to Master Audio Input files used as controllers). When connecting to an input device make sure the device is set to 44.1 (Sample Rate). Bit Depth of input should not matter as its converted to float internally. On certain hardware monophonic input devices seems not to be supported.

  • Audio Sensitivity is used to control how sensitive the system is to audio input. High values make the system more sensitive to audio. Sound In Inertia determines how smooth the transition between values is. When the inertia is low sudden changes in the audio can cause abrupt, jittery changes. Use inertia to smooth changes caused by the audio input.
    Animation playback will run forever in main ui and Full screen preview when using Audio Input mode with live audio. To start playback and sound input capture use space bar.

    TIP! When creating systems for audio control, you may find it useful to switch the Global Input mode to constant mode. While the dialog is open, you can change the constant values and observe how the system responds to the changes. This can give you an idea of what the A1 through A4 inputs do in the system without having to play audio.
  • Time & Cycles:
    Time & Cycles mode is mostly used for sound design applications in the Listen room of ArtMatic Designer but can also be handy to control various looping features independently of keyframes. Z: absolute time in seconds. Note that z plays the role usually devoted to w input.
    W: integer counter (32 steps) with rate set in hertz
    A1-A4: free running oscillators (cycling values) set in hertz
    There is an additional parameter, BPM adjust, which adjusts the speed of all the oscillators at once – allowing them to all be sped up or slowed down. The W value is an integer value that cycles from 1 to 32 at a rate determined by the frequency (in Hz) parameter. A1 through A4 are the output of four independent saw-wave oscillators. For those unsure of what an oscillator is, A1 through A4 generate floating-point values that increase steadily from 0 to 1 as time progresses and then reset to 0 and start climbing again to 1. The oscillators repeat this over and over at a speed determined by the Saw Cycle setting in the Input Matrix setup dialog. The saw waves are especially useful for creating continuous rotation when connected to the third input of the 32 z Rotate component.
  • ArtMatic Voyager:
    “ArtMatic Voyager” global input mode is used by ArtMatic files designed for 3D ArtMatic Voyager rendering. The mode provides various input information from Voyager context and rendering variables as explained below. Z: context dependent. When the ArtMatic Tree is 3D z will hold the third space coordinate.
    W: absolute time in seconds.
    A1-A2: Slope & Elevation;
    A3-A4: Image space view origin (x,y) or Image space sun position (x,y)
    This information is only passed in when the ArtMatic system is accessed from within ArtMatic Voyager. When an ArtMatic file is loaded into ArtMatic Voyager, it can receive various types of information from Voyager. This is covered in greater detail in the ArtMatic Voyager documentation. A1 and A2 are used to create complex color texture maps that allow color to be influenced by both elevation and slope.
    All values passed by Voyager through the X, Y and Z global inputs are scaled according to ArtMatic’s view. The values passed through A2 are absolute and independent of the ArtMatic scale.
    Slope is only evaluated for color texture maps and at the color texture stage of combination mode planets. It has no meaning when the ArtMatic structure is being used as an elevation map.
    NOTE: Slope and elevation are only defined when the system is being used for the color texture/shading and cannot be used by those parts of a tree that define the elevation map (since slope and elevation only make sense after the elevation map has been calculated). In a tree that provides both color and the elevation map, the slope and Voyager elevation can only be used in that part of the tree that define the color.
  • ArtMatic Voyager 3D Sky Dome:
    The input mode “Voyager 3D sky dome” is suited to visualize in 2D a 3D 360° Voyager Sky dome or to create 360° environment images in ArtMatic. A spherical inverse projection is used implicitly to view the Sky Dome. X Y and Z global inputs will return 3D coordinates on a sphere (with a 2:1 ratio). At default view size top and bottom line will map to north and south pole and coordinates will loop in X.
    Using 3D for the 360 environment has the advantage over 2D spherical mapping to have no deformation near the pole and can be viewed in spherical projection from any angle within Voyager.
    The component 3D SkyDome Planet makes creation of planets in 3D sky dome more easy.
    Except for the viewing geometry this mode is equivalent to the ArtMatic Voyager input mode. A number of 3D sky domes based trees are provided in the Environments 360 folder of the Voyager Library.

When Editing a Compiled Tree the Global inputs graphic make room for slots representing the CT’s own inputs. They are labelled i1, i2, i3 and i4. You can actually remove one of these inputs if not used by (option click) on the input circle that corresponds. In some occasion you may want to connect a Tile inside the CT to global inputs bypassing the CT inputs. For example you may feed the CT with transformed coordinates while one element in the CT may need to use the original untransformed coordinates. In that case you will connect that tile to the global X Y inputs instead of i1 i2.

Structure Tree View

There is a lot you can do by manipulating the Tree directly in the Structure Tree view area. The structure tree is the arrangement of components that generates the displayed image. Each component has a Tile that represents it and that displays the inputs/outputs and its connections with other tiles. Each tile’s outlets are fed into the inlets of the following tile. Tiles at the top are connected to the global inputs. When editing a CT they can be connected to either the CT’s input or the global inputs.

To select a Tile click on it. It should be outlined in green. Selecting a tile will update a number of associated ui items like its parameters, its algorithm and options if any. Once selected you can then modify all tile’s settings by adjusting the parameter sliders in the Parameters area and various associated pop ups like main algorithm or options.

To change a tile’s function, click on any tile and hold down the mouse button to pop up a menu of the available functions. The function list varies according to the number of a tile’s inlets and outlets.

To change a tile input and output dimensions control-click on any tile and hold down the mouse button to pop up a menu of the available tile’s types. By convention the tile type name use their number of inputs and outputs as a class name. For example a 2D surface with 2 inputs and a single output will be referred as “21 componentname”. You may also access the replace menu while clicking on a tile with option+command key down.
When using Command-option click on a father above you invoke the Reconnect Dialog (see below).

Tree Connections

The connections between tiles determine how information travels through the tree. While many people stick to the preset structure trees that we provide, it is possible to create trees from scratch or modify the connections between the tiles of a preset structure. This section details a few important Structure Tree concepts and some valuable techniques for editing trees. When tiles are added or removed, ArtMatic does its best to guess about how the tile connections should be re-configured, but there will be many cases where you will need to use the Reconnect dialog to make the desired connections.

The component or components that feeds the tile inputs are usually named father(s);

There are two ways to change the connections between a child tile and a parent tile found higher on the tree or between a tile and the input matrix :

Automatic connection (command-click) forces an automatic connection from a child to a parent tile. The ‘child’ is the current selected Tile outlined in green. When an automatic connection is made, ArtMatic will try to connect all of a tile’s inputs to the output of the parent tile. To use automatic connection, select a tile (the child) and command-click on a tile higher-up on the tree or on one of the labels of the global input matrix.

In the latest build (July 2020) the relative position of the new father will give a hint to which inputs shall be connected by default when father outputs number is smaller than child’s inputs. When the father is at the right the child rightmost inputs will be connected instead of the leftmost which is the usual case. So for example if a 1 out tile carries an alpha value, place it to the right if you need the automatic connection to feed the 4th input, often the alpha value. In a similar way if a 4input tile mixes two 2 output tiles place the one to be connected to 2 and 3 to the right.

The Reconnect Dialog (option-command-click) allows for custom manual connection of tile inputs and outputs. To invoke the Reconnect Dialog, select a tile and then command-option-click on a tile at the same or higher level. By using manual connection (with the Reconnect tile), a tile’s inputs can be fed by different parent tiles.
Using the Reconnect Dialog is mandatory when you need to change the order of connections, like connecting x input to a z output for example.

Both methods require that the parent tile be higher on tree than the child tile and can be used to either connect loose or open inputs or to change a tile’s parent. Lear more about Tree design in the Building trees page.

Delete Tile (backspace)

Delete the current selected Tile. The functionality is also provided within the tree pop up menu. Designer does its best to reconnect father(s) and son(s) automatically. Note you can’t delete the last tile, as a Tree needs at least one tile.

Insert Below (t)

Insert a component below the current selected Tile. The component will have the same number of inputs as its father outputs. The functionality is also provided within the insert pop up menu.

When you need specific dimensions or/and specific output types more options are available in the insert menu.
Tip : When building complex trees or experimenting with mutations or random path animation, you may find it helpful to insert filter components to restrict the range or modify the values being fed into some but not all of a component’s inputs (or outputs).

Insert Above (y)

Insert a component above the current selected Tile. The same functionality is also provided within the insert pop up menu.

Make group (g)

Insert a similar component to the right of the current selected Tile and adds a mixing component below. The same functionality is also provided within the replace pop up menu. This is a convenient way to complexify a particular feature of the tree.

Add branch (b)

Insert a similar component to the right and below the current selected Tile without connecting further. This is a handy way to start a new branch.The functionality is also provided within the insert pop up menu. An alternative way to create a new branch is to use insert->add parallel branch function that will add a new similar component to the right and connected to the same father(s).

Complete Tree

In most cases, ArtMatic uses the output of a single component (the first component of the last row) to create an image. Trees should generally be complete (i.e. have only one component at the bottom of the tree with an unconnected output) except for cases where an unconnected output is used for depth cueing or global shading or where additional outputs are used by ArtMatic Voyager. Because you will often find yourself needing to connect parallel branches while editing tree structures (especially if you are creating a system with several pictures or 3D objects), the complete tree tool has been provided to automatically complete incomplete trees.

When the complete tree tool is clicked, ArtMatic will mix the branches of the tree by adding and connecting the appropriate components. For example, to mix two parallel RGB branches, ArtMatic will add any required pack components then mix the branches with a packed RGB mixer. Mixed systems that feature an RGB branch and a 1-output gradient-based branch will be mixed with the appropriate 4->3 mixing component. Multiple 1D branches will be mixed with a two or three to one mixer.

In rare cases, ArtMatic may not be able to determine how to mix the system, in which case a beep will sound when the complete tree tool is pressed. If this happens, you will have to add some tiles yourself to complete the tree. If there is an RGB branch and a 2-output branch to mix, for instance, a 2D Scalar (2-in/1-out) component should be added at the end of the two output branch.
You can often save yourself a lot of work by using this tool.

Tip: Joining branches at the top. If a tree has parallel branches that you would like to connect at the top, choose the Insert menu’s Insert Top Tile. For 2D trees a rotation tile is inserted at the top of the tree to which both branches are connected. You can change the component to something other than rotation if you desire.

Tree name box

This box display the names of current Tree and subtrees hierarchy. Click on the Name to rename the main Tree or the Compiled Tree if currently open for edition. This will open a dialog displaying some information about the trees and providing a text field where you can rename the Tree or Compiled Tree.

Exit Compiled Tree edition

Available when editing a Compiled Tree this buttons will send you to the top of the tree hierarchy.
Shortcut : escape key.

Edit Compiled Tree (e)

Available when the selected Tile is a Compiled Tree this buttons will open and display the CT content for further editing.
Shortcut : Select a CT tile and type ‘e’.

Image and Movies Inputs

Choose Pict/Movie

Available when the Tree use a Picture/Movie component , either black & White like 21 Pict/Movie or full Color like 24 RGBa Pict/Movie , this pop up menu allows you to choose which picture input channel is used by the component.

Choosing an empty slot prompts you to select a picture or movie that will be added as an available input source.
To further organize the inputs list select the “Setup inputs” item. The invoked dialog will let you delete or add new inputs. When using movies you will be able also to select a starting time and some playback speed options. Movies formats

ArtMatic Engine 8 uses AVfundation to display movie frames. Apple new system unfortunately doesn’t support as many codecs as Quicktime did but most incompatible quicktime ‘.mov’ files can still be converted by Quicktime player. You may bypass codecs limitation and compression by using list of pictures (tiffs or png) as animation input. Any file lists where a frame number with leading zeroes ends the file name (for example myanim00001.tif, myanim00001.tif, myanim00002.tif) will be interpreted as an animated file by the engine.

Keeping Track of Referenced Files
ArtMatic Engine does its best to track input source files. In some cases, generally because a file has moved, was deleted or renamed, when a ArtMatic file is opened ArtMatic will search for the missing input. ArtMatic starts the search with the folder holding the ArtMatic file then searches all folders one level higher. When this happens a message, Searching for File, appears in the Tool Tips area. You can cancel the search by pressing the Escape key. We strongly recommend that you keep the ArtMatic file and the picture/movie file it references in the same folder or a folder in the same directory as the file’s parent directory so it is in the search path. That way you can copy the entire folder hierarchy to another disk without risking loosing references. For example the Libraries has a folder called image that is shared by several other artmatic file folders.

Tree Shading controls

This group of tools relates to the Tree’s color mapping and shading mode. They are available both in ArtMatic Designer and ArtMatic Explorer.

If the bottom tile of the tree has a single output and is passing out an RGB or RGBA packed stream, the tree is treated as an RGB or RGBA tree (rather than a scalar tree using gradient coloring) and the shading options are adjusted accordingly. ArtMatic Voyager will treat these as RGBA trees as well.

Scalar trees are rendered using various mappings involving the main gradient and optional components values.

Auxiliary colors squares

The auxiliary color squares are color pickers for choosing the auxiliary colors used by some shading algorithms and various components. The number of auxiliary colors used is determined by the shading algorithm or the presence in the Tree of components using them. Note that auxiliary colors are global to a particular ArtMatic file and are not stored in keyframes so they can’t be animated.

Depth cue color

The color used by Infinity, depth cuing when ON and certain Components like 44 Alpha Fade) or 23 Pict/Movie Overlay. The Depth cue color is always visible and available even if Depth Cuing is turned off. This color is used in RGB-based systems wherever the value infinity is encountered like the outside of pseudo 3D objects and where the infinity gate component is used.

Aux color A

Auxiliary color A (default : dark red) is used by several scalar tree procedural shaders (see below) and by RGB Multi mode mode for Tree extra outputs. A couple of components uses this color as well like 44 RGB * alpha or 13 Shaded plain color in certain modes.

Aux color B

Auxiliary color B (default : green) is used by several scalar tree procedural shaders by RGB Multi mode mode for Tree extra outputs. A couple of components uses this color as well like 44 RGB * alpha in certain modes. S:P Logic &Profiles uses Aux color B to shaded the edges for example.

Shading modes

The Icon below the color squares controls the current shading algorithm or Shading mode. Note that Shading mode is global to a particular ArtMatic file so it is not stored in keyframes and can’t be changed over the course of an animation.

Click here to pop up a list of the color shading algorithms which are described below. The contents of this menu changes depending on ArtMatic Tree output type.

For scalar trees (1 or 2 outputs) the shading algorithms are the following:

  • Cyclic clut:

    This shader causes the colors to cycle throughout the value range. It applies a sine function whose output value is mapped to the gradient. Zero is mapped to the gradient’s central color. Clut stands for color lookup table.
  • Ceiled Linear clut:

    This shader uses a linear scale to map incoming values to the gradient. 0 is mapped to the gradient’s central color. The shader has a ceiling value above which the incoming values are mapped to the rightmost color. There is also a floor value. Values below the floor are mapped to the leftmost color.
  • Logarithmic clut

    This shader is symmetrical about zero (i.e. -5 and +5 map to the same color) and the transition between becomes more gradual as the incoming values increase. Mathematically-speaking, the logarithm of the absolute value of the tree’s output value is mapped to the gradient. 0 selects the leftmost color.
  • Procedural A:

    Base shader: logarithmic color shader
    Auxiliary shading: pixel brightness determined by sine function
    Auxiliary colors: none
    This shader combines logarithmic and cyclic shading. The Logarithmic Clut algorithm determines the pixel hues. ArtMatic then imposes shadows by applying a sine function to vary the pixel brightness. Where the sine function is 0, the image is black and where the sine function is 1 the color is unchanged. The result is a sort of 3D cylindrical banding. To make the most of this shader, use a two input tile for either the final or the penultimate tile. Watch how the shading changes as you manipulate that tile’s inputs.
  • Procedural B

    Base shader: logarithmic color shader
    Aux.shading: aux. input 1 influences luminance, aux. input 2 determines color shift
    Auxiliary colors: Aux color B
    This shader uses two auxiliary inputs from the tree to modulate an image calculated using a logarithmic shading algorithm. The first auxiliary input provides luminance information and the second provides a color shift using the second auxiliary color. Note: the first auxiliary color is ignored by this shader.
  • Procedural C:

    Base shader: logarithmic color shader
    Auxiliary shading: Auxiliary inputs one and two create a second image using a cyclic shader. Auxiliary input three controls the mix of the base and second image.
    Auxiliary colors: none.
    This algorithm calculates two intermediate images which are mixed together under the control of the third auxiliary input. The first intermediate image is calculated from the system using a logarithmic algorithm. The second intermediate image is calculated by feeding the first two auxiliary inputs into a sine-based shader. The third auxiliary input (from god knows where on the tree) controls the interpolation (mixing) of the two intermediate images.
  • D:Log+Depth cueing+Color Filters:

    Base shader: logarithmic color shader
    Auxiliary shading: color filtering using aux. colors and inputs
    Auxiliary colors: Aux color A and B
    Global shading options: Depth Cueing
    This shader calculates a base image using logarithmic shading, turns on depth cueing (discussed later in this chapter) and uses the second and third auxiliary colors to filter the image. Two color filters (whose colors are provided by the second and third auxiliary colors) are calculated using two auxiliary values from the tree and applied to the base image. The filtering is done by multiplying the pixels of the filter with the pixels of the base image.
  • E:Linear+Depth cueing+Lights:

    Base shader: logarithmic color shader
    Auxiliary shading: color filtering using aux. colors and inputs
    Auxiliary colors: Aux color A and B
    Shading options: Depth Cueing
    This shader is based on linear shading and operates similarly to shader D except that the auxiliary color images are combined with the base image using addition rather than multiplication. This shader also turns on depth cueing.
  • F:Linear+Directional Lights:

    Base shader:linear color shader
    Auxiliary shading: directional lights controlled by the system’s last vector function plus black shadows to emphasize lighting direction.
    Auxiliary colors: Aux color A and B
    This shader creates directional lighting effects. The last vector function (i.e. the last function with two outputs) of the Structure Tree provides direction information for directional lights used to shade the image. A primary white light is shined on the surface while lights of the three auxiliary colors are shined from different directions. Black shadows are provided which emphasize the lighting effect.
  • G:Linear+3 Lights:

    Base shader:linear color shader
    Auxiliary shading:
    Auxiliary colors: Aux color A and B
    This shader is based on linear shading. Three pre-defined slots from the structure tree are used to provide lighting information using three auxiliary colors. The rules for determining which auxiliary inputs are used are complex. If there is a three-input component, its inputs are used to add the auxiliary colors. If there is no three-input component, the last three inputs on the tree are used. If the auxiliary colors are all black then the image will be identical to one shaded with the ceiled linear clut.
    Tip: To see how this shader works, use an all black gradient and note the effects of changing the auxiliary colors.
  • H:Global Shade+3 Lights:

    Base shader:linear color shader
    Auxiliary shading: aux. inputs provide shading and lighting information
    Auxiliary colors: Aux color A and B
    Shading options: Global Shade On
    This is another complex shader based on linear shading. The Global Shade option–discussed later in this chapter–is turned on which uses an auxiliary input to control the luminance (brightness) of the image’s pixels. The final component’s output provides global illumination multiplied against the linear-shaded image. Three auxiliary colors provide additional lighting. Tip: For many structures, this can yield dramatic three-dimensional effects especially when the last component in the tree is the derivative (dx) function.
  • I:Global Shade+Lights+Depth cueing:

    Base shader:linear color shader
    Auxiliary shading: aux. inputs
    Auxiliary colors: Aux color A and B
    Shading options: Depth cueing on
    This is another complex shader based on linear shading. It uses the last vector output function to provide depth cueing information and two other aux. inputs which control the application of auxiliary colors two and three.
  • Linear clut (zero based) :

    This shader is essentially similar to the linear shader but maps zero to black and uses a normalised range so that 1 gets mapped to white.
  • Balanced Log clut:

    Balanced Log performs logarithmic mapping of the gradient by using the gradient’s colors for values greater than 0 and complementary colors of the gradient for values less than zero. This is a variant of the ‘standard’ Logarithmic Clut shader which uses the same colors for positive and negative values. This shader is especially useful when using ArtMatic to design sounds as it is very easy to see that positive and negative values are balanced (which is important for sound–since sounds that are out of balance suffer from DC Offset and will often result in clicks and distortion.
  • Geographic clut

    Geographic Clut is a shader that aids artists designing DF fields or terrains for ArtMatic Voyager as this mode shows clearly the boundary between the inside and the outside (shaded with blue shades evoking underwater depth) of a DF volume or the elevations under sea level (at zero) for terrain modeling.
    ArtMatic Geographic Clut uses hard-coded colors to represent specific elevations. This mode is also available with RGBA trees.

For RGB or RGBA trees (which includes packed RGBA output trees) the shading algorithms are the following:

  • RGB Alpha (main out):

    RGB Alpha does no additional image processing. Most of the time, this is the shader that you will use when creating RGB-based graphics. When a tree has three outputs, they directly provides the Red, Green and Blue channels of the RGB image. If there is a fourth output its content is treated as an alpha channel that modulate opacity. A checkerboard pattern is used for transparent regions. If you don’t want an alpha channel you can either :
    -use the mode RGB Multi mode
    -add a 33 tile to the end to convert to pure RGB (no alpha)
    -add a 44 tile “Alpha scale and offset” to zero the alpha scale and set the offset above 1 to ensure total opacity.
    NOTE: When rendering a movie with an alpha channel, make sure to select a codec compatible with alpha channels.
  • RGB Density (main out)

    This shader is similar to RGB Alpha but turns any alpha value above zero to fully opaque. It is suited for DF color texturing when one need to preview the colors but still have a clue about the exterior of the object that will be fully transparent in this mode.
  • Geographic clut (main out)

    Geographic clut creates a 3D topographic map where the fourth output of the tree provides elevation data and where the colors are provided by the built-in geographic clut. The first three outputs of the tree are ignored. So, it is often used while fine-tuning the system alpha or elevation output. Alpha channel/elevation values below zero will be shaded with blue shades evoking underwater depth. For DF modeling this mode shows clearly the boundary between the inside and the outside of a DF volume.
    In addition to elevation color mapping this shader uses the terrain derivative to bump-shade the surface for increased clarity. The ‘Bump gain’ tool described below controls the bump shading amount.
    This shader is more computationally-intensive since calculation of a system’s derivative requires several Tree evaluation .

  • RGBA Bump (main out):

    The tree’s RGB output is lighted/textured using the derivative of the fourth output (bump shading). Negatives values will be shaded with bluish hues getting darker when the distance to zero increases. This shader provides a sense of how a four-output system will appear in ArtMatic Voyager when used as a colored terrain (where the first three outputs will be treated as color and the fourth as elevation). It is also suited for DF objects previsualisation as the exterior zones are below zero and the shades will give a sense of the Distance Field itelf.
    If the tree has only 3 outputs, a derivative calculated from a mix of RGB values.
    The ‘Bump gain’ tool described below controls the bump shading amount.
    This shader can also create dramatic 3D-like textures. While the Geographic Clut gives an accurate portrayal of the elevations created by the ArtMatic system, the Geographic Clut ignores the color information embedded in the ArtMatic system. The RGB+Alpha Bump shader gives you an idea of what the elevation map will look like when colored with the RGB information embedded in the system.
    This shader is more computationally-intensive since calculation of a system’s derivative requires several Tree evaluation .
  • RGBA Multi

    In this mode the alpha channel is ignored for the first output tile. Additional outputs will be composed to the overall image using the following rules :
    scalar (single out) values will be shaded in additive mode with Auxiliary colors coloring the output.
    RGB (3 outs) colors will be shaded in additive mode.
    RGBA (4 outs) values will be composited as alpha layer, that is the alpha value of the component will control the blending of the color.
    RGB multi is a fast way to compose several alpha layers over the first output that will be treated as an opaque background. It can also be used when the alpha channel is unwanted to render a RGBA system in opaque mode.
  • RGBA Bump (multi out):

    This shader is similar to RGB Bump but can handle multiple RGBA outputs. It is particularly useful for dual shaded DF objects used in Voyager like :
    Opaque + Light
    Opaque + Transparent
    Opaque + Transmissive

Shading options popup menu

In addition to the color shading algorithms, there are two powerful shading options: depth cueing and global shading. Depth cueing provides fog and distance effects and global shade provides lighting and shadow control. Both of these options can be assigned either automatically by ArtMatic or manually by the user. These options are accessed via the Shading Options popup menu. Click here to pop up a list of various shading and rendering options.

  • Depth Cueing Off:
  • Depth Cueing Small:
  • Depth Cueing Medium:
  • Depth Cueing Strong:
    Depth cueing simulates the color-filtering effect of the atmosphere (the same effect that causes distant objects to appear faint). Depth cueing works by assigning the
    Depth cue color color according to a depth/distance evaluation. By default, ArtMatic picks the component in the tree associated with distance (generally the first auxiliary input). This assignment can be manually overridden (as explained below). This color is superimposed on the image in relationship to the depth /distance. As the distance increases, so does the brightness and opacity of the depth color. ArtMatic provides direct manipulation of depth cueing which can be used for both distance and purely decorative effects.
    For more control on depth cuing you can alternatively use the 44 Alpha Fade tile where the fourth input will drive a depth cuing.
  • Global Shade Off:
    Turs Off Global Shade.
  • Global Shade On:
    Another shading option is Global Shading (or shadowing) that can be turned on via the options menu. Global shading creates shadows and light in the image by modulating the luminance (brightness) of the image’s pixels. Where the shading component generates low values, the image will be dark (shadowed), and where it generates large values, the image will be brighter. As with depth cueing, you can now choose component that provides the shadows (global shading) as described below.
    For more control on shading you can alternatively use tiles like 43 w Multiply and Illumination to implement shading within the tree.
    Note: The global shading glyph is the small marking in the icon’s lower-right corner.
  • Component sets Depth:
    The selected tile will be used to provide the Depth information.
  • Component sets Shade:
    The selected tile will be used to provide the Shade information, usually a derivative component. A small shaded glyph is used to indicate components that have been manually assigned. Restoring automatic shade/depth control. If you have used the Component Sets Depth or Component Sets Shade commands and want ArtMatic to restore its automatic depth/shading choice, select the Fog and Shade Automatic item from the shading options popup menu. Note that Fog and Shade Automatic may have a check mark even if depth and shading are turned off. The check mark merely indicates that if shading/depth are turned on that ArtMatic will choose the components automatically.
  • Evaluate only for colors:
    This option is only relevant for systems to be used by ArtMatic Voyager. Turn this option on for any tile that should only be evaluated by ArtMatic Voyager during the color texture evaluation phase. This can greatly optimize rendering time by avoiding texture and color computation when unneeded. For example when designing RGB+Alpha trees that provide both the elevation map and the color texture to ArtMatic Voyager, set the color texturing part to “evaluate only for colors”. Voyager will ignore tiles that have this option set when calculating the elevation map. If possible, put all tiles used for generating the color texture in a compiled tree and apply this option to that single compiled tree tile.
  • Fog and Shade Automatic:
    Usual state where ArtMatic will choose which tile provides Depth Cuing automatically.

Bump gain

RGB Bump (main out) and Geographic Clut uses the Tree elevation or alpha value to bump-shade the result implicitly. The Bump gain button lets you slide the amplitude of this bump shading. It is often quite useful to have a better grasp of terrain relief features or DF field derivative.
For final renderings we recommend to use custom shaders where the derivative is shaded using the
Structure Tree components to have a better control of the bump shading function (instead of relying on RGB Bump mode). Examples of customized advanced bump shading technics can be found in the Libraries/Textures/Shaded Surfaces/ folder

Parameter area

Parameter grid options

This popup turn on/off various grids mode to restrict the parameters settings to the selected grid. Options: no parameter grid, Integer Grid, Snap Grip (closely spaced grid), Pi/4 angle grid (this restricts rotation and other angle-based parameters to increments of 45 degrees), Pi/6 angle grid (this restricts rotation and other angle-based parameters to increments of 30 degrees).

Randomize colors & shaders

Mutate the active gradient and the active Shading mode.

Randomize All (‘$’)

Randomize all of the structure’s function assignments, parameter values and color assignments. Control-click randomizes the entire structure tree as well as the function assignments. Tiles whose parameters are completely locked are protected from Randomize All.

Randomize parameters

Randomize the parameters of all unlocked tiles. Repeatedly clicking this tool is one way to explore the possibilities of a particular system. The parameter locks can be used to prevent randomization of a particular parameter.

Mutations Explorer Dialog

Invoke the Mutations Explorer dialog.

The Mutations Explorer is one of ArtMatic’s most powerful tools and uses genetic algorithms to generate mutations while your choices takes the role of natural selection. It allows to quickly and easily explore the huge Parameter Space of ArtMatic systems and mutate the current ArtMatic Structure Tree algorithm by randomly mutating it’s tiles functions.

When the mutations explorer first opens, the current canvas image is the parent (the large image in the upper-left). Clicking on the parent generates a new set of mutations. ArtMatic creates mutations by randomizing unlocked parameter values and the gradient and/or function assignments (depending on the selected options). Clicking any mutation (any ‘child’), makes that mutation the new parent. If the auto-mutate option is turned on, clicking any mutation makes that child the parent and generates a new set of mutations.

The Mutate (dice button) triggers a new set of mutations. Interesting mutations can be stored in the Keyframes using the Add or Replace Keyframe buttons.
Clicking the OK icon button closes the dialog and validates the current state of the Tree.

Mutation rate :
The mutation rate slider controls the mutation probability. High values will let you explore a large region of parameter space. Low values are often used to fine-tune a system or to find small variations in very sensitive systems like fractals. ‘Locked’ parameters won’t be mutated so you can use this property to protect certain parameter from mutations. Flow controllers like Iterations and Recursions parameters are not mutable, even unlocked.

Explore modes :
Several strategies are provided to explore the Parameter Space:

  • Cumulative:
    The default mode accumulate mutations sequentially. The distance to original point in the P-space increases row by row from topleft.
  • Points cloud:
    The Points cloud mode explore a region of random points around current state in the parameter space. The distance to original point in the P-space increases proportionally to the 2D distance with the topleft thumbnail.
  • Random path:
    The Random path mode uses a continuous random path within the parameter space to display the mutations. The distance to original point in the P-space increases row by row from topleft.

Mutate function type:
This checkbox is available in cumulative mode only. When ON mutations includes algorithm changes and tile component changes. Use this to explore systemic variations. Note that changes of algorithm or tile component will invalidate all existing keyframes as the mathematics of the entire structure tree will have changed.

Keyframes Parameters

Invoke the Keyframes Parameters Envelop dialog that display time curves for each active parameter of the current selected tile. This dialog is available when more than 2 keyframes exists in ArtMatic Designer only. To create Keyframes visit the Timeline and Keyframes Area.

A, B , C , D (pop up buttons)

Theses popup menus gives you access to parameter-related functionalities and shortcuts for each used parameter :

  • Publish parameter:
    The advanced user can “publish” parameter from the tree in the designer room even if they are located deep inside CT’s. “Published” parameters will appear on top of the 6 parameters that the explorer room offer to show. “Published” parameters will also be directly accessible in ArtMatic Voyager for fine-tuning. Published parameters have a green lock icon or a orange lock icon if the parameter is locked.
  • Unpublish:
    Unpublish a published parameter.
  • Published parameters names…
    Invoke a dialog that lets you rename the 6 (or less) published parameters. The published parameters should be renamed when the default generic parameter name is not informative enough in certain cases, especially when you plan to share the ArtMatic file for other users. Theses names should be set once the tree is stable enough as they can get lost in the editing process : Copy/paste won’t preserve published flags and names for example, and tree editing may mess up the order of the parameters and their name.
  • Send current value to all KF:
    Sends the current parameter value to all keyframes.
  • Ramp full range:
    Meaningful only when keyframes exists, this function ramp current parameter value from minimum to maximum for all keyframes.
  • Ramp from first to end:
    Meaningful only when keyframes exists, this function ramp current parameter value from first KF value to last KF value in all keyframes. If they happen to be the same this will make the parameter static over the animation.
  • Reverse time:
    Meaningful only when keyframes exists, this function reverse the time of paremeter keyframes envelope.
  • Reset to default:
    Lets you reset a particular parameter to its default value.
  • Reset All to default:
    Lets you reset all of a tile’s parameters to their default values.

Parameter sliders (A,B,C,D)

Component’s parameters are modified using the parameter sliders. Each tile in a structure has from 0 to 4 parameters (settings). Each keyframe in a file can have different settings. To modify a tile’s current parameters, click on the tile then manipulate the parameter sliders. To see what a parameter controls, move the mouse over the slider and note the Tool Tips display. Drag a slider to change its value or option click to make a small changes.

In ArtMatic Designer Design room, the parameters slider changes the current tile’s values. The changes will be lost if you have keyframes and either change the current time or select a keyframe as the parameters value will then be derived from the animation keyframes. To store parameters changes in a keyframe you may need to replace the current (or any) keyframe, unless the parameter is locked in which case the current value applies to all keyframes. To access and edit the keyframes values in Design room click the Keyframes Parameters button to open the Keyframes Parameters Envelop dialog.

In Explorer or Explore room, the published parameters sliders will directly edit the keyframe values (if any) and the parameter envelop is displayed in the main window for direct editing of the entire set of values. Select first a keyframe to get the parameters value at that time then any changes will be assigned to the keyframe without having to replace it.

Parameter Locks

The parameter locks (found to the right of the parameter sliders) allow function parameters and component assignments to be locked to prevent them from being changed by operations such as mutation that normally change parameter values. When a parameter is locked its animation is disabled as well. When all parameters are locked the tile itself can no longer be mutated.

To lock all tiles, shift-click any unlocked parameter. Locked parameters shows the lock icon in red. This makes it possible to use the Mutations dialog to explore variations of only a few parameters. To unlock all tiles, shift-click any locked parameter.

Locking parameters and functions is a great way to explore ArtMatic systems. Parameter/function locking makes it possible to use mutations and the large die to explore subtle refinements. For example, you might have a system that uses a few tiles to provide the surface texture. You could lock all of the parameters and functions of the system except for the tiles that provide the texture and then use the big die or the Mutations window to discover new textures created by function mutation that affects only the few components that provide the texture.

Note: When parameters are locked, keyframe animation uses the last values assigned to the locked parameters when animating the system. As a result, any parameter changes stored between keyframes are ignored while the parameters are locked. The parameter changes are not lost however; they are just ignored. When the parameters are unlocked, any parameter changes stored in the keyframes will be honored during animation. Parameter locking is intended for refined mutation control and for investigating how a particular parameter affects the system.

Parameter optional gradient

Certain components uses an indexed gradient directly from the built-in gradients library like 13 Indexed Gradient . This gradient is displayed for editing when such a component’s tile is selected and the button below may open the standard Gradient editing dialog if needed.

Parameter optional color

Certain components parameters sets a RGB color. This color pop up is available when such a component’s tile is selected and can be use to edit the 3 RGB value at once. For example the 13 Set Constant tile sets a constant RGB color with its parameters.

Timeline and Keyframes Area

This area is focused on Animation controls. It provides the Keyframes UI, the main timeline slider and various buttons to control keyframes. Keyframes stores not only all the current Tree parameters but also the current Canvas View Zoom and Position and the current Main Gradient. The animated sets of zoom and position stored in Keyframes constitute what we call the “camera path”.

All components constituting the Tree can have its parameters animated as long as they are not locked. ArtMatic creates animation by changing the system’s parameters over time morphing the values from keyframe to keyframe. Various modes of parameter interpolation are available : they can be chosen inside the Keyframes Parameters dialog. The default is using bezier curve to ensure a smooth interpolation.

Sound can be used to modulate ArtMatic animations when they are rendered, and a soundtrack can be added or generated (using the sound algorithm last used on the Sound page) when rendering. Audio modulation is a powerful technique to use for creating video for music videos and multimedia compositions. To modulate ArtMatic animation with audio, audio input must be routed from the Global Input Matrix into the Structure Tree. See the Global Input matrix section for more information about this topic.

Tip : Making global changes to all keyframes
Holding down the shift key when performing many operations applies the operation to all of the ArtMatic tree keyframes. (These operations include: gradient selection, zooming and scrolling the canvas, and changing parameter values.)

Animation pop up menu

The Animation menu provides the following:

  • Animation & Camera setup…(a):
    Invoke the Animation setup dialog which determines the animation duration, animation type and the camera movement. This dialog and its settings are covered in the Animation page.
  • Add Keyframe (k):
  • Replace Keyframe (l):
  • Delete Keyframe:
  • Insert In-between Keyframe (i):
    Same functionalities as the corresponding buttons.
  • Guess Next Keyframe (G):
    Generate a keyframe that continues the motion of the previous keyframes. This command is only available when the last keyframe is selected and at least 2 keyframes are present.
  • Copy Camera Path:
    Copy the current camera path to the clipboard so that it can be pasted into another file.
  • Paste Camera Path:
    Paste a copied camera path onto the current system.

time slider

This is the main slider that controls global ArtMatic Designer time. The time flows from 0 to the given duration. You can use the time slider even when no keyframes are present when the ArtMatic tree is using one of the time global inputs.

You can click and drag on the time slider to preview the animation in non real time or simply click at a particular time to see a frame preview at that moment.

Keyframes thumbnails

Keyframes store all tree’s components current parameters values so they can be animated over time. They also store the current canvas view and the main gradient. The ArtMatic system’s keyframes will be mapped in time so that all the keyframes play back over the course of the animation. When just 2 Keyframes are present the first represent the state of the system at time 0 and the second at time 1 (the end of the animation).

Keyframes are not limited to animation : they are often used to store interesting variations of the huge Parameter Space of ArtMatic Trees. Sliding the timeline will interpolate these parameters to let you discover more interesting points in the space of possibles.

Click on any empty slot to store a new keyframe from the current Tree parameters.

Click on a keyframe will select it. When selecting a keyframe the Tree parameters variables stored in the keyframe will be copied to the current Tree, with the exeption of parameters that were specifically LOCKED to not be animated. The time slider will also reflect the particular time position of the selected keyframe and send this time information to Voyager when the Voyager hot link toggle is ON. In Explore room it will hilit the published parameter envelop value if the parameter has an envelop. Then you can modify the keyframe parameter directly in the envelop as well as with the parameter slider. Although you can edit the entire envelop it is safer to just move the hilited parameter to see the changes result.

Command-Click on a keyframe will replace it.
Option-Click on a keyframe will delete it.

Note : Keyframes thumbnails are not recomputed for every changes you can make so they may become misleading in certain cases. To force a full keyframe redraw you can lock/unlock any parameter.

Play (space bar)

Preview the current animation. The resolution adapts to the CPU load of the current Tree to keep fluidity of motion. Unlike in earlier versions the priority is given to frame rate to ensure at least 12 fps. Slow systems may playback very pixellated. The old small preview mode is gone but you can alternatively use the small animation preview provided by the Animation & Camera setup dialog that won’t change the resolution.

Shortcut: Spacebar. Even without keyframes play will flow time so that time-sensitive or time connected components will be animated as well.

Duration MSF

The watch icon is used to set the animation duration. Click and drag left or right to change the duration. Duration is displayed in MSF format (minutes, seconds, frames)

Delete (keyframe)

Delete the selected keyframe. Shortcut: option-click any keyframe to delete it.

Insert (keyframe)

Calculates a new keyframe that is halfway between the selected keyframe and the keyframe after it.

Add (keyframe)

Add a new keyframe with the current Tree parameters. Shortcut: you can also click on the first blank keyframe to add a new keyframe.

Replace (keyframe)

Replaces selected keyframe with the current Tree parameters. You may also use command-click on a keyframe slot to perform the replacement.

Left Tool buttons

Open ArtMatic file

This button echoes the File->Open command and will prompt you to locate an ArtMatic file (extension .artm).

Save ArtMatic file

This button echoes the File->Save command and will either directly save the current scene if the file already exists or prompt you to set a name to save the ArtMatic file.

Render pict to screen

Render the current scene fullscreen with Anti-Aliasing ON. Once the current image render is done you may animate the system using Space bar. The full screen animation preview is done at the preview resolution set in Preferences and won’t be changed for slow systems. Frame rate may vary with the CPU load of the ArtMatic Tree. When the animation mode is set to “free run loop” or the global input matrix is set to audio input the fullscreen animation playback will loop forever. With fast ArtMatic Trees you can set the preview resolution to 1.

Render Image to file (cmd-R)

This button opens the Render Picture dialog that gather the settings to render image file(s). Size pop up and size fields: Common dimensions are provided by the Size pop up menu. The numeric fields accepts any entry up to 24000. Over 15K size the rendering will be performed directly to disk and may take a while.

PNG 8 bit per channel,
PNG 16 bit per channel:
PNG is a lossless widespread format an is recommended. Use the 16 bit version for printing and high quality graphics. It will solve any banding or quantization artifacts.
TIFF : Save the image in 8 bit per channel, TIFF format.
PDF : Save the image in 8 bit per channel, PDF format (.pdf).
JPG : Save the image in 8 bit per channel, jpeg format (.jpg). Note that jpg has no alpha channel. Use this for high compression Web application.

HeightMap 1025 16 bits,
HeightMap 2049 16 bits:
Save the image in RAW, 16 bit per channel gray scale image. This is suited to store terrain elevation in 1025 and 2049 square format for 3D applications like Unity 3D.

PNG HeightMap 16 bits:
16 bit per channel gray scale image of any size suited to store terrain elevation or high quality texture channel for bump mapping in 3D applications.

Render all keyframes (checkbox): When set ArtMatic will render one image for each stored keyframes. Keyframes can be used to store interesting variations of a given tree. In that case it may be quite useful to render the entire set instead of just the current image.

4 by 4 anti-aliasing:(checkbox)
Turn ON/OFF 16 samples 16 sample per pixel rendering mode. Use it to improve quality for fractals and systems with a lot of high-frequencies.

File Path:

Click this button to set the image file path. By default the path is set to be in the same directory as the ArtMatic file. You don’t have to set it for every save as it will remember the output directory. Note that no warning is given if you overwrite a file when saving without setting the path.

Render Animation (cmd-M)

Click the Render Animation tool to render an animation. The file does not need keyframes to be animated. To stop a render, press the escape key.

Mode popup (movie or picture sequence)- The options are:
Movie :
ArtMatic Engine 8 uses AVFundation to save animation in the .mov format. Possible codecs are :
H264 (no Alpha),
Apple ProRes 422 (no Alpha),
Apple ProRes 4444 (8 bit Alpha),
Apple ProRes 4444 (10 bit Alpha)
Apple ProRes 4444 will support alpha channels and the 10 bit version offers the best quality. H264 is more compressed and widely supported.
Note: Make sure you set the file path as no warning is given if you overwrite a .mov file.

List of Images (png),
List of Images (Tiff).
The “List” options render the movie frames as sequentially numbered image files (in either PNG for List of Pictures or TIFF for List of Tiff). Such sequences are recognized by most movie editing programs and by ArtMatic pict/movie inputs. Using image sequences is a good idea when performing a long render since nothing will be lost if the computer shuts down unexpectedly. (movies will likely be unplayable if the render is interrupted by anything else than escape key).

Preset popup:
– The preset popup provides a list of common frame size/frame rate combinations. Choosing a preset cause the format and fps fields to be filled in with the appropriate values.

4 by 4 anti-aliasing:(checkbox)
Turn ON/OFF 16 samples per pixel rendering mode. Use it to improve quality for fractals, systems with a lot of high-frequencies or high contrast graphics with fine details. Rendering time will be multiplied by 4 with this option ON.
Note the default anti-aliasing is 2 by 2, that is, 4 samples per pixels.

File Path:

Click this button to set the animation file path. By default the path is set to be in the same directory as the ArtMatic file. You don’t have to set it for every save as it will remember the output directory. Note that no warning is given if you overwrite a file when saving without setting the path.

Save sound file

Available in Listen room this button will save the sound file produced by the current Tree. The file is AIFF and uses 44.1K for internal sampling rates. When rendering the sound to file the internal maths are more precise than in real-time playback and the sound may slightly differ. Note: Master Audio Input file sample rates are not the same as internal audio.

This button lets you turn ON and OFF the Hot link with ArtMatic Voyager. When hot link is ON, changes in parameters and Structure Tree will be communicated to Voyager through Apple Events. When Voyager receives such an event it will pop up a floating preview of the 3D rendering. It makes of course the design of terrains, textures and the construction of volumetric object much more friendly as you can see the 3D rendering interactively while adjusting parameters.

Transport time information is also transmitted when using the time slider or selecting a keyframe.
When the tree is structurally modified ArtMatic will send the new tree to Voyager using a temporary file so the original is preserved. Unless you save the file in ArtMatic or the voyager scene in Voyager you can always go back to the original.

Changes in artmatic globals like optional colors and the main gradient colors are not transmitted automatically. However they will be transmitted if you turn OFF and immedialty ON the hot link : when turning ON the entire file is send as explained above for structural changes.

Important Notes:
– Using this feature along with published parameters changes of ArtMatic Tree within Voyager may lead to inconsistent situations. Make sure that if you use the Quick Edit ArtMatic params & shaders inspector and have changed the ArtMatic tree parameters inside Voyager to reload the file into ArtMatic again so that ArtMatic knows about the changes. Otherwise as soon as you modify the tree in ArtMatic it will undo the changes.

-If you use “save as” in Voyager that will de facto change the path of the ArtMatic file (ArtMatic files are stored within the Voyager bundle file) meaning the one opened in ArtMatic will no longer point to the right file location and still point to the original.
Again the solution is to reload the ArtMatic file into ArtMatic from Voyager after “save as” to make sure you edit the correct file.

If communication don’t work as expected there are a number of thing to double-check :
-Is the Voyager hot link ON ?
-Is the current ArtMatic file pointing to the right one ? To be sure re-open the file from ArtMatic Voyager. Same thing if you have changed the file name in either softwares.
-Make sure ArtMatic and Voyager versions are compatible and the only one running. Use both CTX or 7.5/4.5 together and don’t mix versions. If various versions are running simultaneously the OS may send the Apple Event to the wrong Application.
-At last resort the OS Apple Events system is probably damaged and rebooting the computer usually fixes the problem.

Component Descriptions (English Only)

Designer contains a library of components. Each a module you patch together in a structure tree. They all have a fixed number of inputs and outputs. When you click on a component in a “tree” a popup appears showing all the other components of the same Input/Output type. Click below for component descriptions:

Reminder: ArtMatic Designer is an “open” system. There is in fact no limit to what it can be used for. With a Compiled Tree in Designer, you can create your own customer functions and enrich the toolbox that is the ArtMatic Engine.

Voyager Overview

ArtMatic Voyager is a program for synthesizing and exploring stunning, high-resolution virtual landscapes and worlds. The application is a new take on 3D landscape creation that makes use of the ArtMatic graphic synthesis technology to create photo-realistic landscapes of imaginary worlds. The application can be used standalone using the built-in planets and provided ArtMatic systems, or you can use ArtMatic Designer to define completely new worlds of your own, model 3D objects, create custom clouds and so on.

Using ArtMatic Voyager is simple:

  • Choose a planet surface, texture, and a sky definition.
  • Define the environment: sun color and direction, sea and snow levels, haze/humidity.
  • Travel the planet by moving and aiming the camera.
  • Save interesting locations as places or keyframes.
  • Add 3D ArtMatic objects edited in Designer
  • Render still images or movies.

ArtMatic Voyager uses a unique approach to creating virtual landscapes. Rather than polygon-based techniques, Voyager uses procedural functions to generate planet-sized terrains that are rendered as three-dimensional landscapes. This technique allows Voyager to easily create huge planets without any database. Furthermore most of the procedural building blocks are band-limited adaptive fractal functions which allows you to achieve stunning foreground details without wasting processing power for details far in the background.

ArtMatic Voyager can render views as still images or animation. Environmental parameters and the camera position can be keyframed and used to render stunning animation. The surface texture and shading can even be animated when using ArtMatic Designer terrain maps and color textures. Using the built-in planets or the provided ArtMatic planets is simple and fun. Advanced users can define their own planets and textures using ArtMatic Designer – either by starting from the provided examples or by creating new systems from scratch.

The ArtMatic Voyager Advantage
Voyager directly renders planets from a mathematical description of the planet surface. Elevations, defined by procedural mathematical functions or ArtMatic systems (which are themselves compact procedural mathematical functions), are evaluated on the fly as the rendering proceeds. By contrast, traditional 3D landscape software stores elevation data in an array or database called an elevation map or height map. The enormous advantage of Voyager’s approach is that it allows huge worlds (many times the size of our Earth) with infinite levels of detail to be defined compactly since there is no need for a database. As a result, the memory requirements and storage size of a planet is trivially small, and yet a Voyager file can yield scenes of extraordinary detail.

Beyond planets a Voyager scene can also feature cities, architecture, spaceships, vegetation and even animals. ArtMatic Engine 7 introduced procedural volumetric infinite cities. ArtMatic Engine 8 completed the set of DF primitives used in the 3D objects design. As with terrains, Voyager has a procedural approach to modelling through the technic called Distance Field Ray Marching (DFRM ) which offers an incredible flexibility. DFRM technics are covered in detail at Building Objects : DFRM guide

Planets & Built-in Planets
The size of a Voyager world is theoretically infinite, but practical considerations (primarily related to limitations of values that can be represented by a computer) require that planet size be limited. ArtMatic Voyager planets are planar (flat, non-spherical) terrains 60,000 kilometers by 60,000 kilometers – more than three times the size of the Earth. (The Earth has a surface area roughly 40,000 by 20,000 kilometers.) Surface amplitude can be controlled and allows the same elevation description to create subtle plains or extreme mountains and canyons. 3D ray tracing techniques are used to create the lighting effects. Distance is measured in kilometers. Latitude and longitude are expressed as offsets from the planet center. So, the map extends +/-30,000 kilometers North/South (latitude) and +/-30,000 kilometers East/West (longitude) from the planet center.

Voyager provides 5 built-in planets that are big and varied enough to spend years in exploration. They combine a variety of terrain procedures using complex random filters that provide a great deal of topologies. These planets could mostly be created in ArtMatic surface mode but would require very complex ArtMatic structures that would render more slowly than the built-in functions.

Oceans and snow level are defined with environment variables ( the sea level and snow level controls) and are not part of the planet topology.

Learn more about planets and ArtMatic defined terrains in Surfaces modes

Context variables
ArtMatic Voyager provides you with a great deal of control over the planet’s environment. The light, haze and other environmental parameters can dramatically change the planet’s appearance. Most of the environmental controls are found in the lefthand toolset and in the Environment settings dialog. The environmental variable with the camera and the built-in lights constitute what we will call the Voyager Context variables.

It includes:

Camera location and view direction The sun’s position & sun color The Ambient level controls the amount of incidental or ambient light that is available The Wetness level controls the degree to which the water and low elevations reflect the sky color Haze and the Haze Color picker give you control over environmental haze Sea level & sea color sets the altitude and color of the global planet ocean Sea Roughness slider influences the wind speed (and thus the motion of clouds when a system is animated) The Snow Level sets the altitude at which snow will be automatically added Built in lights that provides additional suns or light sources Clouds density and position Sky Environment rotation or position for backdrops Illumination gains and Gamma filter

Context variables can all be animated as each Voyager Keyframe will store a copy of the entire Context. You can disable the animation of a particular variable with the Animation Parameters inspector. Note that Planet mode and Sky mode and some global settings (Mist, Atmospheric color shift, Underwater color shift and various rendering modes) are NOT part of the context and can’t be changed while animating. Learn more about environment variables here

ArtMatic Voyager lets you store favorite places on the planet in the Places menu. When saving a place, ArtMatic Voyager stores the current settings defined by the Context variables. Thus Keyframes & Places are very similar in that they both store the complete set of Context variables. Places makes sense in relation to a specific planet so obviously when you change the main planet the locations may become problematic if the camera is below ground. However as the place saves other variable it is interesting to keep them as ways to store a particular ambiance and illumination so they are not cleared when changing the main planet. Just move the camera and resave the problematic places in that case.

Voyager Interface Basics & Conventions

Almost everything that you can see in the user interface is active, including the text, icons and glyphs. Pretty much every graphic item can be clicked or dragged to perform a task. Like all U&I Software applications, most tools are accessible directly from the user interface.

Tool Tips :
The Tool Tips area found at the bottom-center of the main window provides useful information about whatever is under the mouse. Move the mouse over any user interface item to display helpful information. Often the tip will include shortcuts keys if any.

Numerical controls and slider:
Numeric controls allow you to change values by typing or by clicking and dragging. When typing, complete entry by pressing return or entry key. Selecting another field should also validate the entry. You can change the number with smaller increments when pressing the option key while dragging a slider horizontally or a number field vertically.
* ( times 2) changes the field value to twice its value
/ (divide by 2) changes the field value to half its value
i (invert) changes the field value to 1/value ,
d (degrees) interpret the entry as degrees converted to radians and shall be used at the end of keyboard entry. for example to get exaxtly Pi type 180 then ‘d’. d should validate the entry automatically.

Color Pickers
Color swatches allow you to change items such as the sun and sky color. Click and hold a swatch to pop up the color picker. The cursor becomes an eyedropper that picks up the color beneath it when the mouse is released which makes it easy to grab color from anywhere in the background. Unfortunately Apple in recent OS makes the reading of screen pixel subject to Authorization so you will have to grant Voyager the right to access the screen otherwise the color picker won’t work. Keep in mind the picker can read any color anywhere on the screen which is extremely useful as you can pick a color from a picture unrelated to Voyager on the desktop for example.

Inspectors and Dialog
Introduced in Voyager 5 Inspectors allows to edit deeper settings in a non modal way unlike dialog. Thus we keep the name “dialog” for modal windows that prevent main UI to operate while we use “inspector” for UI that pops up in certain areas but don’t prevent controls, menus and main preview to be functionnal. The most important UI tools to control objects, sprites, lights, animation, render options and environment controls have been reimplemented as “inspectors”.

Inspectors will appear on the side without hiding the main view. The main UI that control the Camera, Environment and Positions is still accessible while using a specific inspector. Modeless “inspectors” are used for Objects, Sprites, Lights, Animation and deeper Environmental options and parameters. They can be opened using the icons on the top right of the UI. The one specific to timeline ‘Animation parameters’ is located in the timeline area.

Some functionality that were in the dialogs were moved to the main UI because the non-modality make them usable even when a particular “inspector” is open. For example a new section ‘Positions’ below the ‘Camera’ handle the positioning of every elements in a VY scene which meant the position slider became redundant in the dialogs.

‘Positions’ can apply to objects, lights, clouds, textures and even the main planet terrain. In general the target will be set automatically when selecting an object or a sprite or a terrain but you can use the mode pop-up at the left of the section to decide to move the cloud layer, even if you are placing sprites or objects at the same time.
So practically if you open the object inspector to import various objects you can still move the sun or change the camera view.

Keyboard entries can’t be assigned to several windows simultaneously. Thus a selection click is needed on Main UI before keys input can be redirected to it when an Inspector is Open. Likewise click on the Inspector area to redirect keyboard entries to the inspector.

Adaptative resolution
Most of all sliders gives you real time preview at an adaptive resolution. You can click and drag on any control while seeing in real time the result of camera or object changes. When the scene is slow this real time preview will be at a very low resolution but enough to have a useful feedback. As soon as you release the mouse a better rendering is starting, a rendering that can be interrupted at any moment to tweak another parameter.

Sprites inspector (x)

Opens the Sprite inspector. Sprites are very fast to render and can provide a lot of cool visual effects for animation when using animated ArtMatic systems: meteorites that cross the sky, various light effects, even reflective water flakes. Static PNG sprites can be used to add people in your architectural or landscapes scenes, a city in the background, or some trees in the foreground etc…
The Sprite inspector gather all tools to open, scale, orient, activate and shade sprites.

DF objects inspector (o)

Opens the Objects inspector. The Objects inspector gather all tools to open, scale, orient, activate and shade DF 3D objects.

Lights inspector (l)

Opens the Lights inspector. The Lights inspector gather all tools to setup and shade built-in additional lights. Lights are fully animatable and can be treated as additional suns so Voyager 5 can now have multiple-sun worlds.

Quick Edit ArtMatic params & shaders

Opens the Quick Edit ArtMatic params & shaders inspector. This inspector gives you a direct access to “Published” parameters from the selected tree and can set the shading options associated with extra outputs.

Designer since version CTX 1.0 can “publish” up to 6 parameters from the tree even if they are located deep inside Compiled Trees. “Published” parameters are accessible for modification directly within this inspector without having to open ArtMatic Designer.

If no particular parameters were published it will present the first 6 founded parameters found in the tree.

As Designer trees are used for many things in VY you have (on the top-right of the inspector the wheel-gear icon) a dynamic popup that lets you choose which tree you want to modify. You can also rename the tree which is often useful after modifying an existing one or to create variations.

Environment Context

The left tools in Voyager UI are dedicated to Environment control variables that are part of the current Context variables.

Sun direction sphere

The sun direction sphere allows you to set the position of the sun that illuminates the planet. The sun’s angle realistically influences the color, the shadows, and reflections. Click on any point to focus the sun’s light at that point. The bright spot indicates the sun’s position relative to the planet’s sky dome which is represented by the sphere. When the illuminated spot is in the center of the globe, it is noon (i.e. the sun is directly overhead). When the illuminated spot is at the edge of the globe, the sun is dipping towards the horizon. In Voyager 5 it is possible to put the sound below the horizon. In no planet mode, this allows for the sun to light objects from below.

Sun color box

To change the sun color, click and hold the sun color rectangle to pop up the color picker. Sun color affects all colors in the scene and the clouds. The sun provides directional lighting and is the primary source of illumination whereas the Ambient slider provides diffuse non-directional lighting. To decrease the sun’s contribution to the lighting, lower the brightness of the sun color. If you set the sun color to black, the ambient light from by the sky and the haze will provide the scene’s illumination and shading. Varying sun color along with the haze color and sun position allows ArtMatic Voyager to simulate a wide variety of light conditions.

Sun/Atmosphere mode pop up

Sun/Atmosphere pop up menu is located to the right of the Sun direction sphere. It will set various aspect on how the atmosphere and sun are rendered.
The modes are as follow:

  • sharp sun:
    The default mode with a sharp disk rendering of the sun.
  • strong halo, fuzzy sun, red shift:
    Atmospheric halo is stronger in this mode which includes red shift scattering when the sun is low on horizon.
  • extra bright sun, red shift:
    The sun is rendered as a smaller but brighter point and the mode includes red shift scattering when the sun is low on horizon.
  • soft halo, no sun:
    A softer halo around an un-rendered sun. This mode is suited for use with ArtMatic 360 or ArtMatic Backdrop sky modes.
  • no halo, no sun:
    The no halo, no sun option is often desirable when using the ArtMatic 360 or ArtMatic Backdrop sky modes, in particular when the ArtMatic Environment systems already shades the sun with an alternate representation. For example you may have a sun with rays and a rainbow ring around. The Voyager Skies library provides many example of custom skies shaders.
  • Automatic with scattering:
    Introduced in version 5, this sky/sun mode offer a more realistic approximation of atmospheric scattering. It has red shift when sun is low and the haze color tends to be less pronounced and more realistic because haze is sensitive to scattering direction. The sun is rendered like in ‘extra bright sun’ mode. Note that Atmospheric scattering hue can now be changed to non-oxygen worlds in the “Environment settings” inspector.

Cast shadows

When this option is on, the surface will cast shadows on itself, and any clouds will cast shadows on the ground. This greatly increases the realism of the scene (and also rendering time). This setting is ignored in Draft quality. Computing shadows is computationally very intensive. Turning this option on can cause rendering to take many times longer than when it is turned off. The time required to compute an image when Cast Shadows is on varies tremendously depending on the sun’s orientation, the maximum landscape height, and the closeness of the foreground. Keep in mind that when the sun is low, the sun casts shadows that are very long. The render quality setting affects the accuracy of the shadows. When the setting is better or best or sublime, Voyager uses very refined sampling which can take a very very long time but will yield the very best results. You may want to start with good quality and increase the quality if the shadows seem wrong or incomplete.

Haze slider & haze color

The haze setting determines the amount of atmospheric haze (caused by moisture and suspended particles in the air). With low values, the haze is only visible at a distance. With high values, visibility is reduced dramatically. The Atmosphere Height preference also affects the density of the haze and determines how high the haze will go . The haze color can be changed by clicking (and holding) the mouse on the Haze Color picker. ArtMatic Voyager models the scattering of light that causes a blue shift of dark colors and red shift of bright colors that increases with distance. Changing the haze color has a dramatic impact on the way that colors are attenuated and shifted in the distance. Setting the haze color to gray enhances the red shift. In Voyager (just as in reality), a low sun will appear more red than it is. Note that the Atmospheric Color Shift preference also has an influence on how distance influences color.

Ambiant slider

This slider controls the amount of ambient light provided by the diffuse scattering of light from the sky dome. The ambient light is an overall illumination predominantly provided by the sky and is non-directional (unlike the sun’s). When ambient light is strong, the colors of the sky will “bleed” noticeably on the surface. Ambient light can be eliminated by setting the slider to its minimum value (0). Without ambient light, areas that are not directly lit by the sun will be very dark.

Wetness slider

This setting determines how much the sea and snow and areas near the shore reflect the sky color. It also accentuates the water’s reflectivity. When the wetness is high, you get fuzzy specular reflections in the areas affected by the setting. It also may change 3D object wetness as the renderer takes the maximum of the global wetness setting and the object own wetness setting.

Atmosphere height slider

The Atmosphere Height sets the altitude at which atmospheric gazes becomes insignifiantly small. It affects the density of the haze and determines how high the haze will go and how much scattering is going on in the sky shading model. The slider range is between 1 meter and 8000 meters. Note that when no Planet mode is used there is no longer any Atmosphere.

sea (level) & sea color

Sea level determines which elevations are filled with water. It is expressed in meters. Everywhere below sea level will be covered with water. Use the color picker found next to the slider to choose the sea color. In scenes where most of the sea color comes from the reflection of the landscape and sky, use a dark color for the sea since the sea color is added to the total light coming from the water and can easily get too bright if its color is too light. The sea color is also modulated by the depth of the sea. It is darker where the water is deeper.
Note: the Camera is not allowed to go below the sea level.

roughness slider

This slider controls the surface texture of the sea by controlling the wind speed which makes the sea rough. The wind speed also affects the speed with which clouds move automatically when time flows. Roughness influences the sea reflectivity and usually the amount of foam as well. Rough seas are less reflective than calm sees. The sea appearance can be modified with the various options avilable in the “Environment settings” inspector.

Transparency slider

This slider controls water transparency. The appearance of underwater features is also influenced by the Underwater Color Shift setting in the “Environment settings” inspector .

snow (level)

Snow level determines the elevation above which the planet is covered by snow. The amount of snow is influenced by the steepness of the terrain and the elevation above snow level. The range is from -500 to 10,000 meters. You can generally eliminate snow by setting the snow level to 10,000 meters since it is rare that you will have peaks that high.

Environment Settings…

Opens the Environment Settings Inspector.

Main View area

The main view area is not only the place you will preview the current scene. It can act as a controller as well if you click and drag on it to move the camera. The amplitude of the motion depends on the Map Scale radius. The resolution of the preview is adaptative and will change to allow quasi realtime feedback when sliding parameters or previewing animation. Many single shots commands display a low res preview before starting a finer calculation.

Planet And Sky Settings

The right tool sets provides most controls for setting up the current scene : the Surface that defines the planet, the Texture that shades the planet and the Sky settings that handle sky rendering. Various UI elements and sliders may appear depending on the chosen modes for Skies and Textures.

Map Overview

The surface map shows the portion of the planet that surrounds the current camera position. The default dimensions of the area covered by the map can be set with the Map Scale (radius) button below. The map reflects the current sea and snow level settings as well as the surface color mode. Click and drag on the Map Scale controllers to zoom in or out on the map. The red lines indicate the view visible at the current zoom setting. The blue line indicates the current compass heading.
Click on the map to move the camera to clicked location. You can also click AND drag while keeping the mouse down to move the camera on the Map : the main view will render the camera view in fast preview mode interactively.You may even go outside the Map area while dragging which gives you a much larger virtual region to explore. This offer a very efficent way to position the camera.
Notice that the latitude and longitude absolute camera position are displayed in the Tool Tips region at the bottom of the screen while dragging and on mouse overs.
You may set the “snap to ground” preference to ON if you want the Camera to automatically stay near the ground when using the Map to position the camera.

Map Scale (radius in km)

Click on the Map Range control and drag left or right to increase or decrease the area visible in the MAP overview. You can zoom in to see fine details of the landscape or zoom far out to get an overview of the planet’s terrain. As you drag, the Tool Tips area displays the dimension visible in the map overview. Large ranges (100 km. or more) are useful for seeing large-scale features and to facilitate large location jumps (by clicking on the Map overview). Smaller ranges are useful for fine camera adjustments or to navigate inside a DF volumetric city.
The default range of the map will define the amplitude of the various relative camera sliders as well as the amplitude of motion when you drag the main view.

Surfaces mode pop up

Use the Surface mode popup menu to choose a planet surface. You can use one of the built-in planet models, an ArtMatic file, or combination mode which allows several ArtMatic systems to be combined with each other and/or a built-in planet. modes :

  • Planet A:
    Built-in planet A has a lot of small scale variations that result in dramatic changes over short distances. On a large scale, this planet tends to repeat itself and does not have very high mountains nor the large oceans of Planet X or Planet C . It is quite fast to render as its model is the simplest of all.
  • Planet B:
    Built-in Planet B has larger-scaled features than Planet A. Planet B often displays Nevada-like wide valleys with lovely rock clusters and high surrounding mountains. Terraces and steep canyons alternate with rocky shorelines and lake- filled valleys.
  • ArtMatic surface:
    This mode uses an ArtMatic file to define the planet geography with animation disabled. The planet’s terrain will be defined entirely by the ArtMatic tree using the current parameter values. Learn more about ArtMatic Surfaces design.
  • ArtMatic animation:
    This mode uses an ArtMatic file to define the planet geography with animation enabled. The planet’s terrain will be defined entirely by the ArtMatic tree using the current parameter stored in the keyframes. LINK Building Planet
  • Planet X:
    Planet X has larger features than planets A and B. It may require traveling 500 km for the landscape to change dramatically. Large oceans and high-altitude plateaus alternate with rough shorelines, gently rolling hills, rocky deserts, lake and river districts, sand dunes, rock fields and large mountain ranges.
  • Planet C:
    Planet C is the most sophisticated planet algorithmically and has the largest scale features of the built-in planets. More diverse and geologically realistic than the others, Planet C features large oceans, huge beaches, stratified canyons, sand dune deserts, river systems, faults and huge parallel mountains ranges. The highest peak can be over 10 000 meters.
  • Planet D:
    Planet D is a planet with diverse topography that includes beaches, deserts, grasslands, and polar ice caps.
  • Combination:
    Combination Mode allows you to modify the main planet (which can be either a built-in planet or an ArtMatic file) with up to 6 ArtMatic files. The ArtMatic files can be combined in many different ways with the main planet.
    See how to build a planet using Combination mode.
  • No Planet:
    The ‘no planet’ mode completely removes the terrain and the atmosphere and is suited for deep space scene, often using a 360 environment map sky mode.

Elevation gain

The Elevation gain slider controls the surface amplitude which acts as a multiplier to the elevations found in the planet’s source definition. Setting the amplitude high exaggerates surface features. Setting the value low flattens the features. Defaults is at 1. Negative surface amplitudes invert the surface and turn mountains into canyons or oceans.

Open ArtMatic terrain

Select an ArtMatic file to be used for the current terrain. The surface mode will be set to ArtMatic Surface unless already set to ArtMatic Surface or Animation. The ArtMatic sytem that defines the terrain should be a 2D (2 inputs) in 1 output (terrain elevation) tree or a 2D (2 inputs) 4 outputs tree with the output as RGBA (RGB color + elevation).

Edit ArtMatic terrain

Opens the current ArtMatic terrain in ArtMatic designer for further editing. In combination mode “edit” will invoque the Combination mode dialog.

Browse Terrains library

The Voyager Library provides a collections presets terrains and planets directly available with the browse pop up. The scaling mode will be set automatically according to which folder is used. ‘Absolute’ mode is recommended. You may add your own terrains in the following folders but keep them consistent. A non-texture surface function shall be put in Absolute Surfaces, while a fully textured RGBA planet in Absolute Colored terrains or Worlds.
Terrains/Absolute Surfaces
Terrains/Absolute Colored Terrains
Terrains/Absolute Worlds
Terrains/Colored Terrains
Terrains/Absolute Bedrocks

Add 3D ArtMatic DF object…

Usually management of DF objects is done within the objects inspector. This button was kept for convenience to import a DF object from the main UI.

Colors mode pop up

The color mode determines how Voyager texture-shade the terrain. The options are:

  • Default:
    When Default is the color mode, Voyager will use a color texture associated with the surface mode if there is one. If the surface is supplied by a four output (RGB+Alpha) ArtMatic system, the ArtMatic system’s RGB output is used. If there is not an associated color texture, Voyager will use a general-purpose naturalistic shading function.The built-in planets each have their own complex color texture functions associated with them that choose colors based not just on elevation but also on the local geology. For instance, Planet B may have reddish mountains, gray rocky valleys, ochre terraces and canyons and dark rocky formations with patches of yellow sand. On Planet X, you will find green-ridged hills, reddish terraced canyons and gray rocky shorelines. Planet C has the most elaborate default color texture mode: different materials and geologies each have their own color palette.
  • Altitude gradient:
    This mode uses the selected gradient to map elevation to color. The color on the left is used for low elevations and the color on the right for high elevations. The terrain’s slope affects the color slightly. The gradient’s mapping is related to the current sea level. Changing the sea level displaces the altitude gradient up and down. When Altitude Gradient is used, the standard U&I gradient tools are available: a gradient editor, gradient library popup, and customizable gradient display.
  • ArtMatic Texture:
    Use a static ArtMatic file for color texture mapping. ArtMatic color textures can be either 2D or 3D solid textures that use both ground position and elevation to determine the color. Animation of the texture is disabled in this mode.
  • ArtMatic Animation:
    Use a static ArtMatic file for color texture mapping with animation enabled. In that case parameter changes stored in the ArtMatic file keyframes will be played back when Voyager time flows.You can also use this mode to control the texture by using the timeline slider in order to find the optimal settings for a scene. Power tip : If you are unsure which value to use for a particular ArtMatic parameter, store a lower value in keyframe 1 and a higher value in keyframe 2. You can then use Voyager timeline to find the best setting. When there are only two keyframes, the time readout in Voyager will match ArtMatic’s. Choosing the same time in ArtMatic will give you the precise value of the parameter. You can also use keyframes to store a variety of parameter settings and use the timeline to select be tween a whole series of variations of the same ArtMatic system. The chosen time value is saved with the file so this method works well when working on still images.

  • Learn more on designing ArtMatic texture systems in ArtMatic Textures.

Open ArtMatic texture

Open a new ArtMatic file for texturing the current planet terrain.

Edit ArtMatic Texture…

Opens the current ArtMatic texture (if any) in ArtMatic Designer for further editing.

Browse Textures library

The Voyager Library provides a collections of presets textures directly available with this pop up. Available folders :
Textures/Color & Bump
Textures/RGB Alpha
Textures/MFD Textures
Textures/Multi Channel

Textures can have several outputs. Learn more about texture shading in ArtMatic Textures Xouts and Xouts naming conventions

Edit gradient

Available in ‘Altitude gradient’ mode this buttons calls the standard U&I Gradient editor.

Select gradient

Available in ‘Altitude gradient’ mode this buttons lets you choose among a list of gradients.

Terrain shader Settings… (t)

Invoque the Terrain shader settings dialog.

Sky mode pop up

The sky modes sets the various options to render and shade the sky. There is a Sky Color picker that permits setting the sky background color. Below the sky display there may be one or more sliders visible. Their function is determined by the sky mode. The sky appearance is also influenced by the Sky Illumination Gain setting found in the Image section. This setting can have a dramatic impact on the sky appearance.

To control clouds in various forms a Scale and a Density slider becomes available when needed. The reference cloud elevation is set in the Position area when mode is clouds & Sky. It is the reference altitude at which layer clouds or volumetric clouds starts.

The clouds illumination model (volumetric or not, built-in or ArtMatic based) is quite different in Voyager 5 than before : while more physically accurate it is more sensitive to various parameters. The “Cloud & fog color” controls the amount of light emitted within the cloud by scattering which is added to reflections from incoming lights. So when the “Cloud & fog color” is white or very bright you will have more total light. Set it to black to see the response that only depends from sun(s) light. Alternatively you can set the sun to black and play with the Cloud & fog color to see how ambient light is transmitted through the cloud.

The role of “Cloud & fog color” is more important. You can shade a cloud only through scattering (light coming from every direction) using a bright “Cloud & fog color”. In that case the thickness of the cloud will determine how much light is blocked by the cloud particles. The Sky Illumination Gain control affects only the directional light reflected from the sun(s). So in general darkening the “Cloud & fog color” and changing the Sky Illumination Gain is the way to adjust. When the two are high the cloud may emit too much light. In extreme case you may need to use the global illumination gain & Gammas to further equilibrate the image.

  • Clear sky:
    This mode is useful both when you want a clear sky or when you want to speed up screen redraws. The sky background color will be the most determinant parameter of the sky rendering, outside the haze and Atmospheric height. In “no Planet” mode you can use “Clear sky” and the sky background color to render a specific object over a simple discreet colored background.
  • Cloudy sky:
    When Cloudy Sky is selected, the Cloud types popup menu becomes available and lets you pick the type of built-in clouds provided by Voyager. Two sliders will be visible to influence the clouds: Cloud Density and Cloud Layer Scale. They operate both on layer based clouds and volumetric based clouds. In general layer clouds are much faster to render than volumetric one that require many samples to be rendered and shaded.

    Built in Clouds types:
    • CirroStratus basic:
      A single layer of multi-fractal based stratus clouds.
    • AltoCumulus & NimboStratus:
      A high layer of meckered alto cumulus and a lower layer of fuzzy nimbostratus
    • Cirrus & Cumulus:
      One low layer of cumulus and a higher layer of cirrus fibratus.
    • Cirrus & Multi Cumulus:
      Two layers of cumulus and a higher layer of cirrus.
    • Layered Cumulus:
      Several layers of cumulus and a higher layer of cirrus.
    • Fog & Cirrus:
    • Volumetric Small,
    • Volumetric Large:
      Volumetric clouds provide enhanced realism but require vastly more computation than the non-volumetric cloud modes. So, they take longer to compute than non- volumetric clouds. Realism is maintained even when the camera passes through a layer of volumetric clouds. Clouds are represented internally as full 3D density fields. saVolumetric Small and Volumetric Large differ by the altitude ranges within which the clouds are rendered. Small computes clouds in a range of 4,000 meters above the elevation set by the Cloud Layer Height slider. A very high-layer of built-in (non-volumetric) cirrostratus clouds is also added. Large computes clouds in a range that extends 10,000 meters above the Cloud Layer Height setting. Volumetric Small clouds compute faster than Volumetric large since the cloud layer’s is less than half as tall. Due to the nature of the volumetric rendering, draft quality mode gives a poor approximation of the clouds. You should use good or better mode or getting an idea of what the clouds will look like.
      If you set the Cloud Layer Height to 0, you may end up inside the clouds with an obstructed view. If this is the case (and you want the clouds to start at elevation 0), adjust the cloud size and density sliders until you are able to see, or simply move the entire cloud layer using the position sliders.

  • Artmatic 360:
    This mode uses an ArtMatic file as a 360 degree panoramic backdrop also called an environment map or sky dome. When using a properly-designed ArtMatic system, there will be a seamless sky as you survey in all directions. In this mode, the Link Environment to Sun toggle appears, and the slider controls the horizontal offset of the ArtMatic system. The slider can be used to rotate the sky horizontally up to 360 degrees. When Link Environment to Sun is turned on the ArtMatic 360 environment is linked to the sun position so that it moves with the sun when the sun position changes. When using ArtMatic 360 mode, it is imperative to use a system designed for use as a 360 degree sky environment map. The Voyager Library provides an extensive collections of 360 environment and the simpler is to use the browse pop up to select one.
  • Artmatic 360+clouds:
    This mode combines Voyager’s built-in clouds with an ArtMatic 360 sky (see details above). The sliders control Cloud Layer Height and Cloud Density. It is possible to rotate the background by switching to ArtMatic 360 mode, using the slider to rotate the backdrop, then switching back to ArtMatic 360+Clouds.
  • Artmatic backdrop:
    The chosen ArtMatic file is used as a 2D backdrop. The backdrop does not follow the camera motion – so it is useful only for creating still images or movies where the camera does not rotate. Any ArtMatic file can be used. The sliders provides a vertical and horizontal 2D offset control for the backdrop. Note that this offset is part of Context variables and can be animated. A second RGB output component in the Artmatic backdrop tree will be shaded as an additive overlay by compositing the output at the final stage of rendering. It provides a mechanism to add image-space after-effects like lens flares, rain, graphics overlay etc. Only one extra output is supported in this case and the global inputs A3 and A4 provides 2D view or Sun position in camera image space. Voyager fills A3 & A4 global input to inform ArtMatic about camera projection center (or sun position when “link to sun” is on). If you add in the ArtMatic system these master input to the XY coordinates the AM image will move along the Voyager camera movement. This will make the backdrop follow the camera like with 360 mode. When link to sun is active the AM system will be centered around the Voyager sun position and can be used for lens flare effects or custom sun shaders.
  • Examples : Voyager Examples/Shading & Rendering/Backdrops & image effects
  • Artmatic clouds/lights:
    This mode use an ArtMatic system to define the mathematics of clouds or volumetric lights that participate in the sky rendering. With this mode you can define yourself the density function that will create clouds using the hundreds of mathematical and procedural noise functions available in ArtMatic Engine.
    Clouds in Voyager are made using density fields that describe the density of water particules at any point in space. Density fields are, like the distance fields used for 3D DF objects modelling, particular cases of scalar fields – a scalar field is simply a set of one dimensionnal values associated to every point in space, whatever the significance of the value. A density function can be used for cloud layers as well as volumetric clouds. It can aslo describe light density for special effect shaders.
  • A special mode “Underwater shader” provides not only density information for underwater volumetric shading but also detailed information influencing water surface texture, color and reflectivity. In that case the first cloud layer becomes the water level surface and the atmospheric model changes to be more approximative of an underwater situation.

  • Whatever the sub modes are, the origin of the ArtMatic sky can be set in the Position area in Sky and Clouds mode.

    Artmatic clouds/lights modes :
    • Cloud Layer:
      The ArtMatic defined density function is rendered as a single or dual cloud layer. Layers are flat and very fast to render as the cloud density function is computed only once when the ray interects the plane coordinates. The number of outputs of the Artmatic tree determines how Voyager uses the system to create clouds. When the ArtMatic system has one output, the ArtMatic system defines cloud density and the clouds are rendered using algorithms similar to those used for Voyager’s built-in clouds. If the ArtMatic system has two outputs, the outputs are treated as two cloud layers at different altitudes. The second output is the upper layer and appears brighter than the lower layer. If the ArtMatic system has three outputs, they are treated as RGB outputs, and the ArtMatic system will define the entire sky with Voyager performing no cloud shading. If the ArtMatic system has a four-output component at the bottom, it is treated as an RGB+Alpha sky where the alpha output is used as the cloud density function.
    • Multiple Cloud Layer:
      Same mode as above but with multiple layers. In this mode, two clouds layers are generated from the ArtMatic system even if the structure only provides one output component. If there is only one output component, ArtMatic Voyager will use it to create two identical cloud layers 5000 meters apart. If there are two parallel output components, the leftmost will be used for the lower cloud layer and the other for a layer 5000 meters higher. Additionally, there will be a built-in cirrus layer at high altitude. This mode is intended for use with ArtMatic systems that have 2 or 3 inputs and have either scalar (single-output) or RGBA output. The scalar Global Input Note. When Voyager is rendering clouds (but not Backdrops or ArtMatic 360), only global input A2 (the cloud’s absolute height value) is defined. The other ArtMatic global inputs (A1, A3, and A4) are not defined during cloud rendering and so should not be used.
    • Volumetric Small:
      Voyager features 3 ArtMatic-based volumetric cloud options : small,large and unbounded. Volumetric Small restricts the volumetric clouds to a region 4000 meters tall by forcing the density function to become negative below reference cloud elevation and above the given height relative to cloud level.
      While you can use any combination of functions to create the cloud density function it is recommended that you use 3D systems to have real 3D volumetric density data at the end. Avoid to use overly complex functions in the cloud definitions as the rendering can become very slow. The ArtMatic system can be scalar (one output) or RGBA.
      In addition to the Volumetric clouds, ArtMatic Voyager adds a high layer of built-in non-volumetric Cirrostratus clouds.
    • Volumetric Large:
      Volumetric Large clamps the density function to a region approximatively 8000 meters above reference cloud elevation, that is twice taller than volumetric small. The bigger the volumetric clouds the more computation will be needed to render them. In this mode you can create high cumulus clouds. In addition to the Volumetric clouds, ArtMatic Voyager adds a high layer of built-in non-volumetric Cirrostratus clouds.
    • Volumetric unbounded:
      Introduced in Voyager 5 ‘Volumetric unbounded’ doesn’t clip the 3D cloud density function upwards and doesn’t add any high layer of built in clouds. “Volumetric unbounded” still clips the density below reference cloud elevation to avoid camera being completely obsured at ground level. The entire sky above cloud elevation is yours and you can build clouds that goes up to the stratosphere, have many volumetric layers, have column of smoke or whatever is possible with a density function.
    • Alpha Layer:
      In this mode the ArtMatic RGB channel is blended with the Voyager scene according the tree output alpha value. No cloud shading takes place and the color of the layer is entirely controlled by the ArtMatic system. Alpha Layer is usually used for special effects or non realistic graphic animation.
    • Additive Layer:
      The ArtMatic output is blended with the Voyager scene in additive mode which makes it appear as a glow that does not cast shadows or provide illumination.
    • Additive Multi Layer:
      Multi layer version of Additive Layer.
    • Volumetric light:
      This option treats the ArtMatic system as a density field which is interpreted as a additive light source. Generally (but not always), you will use the 31 Density Shapes component as the heart of a volumetric light system. This mode requires a true 3D ArtMatic system (i.e. one in which the X, Y and Z global inputs are all used). The system is interpreted as a 3D light source. Unlike volumetric clouds small and large, there is no upper lower limit to the altitude range used to interpret the density function. So the ArtMatic system must fully define the behavior of the density field.
      The density function may be clamped so that high densities don’t produce a global wash out of the rendering in cases where the density adjusment slider is not enough. Volumetric Lights provide an illumination from a point light source that emanates from the sky origin coordinates. To set the position of the light system use the Position area in Sky and Clouds mode.

    • Underwater shader:
      The Underwater Shader mode is designed for creating underwater scenes as well as interesting volumetric light effects that are faster to compute than when using volumetric light mode. The Underwater mode can also be used above-water for special lighting effects and alternate sea shading. ArtMatic Voyager comes with several ArtMatic presets systems that implement underwater shaders that can be used by anyone regardless of their expertise.
      Creating new underwater shaders from scratch requires a fairly solid understanding of how ArtMatic and Voyager work. Other Applications Underwater mode is not restricted to underwater effects. When the camera is above the water level, you can create a host of interesting effects which include atmospheric gazes, bubbles, rays and customized Water surface rendering. The water surface of “underwater mode” water is opaque but the ArtMatic shader can influence the look of water surface in many ways. of provided Underwater mode sets the haze stronger underwater and mixes the haze color with the underwater shift color. The haze is used even in No Planet mode which allows you to have a bottomless ocean. The higher the water level the more the haze color is shifted towards dark blue. The current depth (cloud level minus terrain altitude) below is sent via global input A2). You can use this feature to design a water model where the color/waves/foam change with proximity to the shore.
      Underwater ArtMatic system typically will have several outputs:
      Output 1 RGBA : water surface + volumetric light effects + caustics. Surface color can be modulated with depth (global input A2) to achieve pseudo transparency.
      Output 2 scalar : True reflection amount. Enable true reflections for terrains must be ON for the water surface to reflects.
      Output 3 RGB (optional) Additional light that affect water surface shading only. Common use is to enhance foam brightness.
      Control Sliders.
      The cloud sliders have the following meanings in underwater mode : Cloud Density – controls the intensity of the volumetric light effects. When it is set to 0, the volumetric light effects are turned off, but the water surface is still shaded. Water Surface Height – This controls the elevation at which the water surface appears. Cloud Size – This slider scales the entire ArtMatic underwater shader tree.

  • Backdrop+clouds:
    Backdrop+clouds works as the “ArtMatic Backdrop” mode but with the addition of built in clouds.
  • Transparent:
    This mode makes the sky transparent and is useful when an objector terrain has to be rendered on a transparent background.

Open ArtMatic Clouds or Environment texture

Use this button to import a new ArtMatic Sky file.

Edit ArtMatic Sky…

Opens the current ArtMatic Sky file (if any) in ArtMatic Designer for further editing.

Browse Skies library

The Voyager Library provides an extensive collections of Skies, Clouds and & 360 environment that can be imported directly using the Browse pop up. Folder are organized by themes and contains : RGB Sky plane, Absolute Clouds, Scalar clouds, Underwater shaders, Volumetric clouds , Volumetric lights , MultiLayer Clouds, BackDrops, Custom Suns, Environments 360. In general choosing from theses folders will automatically set the sky mode to the proper mode and eventually set cloud type and cloud scaling mode as well. Custom Suns folder holds alternate sun shaders. When choosing from this folder ‘link to sun’ is activated automatically.

skycontrol sliders

Available in Backdrop and 360 Environment mode theses sliders offsets or rotates the sky coordinates.

Clouds Density slider

Controls an offset to the cloud density function. It affects avery kind of clouds and can be used to make the sky completely overcast and will growth volumetric clouds as well.

Clouds Size slider

Controls the overall size of the built in clouds or ArtMatic defined clouds/skies.

Edit current ArtMatic system

Available with ArtMatic defined clouds/skies this button will open the ArtMatic tree in ArtMatic Designer for deep editing.

Camera controls

This area gather controls and buttons dedicated to the Voyager Camera. Any scene is viewed through a virtual camera whose position is user-controllable and animatable. The Camera can use Cylindric, Perspective or Spherical projection. The camera’s latitude and longitude, elevation above the terrain, the vertical tilt, and the rotation are usually set with the sliders below but you may use the Map to directly move the camera over the top Map view as well as a click and drag on the main Image preview to move the camera view directly. For small adjustments you may also use the arrows keys.

Camera Settings…

The button invoque the Camera Settings dialog.
The Camera Settings let you choose the projection mode and set the Camera position in absolute coordinates. It also provides a slider for camera orientation in degree and camera tilt (vertical angle).
Cylindric projection :
This projection mode is the default and allow some very efficient optimisation technics for terrain rendering. It is usually the fastest camera mode when using Height field based terrains. However Cylindric projection prevent the camera from pointing straight up or straight down and will make verticals all parallel. Horizontal lines on the ground will be curved.
Perspective projection :
This projection is the usual projection found in 3D applications. Horizontal lines on the ground are kept linear, and parallel will converge at horizon. Image distortion will be greater at wide focale angles and ‘Spherical projection’ could be used instead.
Spherical projection :
This mode is suited for 360° or very wide angle focal renderings and is similar to a fish eye lense.

Random place (r)

The Random place button picks a location at random within the 60 000 square km of the current planet to put the camera. Direction of the camera is randomized as well. It is a fun way to explore the gigantic worlds provided by Voyager. Shortcut: ‘r’ key.

Reset view

If a Sprite or Object is set as target (see browsing scene picker below) the camera reset view (home) button will move the camera to focus on the selected object starting Voyager CTX 1.2. Otherwise, the reset view button will return the camera to the origin: Latitude -1 km and Longitude 0 with a north-facing orientation and the default altitude and zoom angle (about 53 degrees). Home is often used after choosing an ArtMatic file as a surface since the most interesting features often occur there near origin.

Land Camera (z)

The “Land Camera” button puts the camera slightly above surface level wether the surface is a planet terrain or a 3D volumetric DF object.
Shortcut: ‘z’ key.

Lateral move

This slider lets you move laterally in respect to the camera orientation. The range of the displacement depends on the current MAP view scaling. For small adjustments use option key (option will divide the slider range by a factor of 1/50).
The slider is relative to current position meaning it will be set at zero after each use, zero representing current position. You can also use the left/right arrow keys to move laterally.

Depth move

This slider lets you move forward and back with respect to the camera orientation. Since the motion is relative to where the camera is pointing keep in mind that if pointing up this slider will make the camera go up as well as forward. If you need East/West or North/South displacement without changing altitude use the absolute coordinates numbers in the Camera settings dialog. Use option key for small adjustments.
Key equivalent: up and down arrow key.


This slider controls the camera’s elevation. The slider is relative to current altitude position. The range of the displacement depends on the current MAP view scaling. Altitude is displayed in meters. If you need to set camera elevation to a precise altitude use the Camera settings dialog absolute altitude and set the altitude numerically.
Key equivalent: Page Up/Page Down or control up/down arrow.

Keep on top

This checkbox ensures that when you are traveling over the surface of the world that you don’t end up inside of a mountain. When this option is on, the camera elevation will rise above the terrain if you move to a place where the terrain is higher than the camera’s elevation. When DF objects, terrains or DF cities are present “Keep on top” also activates collision detection to avoid the camera moving inside features.

View Direction Compass.

Click anywhere on the compass (located on the right of the camera area) to rotate the camera. The camera will rotate and point at the position where you clicked. You can also click and drag to rotate the camera.
Shortcut: Control + left/right arrow.

Vertical Tilt

This slider controls the upward /downward tilt angle of the Camera.
NOTE: When the camera is in Cylindrical mode the virtual lens is cylindrical and does not curve verticals. This allows for very efficient optimizations but causes the y axis to have no curvature while the horizontal axis can curve up to 360 degrees. It also prohibits looking straight downward as there is no downward perspective possible with this projection. The vertical tilt is actually a vertical offset in the image space and does not modify the camera’s position or the perspective.

Focale angle slider

Zoom in or out on the landscape without moving the camera. Notice that the Surface Map reflects the zoom setting by showing the angle of view visible through the camera when the angle is below 180 degrees. Zoom changes the effective focal length of the camera’s virtual lens. Low zoom values correspond to wide-angle lenses and high values correspond to telephoto. The minimum zoom level provides a full 360 degree view angle and can be used to render full panoramic pictures. The maximum zoom level provides a viewing angle of about 22 degrees. Spherical projection is advised with wide angle focals.

Position area

Every Voyager entity has now coordinates that can be moved using the new ‘Position’ section in the main UI. The old “ArtMatic sky coordinate” is thus no longer needed as clouds coordinates are now common for any kind of clouds and can be directly changed in the ‘Position’ section when in “clouds and sky” mode. Even main planets terrain can be moved. Suppose you have a great sky at some point but the foreground of the terrain is annoying. You can use the position sliders to offset the planet laterally or in depth, or the absolute coordinates numeric fields to completely change the terrain position. Inversely you can have a great scene but the clouds cast an unfortunate shadow. Just move the cloud layer until the problem is fixed. Layer and VL clouds do cast a shadow even in fast preview low res mode so you can interactively move the layer and see the shadows move.

Warning : Terrain and Texture position are global to the scene (only one value for all places and keyframes). Changing the position of the planet origin will make all saved Places and Keyframes invalid.
Sprites and DF Objects position are also global to the scene and changing their position will affect all Places and Keyframes. Only Lights and Clouds position are part of the voyager Context variables that can be keyframed and stored in Places.

The “Mode” pop up menu on the left sets the target of the position controls. Usually it is set automatically when editing a particular type of object but at times it may be necessary to set it manually.

  • terrains:
    Sets the target to be the current terrain (either a built-in surface, an ArtMatic defined planet or a Combination mode terrain made of various sources).
  • terrains texture:
    Sets the target to be the current terrain texture. Note that changing it will invalidate all saved Places and Keyframes.
  • objects:
    Sets the target to be the current DF object. If multiples object are present in the scene you can select the target object in the Object inspector.
  • sprites:
    Sets the target to be the current Sprite. If multiples Sprite are present you can select the target in the Sprite inspector.
  • lights:
    Sets the target to be the current Light. If multiples Light are active you can select the target in the Lights inspector. Light position is part of context variables and can be keyframed.
  • clouds & sky:
    Sets the target to be the sky element reference position. In general this will be the clouds origin coordinate but can be the position origin for volumetric lights or water surface level & in underwater mode. Clouds & sky coordinates origin is part of context variables and can be keyframed.

Browse scene elements

Objects, terrains and sprites used in the scene can be selected (and made target) directly using this pop up picker. Note that if a Sprite or Object is set as target the camera home button will move the camera to focus on the selected object.

Lateral displace

The slider displaces the target lateraly in the camera view space.

Depth displace

The slider displaces the target forward or backward in the camera view direction.

Vertical displace

The slider displaces the target vertically relatively to current vertical position.

Longitude (km)

Sets the absolute longitude coordinate in Km. Since the Voyager worlds are immense, setting absolute coordinates is rarely used but it might be very handy to center or align various object to specific point in space. If you need to offset objects East/West independently of camera view this field is the answer, probably with option key down to avoid going too fast as the range is huge.

Latitude (km)

Sets the absolute latitude coordinate in Km. You may use this field (likely with option key down) to offset objects, clouds or terrains North/South independently of camera view.

Elevation (meters)

Sets the absolute elevation coordinate in meters. Quite useful for setting cloud layers or various DF object altitude. When target mode is clouds & Sky this slider sets the reference cloud elevation which is the reference altitude at which layered or volumetric clouds starts. In Underwater sky mode this will set the water surface level.
Elevation is just the y of Clouds & sky coordinates origin. As part of context variables it can be keyframed.

Timeline area

This area is focused on Animation controls. It provides the Keyframes UI, the main timeline slider and various buttons. Nice animation can be created with a motionless camera by animating the sun position and colors and rendering with shadows on (be aware that turning shadows on increases render time dramatically). Moving clouds will cast moving shadows on the landscape, and the sun can set with the shadows getting bigger and the colors reddening. Power

Animation parameters inspector (a)


Time slider

This is the main slider that controls global Voyager time. The time flows from 0 to the given duration. You can use the time slider even when no keyframes are present as many Voyager elements are automatically animated over time. In particular when any ArtMatic tree is used for texture, terrain, sky clouds, objects, it may have its own keyframes and will respond to time changes (Keep in mind that the entire ArtMatic animation will always map to the Voyager timeline duration).

You can click and drag on the time slider to preview the animation in non real time or simply click at a particular time to see a frame preview at that moment.

Tip: The time always flows in Voyager, and the timeline can be used to select a particular position in time. This is useful because some elements (water waves and clouds, for example) move automatically at their own speed regardless of the animation duration, and you can use the timeline to find the perfect moment. Thus, a nice trick to change the appearance of the clouds is to set the global duration to 10 minutes or more with the watch icon and use the timeline to find the best cloud positions. In a 10 minute time span the clouds can change dramatically. You can also use the timeline to pick a particular moment within a sky, texture or surface ArtMatic Animation. This is a powerful way to find interesting settings since many parameters can be animated at once with ArtMatic keyframes.


Keyframes let you store locations and environmental parameters that can be used to render QuickTime animation. Keyframes are not required for animation if you are using ArtMatic animation for the surface mode or if you use preset clouds and water – whose movement is controlled by the Sea Roughness setting. The ArtMatic system’s keyframes will be mapped so that all the keyframes play back over the course of the animation. When selecting a keyframe by clicking on it the keyframe Context variables will be copied to the current context, with the exeption of parameters that were set specifically to not be animated within the Animation parameters inspector.


Click on this button to see a realtime preview of the animation. The preview will be a low resolution approximation of the animation and will appear blocky as even the fastest machines are currently much too slow to calculate a high resolution realtime preview. The preview won’t show some aspects of the final rendering ( shadows and reflections for instance). So, it is often useful to do several small renderings at low frame rates to fine-tune the camera motion and animation parameters before the final rendering that can take days or weeks.
Shortcuts: Press the spacebar on your keyboard to start and stop the animation preview.

Duration (MSF)

The watch icon is used to set the animation duration. Click and drag left or right to change the duration. Duration is displayed in MSF format (minutes, seconds, frames)

Add (keyframe)

Add a new keyframe with the current Context variables Shortcut: you can also click on the first blank keyframe to add a new keyframe.

Continue (keyframe)

Continue will add a new keyframe without changing the absolute time of existing keyframe by changing duration accordingly.

Replace (keyframe)

Replaces selected keyframe with the Context variables. You may also use command click on a keyframe slot to perform the replacement. .

Insert (keyframe)

Calculates a new keyframe that is halfway between the selected keyframe and the keyframe after it.

Delete (keyframe)

Delete the selected keyframe. Shortcut: option-click any keyframe to delete it.

Places area

PLaces provides a simple an easy way to store locations on a planet along with the entire Context variables of Voyager. You may use Places not only to remember and go back to places already visited but also to store atmospheric and lighting conditions.

Add place

Saves the current Context variables into the first available Places slot.

Delete place

Deletes the selected active place. As with keyframe you can use option click to delete a particular slot, selected or not.


Not all changes in Voyager will re-render all places preview thumbnails. ‘Refresh’ is useful when global changes makes the preview no longer accurate. All places thumbnails will be re-rendered according to the latest settings.

Image Settings area

The Image Settings area collects all controls that globally affects the rendering : the quality setting, various illumination gains and the gamma sliders. The Gamma filter is applied at the last stage of the rendering while the illuminations gain are taken into acount at the shading phase of various elements. Theses setting, except the quality setting, are part of the current Context variables and are thus both keyframable and can be stored in Places.

QUALITY pop up

This popup menu determines render quality (of both the image on the canvas and any pictures or movies rendered to disk). Generally, you will use Draft quality while exploring and switch to a higher quality setting when rendering images and animation to disk. The higher the quality setting, the more computation that Voyager must perform in order to calculate the image and the longer it takes for Voyager to render the image. In some cases you may encounter strange artifacts at the lower quality settings due to insufficient sampling steps in particular for terrains with steep peaks or tiny features (a tiny steep spike can fall in-between samples and be missed). A higher quality setting will increase the amount of samples and will make features misses less likely. When performing draft renders, you may want to use the lowest quality that provides acceptable results. For final animation rendering, it is recommended that you use Better or Best quality as misses can cause flickering where fine details occur and make small peaks appear and disappear unnaturally.
NOTE: When Draft quality is selected, Voyager ignores the cast shadows setting.

global illum gain

global illum gain controls overall illumination gain. It is rarely needed but can be used to compensate for particular lighting conditions. High gamma values will darken the image while adding contrat so it might useful to compensate with the global illumination gain.

Ground Illumination (Gain)

Controls illumination gain for terrain and objects only.

Sky Illumination Gain

Controls illumination gain for sky shaders only. It mostly affects clouds and atmosphere shading. This slider is often used to enhance the clouds contrast or to make them darker if the various illuminations makes the clouds too bright.

Gamma R (Red color filter)

The gamma sliders use an exponential range where 0 means no change is taking place , 1 means power 16, -1 means power(1/16). Gamma values above average (0) will contrast the image.
Using gamma can greatly enhance the visual impact of a rendering and may also be used to control the color balance of your image.
Note that Voyager renders colors in 64 bits per components and the gamma and range adjustment is done before final 8 (or 16) bit quantization allowing a much better accuracy and quality than doing these adjustments as a post process in photoshop or any graphic application.
TIP: Shift-click the Red gamma slider to move all the sliders together.

Gamma G (Green color filter)

Green channel of the Gamma filter

Gamma B (Blue color filter)

Blue channel of the Gamma filter

Reset color filter


Render pict to screen

Resets the various image controls to their defaults values.

Render animation

Click the Render Animation tool render an animation. The file does not need keyframes to be animated. The clouds and waves and ripples all are automatically moved by the wind even without keyframes. Movies will take a long time to render. To stop a render, press the escape key. The duration of the complete animation is set with the Duration Tool found next to the timeline in the main window.
Mode popup (movie or picture sequence)- The options are: QuickTime Movie, List of Pictures, List of Tiff. The “List” options render the movie frames as sequentially numbered image files (in either PICT or TIFF for- mat). Such sequences are recognized by most movie editing programs. Pict/Tiff sequences are a good idea when performing a long render since nothing will be lost if the computer shuts down unexpectedly. ( movies will be unplayable if the render is interrupted). Preset popup – The preset popup provides a list of common frame size/frame rate combinations. Choosing a preset cause the format and fps fields to be filled in with the appropriate values.

Open ArtMatic Voyager bundle

This command is the same as File->Open and will prompt you to locate a Voyager bundle.

Save Voyager bundle

This command is the same as File->Save and will either directly save the cureent scene if the file already exists or prompt you to set a name to save the Voyager bundle.

Render pict to file

Click this tool to render the scene as an image file. The Render Picture dialog opens to give you control over the image settings. You can choose dimensions up to 16000 by 8000 pixels. Renderings now always use dithering. Dithering introduces a tiny amount of color (RGB) noise to the image which greatly enhances color accuracy and avoids color-banding.
NOTE: Voyager does not set a DPI in the rendered pictures which will probably be at 72 by default. Various options are availble :

Render Mode : Single view, stereoscopic views.

Render : Current View, All places, All Keyframes.
Render All Places option will render a picture for each place stored in the file. Keep in mind that this can take a long time. To abort a render in progress, press the escape (ESC) key.

Anti-Aliasing :
Standard 2*2: Samples per pixel is set at 4. Default and Fastest AA mode but often insufficient for DF cities and textured DF objects.
Stronger 3*3: 9 Samples per pixel.
Double 4*4: 16 Samples per pixel. Recommended to avoid flickering, in particular with DF cities and textured DF objects.
Adaptative AA:
The Adaptive anti-aliasing oversampling is done only when fast changes in depth and color occurs which makes it faster than a brute N*N oversampling. For terrains it works only when the camera is set to perspective and spherical due to specific optimisation in the cylindric case. Its speed is quite variable depending on the scene, but it is often better and faster than the 4*4 oversampling.

Building Planets

ArtMatic Surfaces and Textures
ArtMatic Voyager was designed to be extensible through the use of ArtMatic Designer. In Designer you can setup tree functions for creating planet-sized terrains or infinite textures. Terrains are typically 2D scalar functions, that is 2D-input systems with a single output : the elevation. Color textures or color+elevation systems can be either 2D or 3D vector-valued functions with 3 or 4 outputs, typically RGB or RGBA where the Alpha will store the elevation. 2D input trees shall be used for terrains elevation functions. 2D input trees receive ground coordinates (x,z) from ArtMatic Voyager via global artmatic inputs X and Y and outputs the terrain elevation. Elevation-only tree provide no color information and the color texture, if needed, shall be provided by another tree. When the tree returns both a color and an elevation the color texture mode must be set to Altitude Default in order for the tree specific colors to be used. 3D input systems receive both ground coordinates and elevation information from Voyager (for example from built-in Planets) . In that case the (x,y,z) are passed directly into (X Y Z) ArtMatic inputs and the coordinates are used within the tree to compute color and eventually another elevation that can be used for bump mapping or terrain filtering. 3D input systems are typically used for the color-texturing of terrains. Voyager as most 3D Computer Graphics Applications uses x and z to refer to the ground co-ordinates and y to refer to the elevation (height).

Rendering passes:
ArtMatic Voyager must evaluate the trees at various stage of the rendering:

  • A first pass to find the intersection with the terrain elevation, either from built-in planet, ArtMatic terrain or a combination of both.
  • An intermediary pass to compute the slope and normale
  • A final pass (shading phase) to compute the color texture used in the surface shading. The texture can be defined by the same tree that sets the elevation when the output is RGBA but can be also provided by another tree.

It is important to realize that different information is available during the various passes. During the first pass (terrain & object intersection ), the global inputs that provide Voyager elevation, slope and normal information are not yet defined. So, this information should not be used in part of the tree that defines the elevation. Because the color texture computation is unnecessary at the terrain intersection phase it is more efficient to separate it from the terrain topology : put all tiles used to compute the color texture in a compiled tree and set the compiled tree to be Evaluate Only For Colors : Any tile that has the Evaluate Only For Colors option set is ignored during the first pass. This will greatly speedup color terrain rendering.

Additional informations can be passed to an ArtMatic tree via the other global inputs and several ArtMatic components.
– slope information via global input A1
– absolute elevation information via global input A2
– various VY vectors like eye position, sun light direction, terrain and object normal are available with various ArtMatic components.

ArtMatic Scaling Mode
When an ArtMatic system is used as a terrain or texture in Voyager its scale can be set in various ways in Terrains settings dialog.

  • Absolute mode:
    the scaling is independent of keyframes/AM view zoom level. In the default zoom level (1) the ArtMatic canvas represents an area roughly 122 meters by 122 meters in Voyager. Absolute scaling is generally recommended. Absolute mode ignores the ArtMatic zoom level and canvas origin and 3D color textures maintain the correct aspect ratio. Interchangeability of ArtMatic terrains, and color textures is maximized when this mode is used.
  • Absolute + Keyframe offset
    This mode uses the same distance mapping as Absolute but respects the ArtMatic canvas view (or ‘camera’) origin.
  • Relative to Keyframe Scale
    the camera zoom level used by the first keyframe determines the scaling of ground co-ordinates from ArtMatic to Voyager. The first keyframe represents an area roughly 1 km by 1 km. The vertical scaling is unaffected by the scaling mode. The relative mode is provided primarily for compatibility with files created in versions prior to VY 1.6 which had no scaling options. To determine the area represented by a keyframe at an arbitrary zoom level, the formula Distance = Camera Zoom Level * (1200/Ï€2) . A close approximation is: Distance (in kilometers) = Zoom Level * .122 In relative mode the aspect ratio of the color texture varies with the ArtMatic system’s camera zoom level and is subject to orientation.

Designing ArtMatic terrains
ArtMatic Engine provides hundred of band-limited fractal functions that are especially designed for terrains creation, from the basic Multi-Perlin Noise to advanced multi-fractal noises terrains like in 21 Fractal Terrains # . Some surfaces function will have also color texture information imbedded like the with 24 tile Ridged_noise . In Absolute mode you will typically use the frequency options ‘Voyager KM’ or ‘Voyager DF mode’ to define the scale of the surface. For entire planet the lowest frequencies will often be 10 to 100 kilometers wide. With Voyager DF mode the amplitude is automatically connected to frequency to keep a realistic aspect ratio between width and height.
To create a varied planet topology it is often useful to mix several surfaces with different features. All mathematical and logical operators can be used to merge various terrains. An easy way to create variety is to random-mix several terrains using the scalar 31 Random Mix or vector 34 Packed_random_Mix component.
The Voyager Library provides many examples of terrains function that can be browsed directly from the main UI using the Browse Terrains library pop up.

Designing ArtMatic Color Textures
ArtMatic trees that are used for color texture can be RGB or RGBA trees. Voyager evaluates the tree at the shading phase and passes (x,y,z) coordinates to the ArtMatic tree along with additional informations like slope, normale, light vector etc. By carefully designing the ArtMatic tree function, one can create very complex color textures that may respond differently to various informations. Often, one will base an ArtMatic color map on the system used to define the surface by using the passed elevation in order to maintain coherence. There are two types of color textures: 2D color textures and 3D solid textures. The type of texture is determined by which global inputs are accessed in the first row of the tree :

When the ArtMatic tree has two-inputs at the top, the longitude and latitude of every point on the map is sent to ArtMatic and the color output is laid upon the surface. The elevation/surface contours do not influence the color selected (since only longitude and latitude are sent to the ArtMatic system). Imagine an ArtMatic image large enough to cover the map. This image is essentially overlaid upon the planet surface.

When ArtMatic tree has three inputs at the top of the system, Voyager treats the system as defining a three-dimensional color texture space. Consider that each point on the planet surface has a 3D coordinate: longitude (X), elevation (Y) and latitude (Z), Voyager feeds those coordinates (in that order) into the ArtMatic system and uses the color returned. If that explanation seems abstract, imagine that the ArtMatic system defines a block of intricately colored marble as large as the planet and as high as the highest elevation. Now, imagine chiseling away marble from the block of marble until the contours match the planet surface. When you look at the ArtMatic system in ArtMatic, you are looking at the block of marble from the front.

When the texture provides an Alpha channel the alpha controls the blending with the built in Planet default colors. For example a Rock texture may be set up to return an alpha linked to slope so it will appear only on steep montain slopes.

Extra outputs (X-outs)
When an ArtMatic file has one or more extra outputs, the output can be mapped to various shading properties such as wetness, self illumination or reflectivity. Using Xtra output to modulate texture shading can greatly enhance realism and visual complexity. The extra output can be mapped to:

“Self illumination” Unlike “Ambiant” which sets the amount of diffuse reflection coming from the environment “Self illumination” adds its own light to the scene giving the impression of a luminous object. The self illumination light color is the X out color or white if X out is scalar.

“Wetness level” controls the specular amount of light coming from the environment. This light can be filtered by the X out color if any.

“Ambiant & Wetness” control the amount of light coming from the environment, diffuse and specular. This light can be filtered by the X out color if any.

Reflection level” Mirror reflection of light from the environment. The reflected light can be filtered by the X out color. Since V 1.2 the extra Reflection level is multiplied with the object reflection color alpha component, so you can directly attenuate or remove the true reflection for a particular object.
Note that for terrain true mirror reflections has to be enabled in the Terrain shader Settings.

“Bump Map” This require a 3D X output providing the derivative vector and will map the vector to normal perturbations.

Brightness Gain” : The X out scales the diffuse & ambiant light. If the X out is RGBA then A controls how much illumination is scaled by the X out color. this mode can be used to simulate shadows or light variations, as well as coloring the main light in variable ways.

X-outs naming conventions
The following letters put at the end of an ArtMatic texture file name will cause Voyager to set the proper shading option default when opening/importing a new ArtMatic file. The letters can be combined in any order up to 3 letters (“ri”, ‘wir” “wbi” etc) when multiple X-outs are used but a space needs to be present before to not get confused with letters in the name itself.
‘i’: sets corresponding output to “Self illumination color & level”,
‘r’: sets corresponding output to “Reflection color & level”,
‘w’: sets corresponding output to “Wetness level / Specular color “;
‘b’: sets corresponding output to “Bump Map “,

So for example “myfilename ri” will have “Reflection color & level” set for X-out 1 and “Self illumination” set for X-out 2.
“myfilename r” “myfilename wi” “myfilename lri” “myfilename rib” are all valid auto-mapping hint names

The Combination mode dialog

Combination mode makes the creation of more complex planets terrains easier by combining a built-in planet or ArtMatic surface with up to 6 additional ArtMatic terrains. The additional terrains can supply a wide variety of features: from beach pebbles, boulder rocks, rivers, volcanos, to architectural structures, custom oceans and more. A layer can also be used as a filter to modulate elevation and add texture details.
Be sure to take a look at the example files to see the many different features that combination mode can give to Voyager worlds. Examples can be found in Voyager examples/Terrains & Landscapes/VY5 Combination/ and in Voyager Scenes/Combination scenes/

Once the dialog is opened by edit in main UI you have all the controls to import, edit and manage terrains layers. Click on a layer tab to access each layer’s settings. Active layers are indicated with a red dot. To create a new layer select an unused slot and open an Artmatic file that will define the particular layer features. The Browse Library button give you a direct access to a number of useful presets to enhance your scene. Position the layer using the Map or numeric entries, choose the combination mode and eventually change the layer scale. Results should be seen interactively in 3D in the main preview area as well as in a 2D top view in the Map.

Main Planet popup
Choose the surface that will be the main surface. The additional layers are combined with the main planet. The main planet can be either a built-in planet or an ArtMatic surface/ animation.

Main planet edit/open/reload
When the main planet is an ArtMatic surface/animation, these buttons let you edit the surface in ArtMatic Designer (if it has been installed), open a new ArtMatic file to use, or reload the ArtMatic file. Use the reload button, if you edit the ArtMatic file while the Voyager scene is open.

HF Filter % slider (High Frequency Filter).
This slider reduces the amount of detail in the built-in planet. In many cases, this makes the ArtMatic contribution more noticeable where fine surface detail is concerned. This filter only affects the base planet and not the ArtMatic contribution (as opposed to the High Frequency limit set in the Preferences dialog which affects everything).

Active checkbox
Use this checkbox to toggle the layer’s active status.

Browse library

Browse library pop up gives you a direct access to ArtMatic systems designed for combination mode and stored in the Voyager Library/Combination/ folder. It contains Surface details, Surface textures, Alternate seas, and Filter folders.

Layer edit/open/reload

These buttons let you open a new ArtMatic file to use, edit the layer system in ArtMatic Designer (if it has been installed), or reload the ArtMatic file.

Surface Overview Map. This map provides a top view of the surface with camera orientation lines that display the camera’s orientation and field of view (as in the main window’s surface overview). Click on the surface overview to center the current layer’s ArtMatic system at the clicked location – the click sets the Longitude and Latitude offsets to the clicked location. This feature is useful if you want to position an ArtMatic structure at the current location rather than at the center of the Voyager world.

Center to world origin

Reset the offsets so that the Voyager world and the ArtMatic world are both centered at 0,0.

Center to Current View

Set the longitude and latitude offsets to the center of the current view.

Combination slider.

This slider’s meaning depends on the active combination mode algorithm (see below) and usually controls the amount of influence that the ArtMatic layer has on the main planet.

Combination Mode popup algorithms :

  • Blend:
    Blend the main planet with the ArtMatic surface by performing a weighted averaging of the surface elevations. The slider controls the weighting of the blend. When the slider is 0, the Layer has no influence. When the slider is set to maximum, the Main Planet has no influence. Blend is the prefered mode to apply filters.
  • Maximum Add:
    Compare the main planet with the ArtMatic surface and add the ArtMatic surface where it is higher than the main planet’s surface. The slider bends the ArtMatic surface to follow the main planet’s surface before the comparison is made. The additional “Feather” slider controls the smooth blending of the edges.
  • Add:
    Adds elevation of layer to the main planet. The slider adjusts the relative weighting of the main planet’s surface and the ArtMatic surface. Unlike Add Alpha and Maximum Add, Add combines both surfaces even where the ArtMatic surface has values less than 0. Where the ArtMatic surface is less than 0, it will carve out indentations from the main planet’s surface.
  • Add Alpha:
    The elevation of the ArtMatic system (when > 0) controls the blending of the main planet with ArtMatic surface. The slider controls the degree to which the ArtMatic surface is deformed to follow the main planet surface before the blending is done. When the slider is set to the maximum value, the ArtMatic surface will follow the contour of the planet surface. When the slider is set to 0, the ArtMatic surface is left un- changed. Set the slider to the maximum to add details such as rocks to the main planet’s surface. Where ArtMatic output values are greater than 1 the surface is taken entirely from the ArtMatic surface. Values below result in a weighted blending of the ArtMatic surface and the main planet.
  • Alternate sea:
    Replace the built-in sea with an ArtMatic sea. The ArtMatic sea should be an RGB+Alpha tree. The tree’s RGB output defines the color texture, and the alpha channel defines the sea height (making waves possible). See the example file Bad Sea. The Bad Sea example (shown at left) makes use of an extra output mapped to Ambient to give the sea foam an added luminescence. Voyager’s native sea will be visible where the replacement sea has very negative values. The slider has no effect in this mode.
  • Minimum:
    Minimum is taking the lower elevation of the Main planet and the layer’s terrain. the slider performs a weighted averaging of the unaltered Main Planet with the calculated minimum. The additional “Feather” slider allow a smooth blending of the edges when feather is above zero.
  • Random Blend:
    Randomly blend the main planet and the ArtMatic layer with the slider controlling the frequency of a low frequency blending noise. This mode is handy to randomly replace planet zones with features of the layer’s terrain
  • Blend on lows:
    Blend in the layer where the main planet’s elevation is low. The slider controls the maximum elevation at which blending occurs.
  • Exp neg Alpha:
    This mode blends the ArtMatic layer with the planet in such a way that the ArtMatic surface cuts through the main planet. Geographic Clut view RGB View Where the ArtMatic elevation (alpha) is greater than 0, the surface is provided completely by the ArtMatic sur- face. The Feather slider influences how alpha values less than 0 influence the mix of the ArtMatic system and the main surface. When feather is at its maximum, negative values have very limited influence on the main planet. The ArtMatic surface’s influence drops off exponentially as the value decreases below zero. When feather is at the minimum value, the influence of negative values drops off very slowly so that the ArtMatic surface has quite a bit of influence even where the alpha value is very negative. Generally, the feather slider will be set close to the maximum value.

Longitude (X),
Latitude (Z),
Elevation (Y)

These fields provide offsets to control the relative position and elevation of the ArtMatic terrain layer and the main planet. The offsets are added to the ArtMatic file’s normal home position. You may also use the Map view to set layer origin.

Global Scale %

This is a scaling factor that is applied to the ArtMatic file before it is combined with the main planet. It represents the relative scaling of the Voyager world to the ArtMatic world. Hence, values over 100% reduce the size of the ArtMatic features while values less than 100% increase the size.

Terrain shader Settings…

You can call this dialog to adjust terrain rendering & shading options.

Building 3D Objects : DFRM Guide


ArtMatic Voyager uses a unique approach to 3D objects modelling & rendering called Distance Field Ray Marching, DFRM for short. This document covers the details you need to know to create or modify 3D objects represented by distance fields (DF for short) and gives many practical guidelines. The technical information may help you to understand the reasoning behind the guidelines and develop your own techniques.

DFRM Concept

ArtMatic Voyager uses a technique called ray marching (http://en.wikipedia.org/wiki/Volume_ray_casting) to render images. Ray marching essentially calculates the intersection of the possible light rays between the observer and the scene by sampling along the ray. It is a slow process as the object or terrain have to be sampled many times to know where the ray intersects the object. Ray Marching is needed when the mathematics that describe the object are too complex to find intersections analytically, typically when the object is an entire procedural planet like in Voyager case.

By using distance fields Voyager can find the intersection of the ray with the surface of 3D object much more quickly than using the brute force technic of ray marching. This is because the DF field itself gives some information about the distance to the surface which allows the sampling to be much more efficient by converging quickly to the surface.

A distance field is just a scalar field where the value of the field gives a good (or exact) approximation of the distance to the surface.

The distance field does not have to be mathematically exact to allow proper convergence, but the more exact the distance estimate is, the faster the convergence will be. If the distance estimate deviates too much from the true distance the ray will miss the object (overshoot) if it overestimates that distance. Underestimation won’t impair the ability to converge to the correct solution but the convergence will be slower.

A distance field function takes a space or plane coordinates and calculates an estimate of the distance from that point to the object surface. The object surface is those places where the distance is 0, that is the ‘zero crossing’ of the field. A value greater than 0 indicates a point inside the object with the field value indicating the distance from the surface. A value less than zero indicates a point outside of the object. ArtMatic’s Geographic Clut color shader is useful for visualizing distance fields as its colors indicate distances.

A distance field can be 2D or even 1D. A 1D distance field is simply x or y or z provided they are unscaled. Thus you can directly use – y for example to create a DF infinite flat ground where y==0 defines a flat ground plane.
The simplest 3D distance field is a sphere. What is remarkable (and unique) is that the sphere equation is its own distance field equation. The field is described by this equation: R – sqrt( x^2 + y^2 + z^2) ( or R-length(x,y,z), ‘length’ being the euclidian distance) which comes from the sphere equation: x2 + y2 + z2 = R with R being the radius of the sphere. The minus sign is needed to adjust the field values so that the field is negative outside the sphere and positive inside. With the sphere the convergence can be done in a single step as the DF field R-length(x,y,z) gives you the exact distance to the solution. The field exist everywhere in space which makes DF objects non-local unlike with classical polygonal description.

One can see a distance field as a special kind of ‘scalar field’. Scalar fields are non-directionnal (unlike vector fields) and non-local. This non-locality (field exist everywhere in space) makes the object information expand way beyond its boundaries. This property is quite interesting as a simple offset of the field value will expand or shrink the object.

DF fields can be manipulated in many ways impossible (or very difficult) with polygonal descriptions:
-DF fields can be blended or morphed together
-DF fields can be distorted by space distortion functions
-DF fields can be combined using boolean operators
-DF fields can be used as the input coordinates for another DF field calculation.

DFRM is useful not just because of its computational efficiency, but because very simple operations can be used to create complex and interesting shapes. Animating these transformations can create fascinating object morphs that would be very difficult to create with more traditional 3D tools.

DF fields provides an unified representation for very different types of objects, a tree, a fractal, a building, a sphere. This representation is non-local and independent of a particular topology. That makes morphing and combination of very different types of objects quite easy. Thus efficient and simpler technics for 3D modelling are possible with DF objects and ArtMatic Engine provides hundreds of functions designed for DF modelling.

ArtMatic 3D DF objects:

3D DF objects are created using ArtMatic Designer. Creating and modifying them requires a fairly good understanding of ArtMatic structure trees. Many pre-existing DF primitives are available in ArtMatic Engine to provide you with basic DF building blocks that you can combine using boolean functions. For the most part, you will use built-in ArtMatic components that generate distance fields and combine them (using the guidelines provided later) to create complex objects. Although advanced users can create their own distance fields, it is unlikely that you will ever need to create a distance field from scratch.

ArtMatic trees need certain properties to work as DF objects: Any 2D or 3D scalar function can be interpreted as a distance field as long as the field value provides a good distance approximation to the function zero crossing (the surface). 3D objects trees needs to be 3D which means they use the X,Y and Z global inputs. The field has to be negative outside the object surface and positive inside. All functions that are clamped to zero (positive only) cannot be used as a DF generating function.

A DF object is not necessary bounded and small. You can have one DF object describing an entire city or a forest. Using Compiled tree, there is virtually no limits in the number of functions and complexity of geometry you can have in a single DF object instance.

  • Scaling & Size
    The scaling of DF object is always absolute and the overall size can be set within Voyager in percent in the Object Inspector LINK. But sometimes it is needed to scale DF elements within the ArtMatic tree when merging various shapes or building fractals. In general most DF building box will have a Radius or Scale parameter that sets the element size directly.
    Changing object size is generally done by adding an offset to the distance field value rather than by scaling space. If you must scale the space, it is necessary to compensate by inverse scaling the field value to maintain a proper DF estimate. Take the case of a sphere. If x,y and z are scaled by 4, the distance estimate will become four times larger than it should be. Scaling down by 1/4 corrects the error. This is the same as just lowering the radius by subtracting an offset to the field itself.
    A couple of special component (S_space scaling) keeps track of scaling automatically so that the field can be adjusted at the end of the tree with the proper inverse value. 44 space transforms will give you many operators keeping track on the S-scale to build fascinating DF based volumetric fractals.
    Rotations and Mirroring functions can be used safely as they don’t change the space scaling and keep the distance field always accurate.
  • Positions
    Voyager provides many sliders and ways to position the entire DF object in the scene. When an ArtMatic tree mixes several DF objects it is often needed to position the objects relativly within the tree. A simple space translation doesn’t modify the DF field accuracy and is safe to be used. 1D
    Offset component, 3D Offset component and any vector offset functions can all be used to move various parts. A translation is a simple addition of a constant value to a space coordinate. If the relative displacement is needed only in one dimension it is efficient to use the 13 Add vector function.
    To Animate the object position you will use the artmatic keyframes with varying offset tile parameters, or more complex motion functions connected to global time input w.
  • Object Color
    To associate a color with a DF field you will typically use the RGBA stream format with A holding the Distance estimation data. A constant color tile can provide the RGB data if the object has a single color and no texture. Advanced user will build a color texture function to feed the RGB associated with the object. Like with terrain textures the object texture is computed after the intersection phase and you can optimise rendering speed by separating the texture computation from the object Distance field computation. In that case put all tiles used to compute the color texture in a compiled tree and set the compiled tree to be Evaluate Only For Colors : Any tile that has the Evaluate Only For Colors option set won’t be computed during the Intersection phase. (See Rendering passes ArtMatic Surfaces. The Color texture function will often be a 33 tile that gets its input from incoming space and outputs RGB data.
  • Previewing in ArtMatic
    Since ArtMatic Designer has only a 2D view you will see a Slice of the field. 33 space transforms like 3D Spaces# ArtMatic top view is handy to see a top view map of the field even if the Voyager rendering shows the object standing. You may also use a 3D rotation tile and set up a bunch of views using ArtMatic keyframes to ‘look’ at the object slice from different directions.
    When creating DFRM objects in ArtMatic, it is often useful to switch between shaders.The Geographic Clut in particualr is great to visualize the distance field to make sure that it is correct. The Geographic Clut makes it easy to see if there are anomalies caused by too much scaling or distortion. For all objects, there should be an orderly and reasonable transition as one moves away from the surface or into the object’s interior. The negative region outside the object are shaded in blue while interior is shaded with a geographic color ramp according to distance estimate. To see a preview of a texture function you can switch the ArtMatic shader RGB Density to get a slice of the color texture. Regions outside the object are treated as transparent.
    But the most efficient way to model in ArtMatic is to have Voyager run in the background and allow ArtMatic to send data to Voyager using the link button. In that case you will see a preview window of the 3D Voyager rendering while working in ArtMatic Designer. Then you can fine tune many parameters while seeing the 3D result interactively.
    Note: When using Voyager and Designer concurrently, make sure that you have ArtMatic Designer launched before you click on an “Edit in ArtMatic button”. That will ensure the correct version is used.
  • Design guidelines
    Don’t scale the space
    If you must, do it uniquely with the 34 S-Space Scale function and don’t forget to divide the DF field by the S value at the end. In general growing DF objects is more efficiently done by adding/subtracting to the field itself.
    Don’t distort space too much or compensate by scaling down the DF field When using arbitrary noise functions for displacement, make sure not to use amplitudes that are too large. If the amplitude is too large, the displacement may be so large that the DFRM will not converge or will miss certain areas (resulting in artifacts). The solution is to reduce the amplitude parameter or to add a filter to the output to reduce the values.
    Don’t overblend with non DF functions Many interesting functions for terrains design are available in ArtMatic engine. Theses functions, even without being true DF estimates, can still be used to add textures or deformations to DF fields by blending them with the DF function. As with scaling do it sparingly and if the convergence is affected reduce the amplitude of the final DF value.
    Use rotate interpolation or linear interpolation in preference to addition when blending fields.
    Use logical operators to combine DF fields. Logical operators like MIN(itersection) or MAX (union) don’t scale or damage the field accuracy so they are perfect for mixing various DF objects. Many Logical operators components are provided for scalar and RGBA DF fields by ArtMatic Engine.
    S:P Logic & Profiles
    21 Logic tools #
    24 Packed Logic #
    34 Packed Logic #

    Examples of Logical operators are located in Voyager Examples/Components/Logic tools

DF Modelling technics

Many times it is simpler to build a 3D object using 2D DF profile like the ones provided by 21 Profile Shapes # or 21 DF Curves # .
A 2D DF profile is just a DF field defined only in 2 dimension : it will be infinite in the undefined dimension. For example a 2D DF disc connected to (x,z) will render as an infinite column in Voyager because y is not specified.
Examples of basic modelling technics are located in Voyager Examples/DF Modelling/Basic technics

The most useful technics to work with 2D profiles are :

  • Intersection:
    You can intersect two 2D DF fields defined in different planes to create a 3D object. Think of a 2D DF field as a “profile path” where the zero crossing of the field define the path shape. Used directly in 3D these profiles will be infinite in the other axis, typically z if the 2D DF component is connected to (x,y) or y if the 2D DF is connected to (x,z).
    By intersecting a (x,y) profile with a (x,z) profile you will ensure the object is bounded in all dimensions. The result will be a 3D object that look like profile A in one direction and profile B in the perpendicular direction. The intersection is typically performed using Boolean (logical) operators like 21 Logic tools # or S:P Logic & Profiles but for a basic intersection a simple Minimum function will work.
    A 2D triangle in (x,y) intersects with a 2D ellipse in (y,z)

    The intersection can itself add details to the geometry using various flavors of the boolean operator. “Edged intersect” for example will add edges at the intersection. A 2D triangle in (x,y) Edged – intersects with a 2D red ellipse in (y,z)
  • Sweeps:
    As DF fields can be used as the input coordinates for another field calculation it is possible to use a 2D DF field as an input (x or y or z) for another DF function either 2D or 3D. This will basically ‘sweep’ the object B along the profile of object A. For example to get a torus sweep a disc in (x,y) along a circular path defined by disc profile in (x,z). Sweeping any profile with a disc will create a revolution object, like a glass or a bottle.
    Usually you will connect directly a 2D profile to one coordinate input of another 2D profile. Another way is to use the 32 Revolution & Sweeps # component that provides many paths for sweeps.
    When 2D uv coordinates are needed you may also use the 34 uvid Sweep Volumes # component that will perform sweeps internally and return uv as well as the DF field itself.
    A 2D pentagon (21 Profile Shapes #) sweeps along an Archimedes spiral path (21 DF Curves # )
  • Cross Sweep:
    A cross-sweep will be achieved when a 2D profile is connected to two others 2D profiles, one fed in x input, the other in y input.
    Quite complex models can be achieved that way.

    A 2D Triangle and a 2D disk (21 Profile Shapes #) feeds coordinates of a 21 DF Curves # object.

There are many ways to work with 3D DF fields and the techniques below can all be combined to achive quite complex geometry.

  • Intersection, Union.. etc
    Most of the time you will build complex 3D objects by mixing various 3D DF fields using Boolean (logical) operators like 21 Logic tools #
    Many examples of Logical operators usage are located in Voyager Examples/Components/Logic tools
  • Morphing fields
    Use the Morph components to make a morphed union of 2 objects. For Scalar fields you can use the Math tools # Morph fuction. To morph 2 colored DF object you will use the 24 tile Packed Morph.

    A cyan sphere array morphed with an infinite red DF plane
  • Sweeps & cross-sweeps
    Sweeps can also work between 3D and 2D DF objects. You ‘sweep’ a 2D DF profile along a 3D DF field by feeding the 3D object field to one of the 2D DF profile coordinate.

    A 2D arc curve sweep along an four sided 3D pyramid

    It is also possible to sweep a 2D profile along the intersection of two 3D DF volumes : In that case the 2D profile will trace the shape of the intersection contours.
    A 2D disc sweep along the intersect of a sphere and a four sided pyramid
  • Space Deformation
    A very efficient way to shape the DF object is to add a space-distortion function to modify the incoming space. Mirroring and Rotations are very often used to force the object to be symmetrical or to have various number of rotationnal symmetries.
    3D Plane Mirror , 3D Mirrors & Rotates # , and 3D Mirrors & Offset # provides 3D Mirroring and Rotations functions.
    A 3D fractal displacement like 3D Fractal displace will completey change the look of a simple sphere. Some displacement functions are specifically designed to deform DF fields like 3D Distorts & Bend #

    A DF sphere and ground with 3D space displaced by 3D Fractal displace
  • Displace the field value
    To add a bump texture or small details you can simply add a little bit of a 3D noise function to the field. A number of 3D DF noise and 3D DF pattern functions are available in ArtMatic Engine to add textures at the geometry level, but for small details almost every ArtMatic functions can be used to modulate the DF field.
    Examples of 3D noise added to a sphere : 3D Ridged Fractal , 3D Fractal Bubbles
  • Instanciation by Space manipulation
    The most efficient way to duplicate and instanciate objects is to manipulate space so that a single object will appear at many places at once. A simple 1D Modulo function will repeat the object in one axis infinitely for example. One may use voronoi diagram (2D or 3D) to partition space into many cells, each having its own coordinates. ArtMatic Engine provides many components that create instances by tiling or partitioning the space :
    3D Repeats and Tile, Jitter Spherical, Jitter Axial, Motion Cluster, 3D Motion Path render
    The difficulty with this technic is the DF field has to be well centered and relatively far from the space cell boundaries where space coordinates will suddendly be discontinuous and jump to totally unrelated values. To maintain an accurate Distance estimate and avoid overshooting one can clamp the DF value when using these to not be below a fixed value.
    When the tiling is regular and space symmetrical the problem vanishes as the space is coherent even at cell boundaries.
  • Carving
    A 3D pattern or noise component can provide details to any 3D volume using S:P Logic & Profiles displacements functions like ‘Displace’,’Chisel displace’ and ‘Circle displace’. They will carve the volume along the contours defined by the zero crossings of the 3D volumetric pattern.

    An elongated sphere (XYZ Shapes # ) carved with a voronoi split pattern(3D Bubble & skins)

Shading DF Objects

Textured or not Voyager provides several rendering and shading options for DF objects. In general you will use the opaque mode but alternate modes can provides clouds and gazes, fuzzy objects, lights fields and transparent/translucent objects. Examples are provided in Voyager Examples/Shading & Rendering/folders.

  • Volumetric opaque:
    This mode shades the 3D object as an opaque solid object. If the ArtMatic system has only a single output value, the output defines the object’s shape, and the color is white (but the apparent color can be changed using the object’s specular/reflection properties). If the ArtMatic system provides RGBA output, the alpha channel defines the object’s shape and the RGB outputs provide the object’s colors. ArtMatic extra outputs (X Outs) are used if there are any specified in the Voyager settings. Volumetric opaque can be used for a mind- boggling variety of objects and features.
  • Volumetric light:
    This mode shades the DF field as a volumetric light density field by accumulating color/opacity values along the ray. It is suited for a wide range of luminous effects, fire, city lights, array of lights etc. The occlusion slider determines how much light from the background is occluded by the object. The light density parameter scales the distance field interpreted as density values when inside the object. You often need to adjust it when the light gets too saturated or too bright. This mode is slower than volumetric opaque as the object (its density field) needs to be scanned inside and out (whereas evaluation of an opaque object stops where the light rays meet the object’s exterior).
    Volumetric light objects can cast light. The light emission range parameter controls how far light are cast from the distance field center. The light direction is taken from the normal of the DF field unless you use the “Shade as projector ” mode in which case the object center becomes the source of light. The light casted with DF normal may be physically impossible and won’t cast shadows but nevertheless is quite efficient to render multiple lights or complex light field like cities streets lights. Alternatively you may have an extra output defining the light direction vector. In that case you can automate the Xout settings by using letters ib at the end. The ‘b’ tagged Xout vector will define the light direction vector. In that case the light field will cast shadows.
    Examples: Voyager Examples/Shading & Rendering/DF lights fields

    In the Desert Light Field example you can see an array of lights casting light on the desert.
  • Jitter opaque:
    This mode replicates an object throughout an environment with small variations so that the repetitions are not identical. Voyager essentially breaks up the environment into randomized cells and instantiates one copy of the object into each cell with a ‘jittered’ (randomized) center and rotation. ArtMatic global A3 is sent a unique randomized value for each cell that can be used to randomize the object properties. You can use this technique to create an entire forest from a single tree. If you do use an ArtMatic system that uses a jittering component, make sure that the ArtMatic system’s jittering clip radius is smaller than Voyager’s jitter cell size and keep the object small enough so it stays away from cell boundaries. This may require some experimentation to find the correct parameter values. For a greater control you would usually use a jittering tile within the ArtMatic tree.
    Learn more at
    DFRM guide : Modelling technics : Instanciation by Space manipulation.
  • Volumetric and translucent:
    This shading variant of opaque mode is dedicated for vegetation (leaves and plants) shading. It adds some light going through the object and light scattered inside the object surface. The thickness of the object is important as thin object (a leave for example) tends to be more translucent than a trunc obviously. The ‘light transmission and ‘light transmission range’ parameters controls how much and how deep light can travel trough the medium. ‘light transmission range’ ranges 0 to 200 meters. Light travelling inside the medium is colored by the reflection color and the object texture color.

    Backlighted tree will still have light passing through the leaves in this mode
  • Fractal opaque:
    This mode is designed for fractal objects and objects with very rough surfaces as it smooths the sub-pixel details that would otherwise make the image noisy, especially when far away. The global high-frequency limit and the fractal object detail % (in the Preferences dialog) can further allow you a fine control over objects details. Use this mode for fractal objects with very rough or infinitely thin structures like the MandelBulb, the MandelBox and similar created with 32 3D Fractal sets #.
  • Transparent (surface):
    This mode is suited for transparent objects like glass or windows. The object surface is treated as transparent without internal volumetric shading nor refraction calculations. Light color is tinted as it passes through the object much as it would be affected by tinted glass. The stained glass windows in the Opaque + Transparent example are treated as transparent surfaces. Notice how they project their colors on the ground and walls. Transparent mode does not generate new rays and is faster than Transmissives modes.
  • Transmissive (surface):
    Introduced in 1.2 “transmissive” can render refracting material. Transmissive offers several air/medium index of refractions with a single ray or multiple rays. While a single ray gives physically inexact results for bounded objects they are fast and can produce nice and less noisy results. A single ray is sufficient for water planes for example where there won’t be exit from the medium from the other side. With multiple ray mode it is possible to place the camera inside the object.
    The surface mode only handle the rays at the intersection and don’t perform volumetric density estimation unlike the Transmissive (volumetric) mode. Specific parameters : Surface shade and Tint gain. Surface shade controls how much the surface is shaded in balanced with light coming through the medium with refractions. When Surface Shade is at maximum the object is completely opaque. Tint gain controls how much light going through the medium is colored by the object color. Use strong values for stained glass for example.

    Transmissive (surface) has the following options :
    Helium (1 Ray) index of refraction 1.025, and very close to Air/Air : 1.
    Jelly (1 Ray), hypothetical medium with index of refraction at 1.125
    Water (1 Ray) index of refraction 1.333
    Glass (1 Ray), index of refraction 1.52
    Helium (MR),
    Jelly (MR),
    Water (MR),
    Glass (MR),
    Diamond (MR), index of refraction 2.417
    Multiple rays implementation. Note that ray numbers is limited to 4 in good quality and 6 in higher.

    Examples are provided in Shading & Rendering/DF Special Shaders/

    Transmissive jellifish
  • Transmissive (volumetric):
    This mode offer several air/medium index of refractions with a single ray or multiple rays. Unlike the Surface one it can also accumulate opacity along the ray for volumetric density evaluation with the parameter ‘Opacity gain’ controlling volumetric density. The volumetric density shading can be a simple diffuse shader (shaded variants) or just take the object color unshaded (unshaded variants) which correspond to the previous versions “self-illum mode”, when ambient level is above zero.
    Specific parameters : Surface shade and ‘Opacity gain’

    Transmissive (volumetric) mode has the following options :
    Helium (1R, unshaded),
    Jelly (1R, unshaded),
    Water (1R, unshaded),
    Glass (1R, unshaded),

    Helium (1R, shaded),
    Jelly (1R, shaded),
    Water (1R, shaded),
    Glass (1R, shaded),
    Diamond (1R shaded),

    Helium (MR unshaded),
    Jelly (MR unshaded),
    Water (MR unshaded),
    Glass (MR unshaded),
    Diamond (MR unshaded),

    Helium (MR shaded),
    Jelly (MR shaded),
    Water (MR shaded),
    Glass (MR shaded),
    Diamond (MR shaded)

    Transmissive self illum jellifish
  • Fuzzy loose:
    This is a faster version of ‘Fuzzy’ mode that renders less accurately than ‘Fuzzy’ by sampling the volume much more sparsingly. Use this mode if the other is too slow for fast previewing.
  • Fuzzy
    Only the volumetric interior is rendered and shaded by accumulation and there is no surface shading. Specular is off in this case. ‘Fuzzy’ shading mode can be used for fuzzy objects an even plants
  • Gas and Clouds:
    In this mode Density objects are shaded like clouds. This provides an alternate, more flexible and controllable solution than the volumetric clouds. With Gas and Clouds you can make smoke, steam, fog, clouds and even vegetation for an impressionistic approximation when seen from afar. Examples : Voyager Examples/Shading & Rendering/DF Gaz :Cloud shader
    Shading parameters are:
    ‘Opacity gain’: scales the density of the gaz.
    ‘Self shadow dist’ : length of self shadow accumulation ray
    ‘Self shadow gain’: strength of self shadow
    ‘Derivative level’: should be zero in most cases as the derivative mostly captures surface details that are not really there for true gazes.
    ‘Contrast’: global shading contrast.
    ‘Ambiant level’: amount of light scattered from the environment and passing through the medium.

  • Opaque + light
    Combines Opaque mode with Volumetric light mode (see above). The volumetric light has to be provided by a second output of the ArtMatic file. Opaque + light is suited to create lamps, illuminated cities and for special effects like lights rays or reactor exhausts coming out of a space ship.

    With volumetric light casting real light you can have ‘Opaque + light’ lamps that can be manipulated as a single object

    Utopia city combined with a DF lights field.
  • Opaque + Transparent
    Combines Opaque mode with Volumetric Transparent mode (see above). The transparent volume has to be provided by a second output of the ArtMatic file. Like the other multi-mode, this mode requires an ArtMatic system that has two sets of outputs: one for an opaque object and one for a transparent object. The second object is interpreted as a transparent and reflective object. It can be colored but light is not accumulated volumetrically. True reflections are disabled for the opaque part so they will only apply to the transparent parts. This mode is particulary useful for creating objects that have window in architectural design.

    Stained glass aisle
  • Opaque + Transmissive
    Combine the Transmissive (surface) mode with Opaque in the same way as Opaque + Transparent for 2 outputs DF ArtMatic systems. First output provide the opaque parts, second output the transparent parts.
    Opaque + Transparent does not perform true refraction and is faster in any cases. True reflections are disabled for the opaque part so they will only apply to the transmissive parts. Note that ArtMatic 1.2 has a new global RGBA shader to visualise 2 RGBA outputs systems where A is the distance field estimate (DF)
  • Ambient occlusion
    Ambient occlusion approximates how much light coming from the environment is blocked by the object in addition to true shadows. It provides a kind of clarity and realism not possible without it especially when directionnal sun light is absent like in overcast sky situations. When rendering rough textured terrains or fractal objects, ambient occlusion is especially helpful for bringing out the scene details. Ambient Occlusion estimates the amount of non-directional ambient light that reaches various areas (as opposed to shadows which are caused by directional light). AO is independent of the main light direction. Concave or hard-to-access areas will be darkened. It can be applied to terrains and objects independently. Ambient occlusion affects ambient and diffuse lighting but not specular and reflective light channels because it mostly simulates the blocking of light coming from any direction but not the light hitting the surface from a single direction.

  • Ambient occlusion can take some time to compute and is set to OFF in draft mode.
    DF objects provides several algorithm for Ambiant Occlusion. The Low freq AO is the most accurate but aslo the slowest.
    There is a global preference for the AO Radius in the main preferences dialog but each object in a scene can have its own AO amount setting.
    AO Amount. When the AO amount is less than 100% only convex surfaces are affected. Amounts greater than 100% tend to affect all areas but may leave convex areas intact.
    AO Radius Preference. Voyager scenes can have varied needs. Preferences contains a global control for the Ambient Occlusion Radius that allows you to adjust the AO for the scene’s context. On a landscape dominated by large-scale features, a size of 50 meters or so will give good results. Changing the radius will influence features of certain size or detail. The same object can look quite different with different settings. So, it is worth some experimentation to find the setting that gives you the results you prefer.
    Ideally, AO should be scale-independent but this is currently impractical because of the enormous impact it would have on render time so AO radius is scaled by the DF object scale when below and above 100%. This allows in the same scene to have a 40 meter A0 radius for terrains and large DF structures while still have correct AO for a small 20 cm object in the foreground.

    Here is an example of a fractal DF object entirely shaded by Ambient occlusion
  • Using extra outputs
    When an ArtMatic DF object has one or more extra outputs, the extra output can be mapped to various shading properties such as wetness, self illumination or reflectivity. Using extra output (or X-outs for short ) to modulate texture shading can greatly enhance realism and visual complexity. For example you may have a model that provides a texture for day light and a texture for night in an X-out channel. Turning on the channel by selecting “Self illumination” is easy and you will typically do it for night renderings without having to change the model itself.
    The extra output can be mapped to:
    ‘nothing’ : the way to turn off a particular shading option.
    ‘Self illumination’ Unlike ‘Ambiant & Wetness’ which sets the amount of diffuse reflection coming from the environment ‘Self illumination’ adds its own light to the scene giving the impression of a luminous object. The self illumination light color is the X out color or white if X out is scalar.
    ‘Wetness level’ control the specular amount of light coming from the environment. This light can be filtered by the X out color if any.
    ‘Ambiant & Wetness’ control the amount of light coming from the environment, diffuse and specular. This light can be filtered by the X out color if any.
    ‘Reflection level’ Mirror reflection of light from the environment. The reflected light can be filtered by the X out color.

    Auto Mapping of X-out option: The following letters put at the end of an ArtMatic 3D DF object multi outputs file will cause Voyager to set a proper shading option default when opening/importing a new AM system. The letters can be combined in any order up to 3 letters (“ri”, ‘wir” “wbi” etc) when multiple X-outs are used but a space needs to be present before to not get confused with letters in the name itself.

    • ‘i’: sets corresponding output to “Self illumination color & level”,
      ‘r’: sets corresponding output to “Reflection color & level”,
      ‘w’: sets corresponding output to “Wetness level / Specular color “,
      ‘b’: sets corresponding output to “Bump Map “,
      ‘l’: (in first position only) will set the first extra output to be assigned to “Volumetric Light” in the mode ‘opaque + light’,
      ‘t’: (in first position only) will set the first extra output to be assigned to “Transparent” in the mode ‘opaque + Transparent’

Performance tips

When working on a slow computer or working with a particularly CPU-intensive DFRM based scene on any computer, you may find times when making adjustments become very difficult because the CPU is bogged down calculating the preview while you adjust sliders and other user interface controls. Or simply because feedback is too slow to be practical. When this happens, there are a few tricks that you can use to improve the user interface’s responsiveness.

Reduce render quality.
The first thing to try is setting the Render Quality setting to draft or good. In some cases, this provides a dramatic improvement. Work at the reduced quality setting until you actually need the higher quality. “Draft mode” now cuts out any extra rays and should be used systematically when setting up a scene and positioning elements. In rendering using Best or Sublime quality is very slow and unnecessary most of the time. There are many cases where a Good or Better quality render is almost indistinguishable from a Best or Sublime render — and the lower quality render may take 1/10th the time.

Make objects temporarily inactive.
With very CPU-intensive systems — especially with objects that are reflective or transmissive or very slow like fractals — it is often useful to temporarily make the object inactive in the ArtMatic Object inspector. While inactive make whatever adjustments you need (sun position, camera position, etc.) and then make the object active again. You may also temporarily turn off all reflections by setting quality to draft mode.

Make texture computation separate
Finding the intersection between the ray and the object is the most CPU-intensive task with DF objects, especially if the object field is poorly convergent. Texture computation is not necessary at this stage and should be put in a CT (Compiled tree) set with the Compute only for colors. Sometimes the texture algorithm is much more complex than the object volume function and you really don’t want it to be computed for every sample along the ray when it is only needed for the object shading. For constant colored objects or simple and fast colored textures, it may be not worth to do that as there is a little overhead when using CT.

Temporarily change the sky mode.
If your scene uses objects and volumetric skies or the volumetric light sky mode, you may want to temporarily set the Sky Mode to Clear Sky or Cloudy Sky. Volumetric clouds and volumetric lights can be very cpu-intensive.

Turn off Cast Shadows and Ambient Occlusion
The Cast Shadows option can dramatically increase the calculation time. In some cases, this option can increase rendering time by as much as a factor of 10. Turn it off until you need it. If you are rendering animation, you should render some test frames to see if the option is worth the added rendering time. Ambiant Occlusion can be set to none for each objects or is globally bypassed in Draft render mode.

Troubleshooting DF object

  • Object invisible: make sure the object is not below ground, too small, or outside camera range.
  • Object artifacts: artifacts in the rendering or shadows usually means the DF field is inaccurate and convergence poor. Revise the maths of the field or lower the field amplitude to make convergence safer.
  • Black screen: the camera is probably within the object. To fix this situation, move the camera outside the object’s bounds. Otherwise it may be that the field has no more any “outside”, that is, negative values that defines empty region around the object. Revise the maths of the field to ensure it does have an “outside”.

%d bloggers like this: