ARTMATIC 5 New Features Guide

Transcription

ARTMATIC 5 New Features Guide
A RT MATIC 5.0
New Features Guide
Many thanks to Peter Miller and Dick Scherzinger (Eonite) for their invaluable feedback.
Copyright 2011, U&I Software LLC.
All images are the property of their creators and may not be reproduced without permission. Images by Eric Wenger unless otherwise noted.
Table of contents
Requirements and Recommendations
System Requirements
Recommendations Note to Upgraders
What’s New - Highlights
What's New - In Depth
Component Reference Update
Miscellaneous component changes
1->1 Components
1->2 Components
1->3 Components
1->4 Components
2->1 Components
2->3 Components
3->1 Components
2->4 Components
3->2 Components
3->3 Components
3->4 Components
4->1 Components
4->3 Components
Lesson: Using 3D Tree Structures
4->4 Components
4
4
4
5
7
8
21
22
23
23
24
24
24
26
26
43
43
47
55
65
66
72
78
A RT MATIC 5
New Features Guide
This guide covers features added in ArtMatic 5.0. These features are not yet covered in the
main ArtMatic reference manual. The comprehensive manual will be available soon. If you
are already familiar with the main ArtMatic guide, you can become familiar with ArtMatic 5.
If you are new to ArtMatic or have not used it in a while, you should skim this guide for features not covered in the main documentation but use the main documentation and its tutorials to become familiar with ArtMatic 5.
Requirements and Recommendations
SYSTEM REQUIREMENTS
OS X.5 or later. The software can run on any hardware that can run X.5 or later.
R E C O M M E N D AT I O N S
When ArtMatic is used in conjunction with ArtMatic Voyager for the creation of volumetric
clouds and objects, a quad core or better machine is recommended but not required. 3D
rendering is by its nature processor-intensive and requires some patience. ArtMatic and
ArtMatic Voyager compare favorably to other programs that accomplish similar degrees of
resolution and quality – in fact, in many cases our apps are quite a bit faster than other 3D
apps. ArtMatic objects (DFRM) requires ArtMatic Voyager 2.0 or later.
ArtMatic 5 - New Features Guide
4
Note to Upgraders
This chapter covers items of interest to anyone upgrading from an earlier version of ArtMatic. ArtMatic 5 is dramatic advance over previous generations of the software (as great as
they were). These advances have required significant internal changes, some of which influence compatibility with files created in older versions of the software.
Make sure to make backup/archive copies of all old files! We also recommend that
you keep a backup copy of the version of the software with which the old files were created. Be sure to carefully read the rest of this section.
File version compatibility - ArtMatic 5 can only read files created with version 4 or later.
If you have files created with versions 3.x or earlier, you will need to run version 4.x under
Rosetta or on a PowerPC-based Mac.
Files are not backward compatible - This update has required a new file format which
is not backward-compatible. Make sure to make back-up copies of any old documents
before opening them in the new version since you will not be able to open them in the
original version if you save them with the new version.
Render variations - Some ArtMatic files created in earlier versions may not render precisely the same as they did in earlier versions (particularly those that use complex gradient
shaders that reference the interior of the ArtMatic structure tree). Files that use any complex gradient shaders will probably need to be tweaked to restore their original appearance. Other gradient-based images may also need some adjustment. For this reason, we
recommend that you maintain a copy of the ArtMatic version used to create the files and a
backup copy of the original files. More information about this is found in the release notes.
VTrack incompatibility - raw ArtMatic 5 files are not compatible with VTrack. You can
render movies and picture sequences from ArtMatic 5 for use in VTrack, but VTrack cannot
open ArtMatic 5 systems themselves. A new-generation video montage tool is being prepared but is not yet available.
ArtMatic Voyager for 3D Rendering! ArtMatic 5 introduces a new class of components
for creating fully-3D objects that can be rendered as stills or animation in ArtMatic Voyager
(2.0 or later). ArtMatic Voyager now has options to render objects with or without a landscape and/or sky which allows Voyager to be a 3D rendering tool for ArtMatic art. Make
sure to visit the ArtMatic Voyager home page and galleries to see the amazing visuals that
the two apps can create together.
OTHER ITEMS OF INTEREST TO USERS OF PAST VERSIONS:
• Component popups. The component order has been updated to be more intuitive
ArtMatic 5 - New Features Guide
5
•
•
•
•
•
City Textures/ City Lights and Reflections/Tech Noise# components. The sharp/
smooth option is now displayed in the option pop-up rather than included as part of
the algorithm.
Picture input buffer. Input pictures are no longer reformatted to fit an internal picture
buffer. The input format specification has been removed from the Input Pict/Movie dialog since it is now obsolete.
ArtMatic Browser. Browse Directory requires that you choose a folder that contains
one or more folders that contain ArtMatic presets. If you choose a folder that contains
presets, rather than other folders, the display will be blank.
Logical Format. Logical format has been removed from the preferences dialog as it is
now automatic and only relevant for special cases that use non-square pixels. ArtMatic
handles these cases automatically.
Search for Missing preference. The old preference about searching for missing files
has been removed.
ArtMatic 5 - New Features Guide
6
What’s New - Highlights
ArtMatic 5 is a major technological advance that opens up amazing new possibilities especially when ArtMatic 5 is used with ArtMatic Voyager: hundreds of new graphics algorithms many of which are optimized for the creation of 3D objects, eight-core rendering,
seamless integration with ArtMatic Voyager, and much much more. The ArtMatic/ArtMatic
Voyager combination is no longer just for creating 3D landscapes. ArtMatic 5's new DFRM
(distance field ray marching) technology creates objects that can be rendered by ArtMatic
Voyager with or without a surrounding landscape. These capabilities can be used to create
cosmic visions, abstract 3D art, and stunning 3D landscapes. And, of course, all these
new components expand the possibilities of the 2D graphics for which ArtMatic is famous.
•
•
•
•
•
•
•
•
•
•
•
•
•
•
•
Components for creating fully-3D objects when rendered with ArtMatic Voyager – including plants and trees and much more
Up to 8 processors for rendering and previewing
New image output formats: pdf, tiff, height map, png
33 new components providing hundreds of new algorithms
New component options that expand the possibilities of many previously existing components
Hot-linking with ArtMatic Voyager for automated realtime view-updating when the apps
are used together
Flexible aspect ratio for the main canvas (adapts to the Aspect preference)
Compiled trees from groups. Compiled trees can be made from a group of tiles in the
main structure tree.
Audio-engine optimization for smooth audio previews on multi-core machines
Support for up to 32-bit floating point audio output when rendering sounds
New color shading modes
Alpha channel visualization
Many behind-the-scenes optimizations
Preset library with more than 2,000 presets (optional)
Much much more
ArtMatic 5 - New Features Guide
7
What's New - In Depth
This chapter describes features added in ArtMatic 5 that were not previously available.
These features are not yet described in the main ArtMatic reference manual which is being
updated to cover the new features.
8-core rendering. ArtMatic 5 uses up to 8 processors when rendering and previewing for
massive speed improvements on computers with more than 4 cores.
3D Objects/Density Fields. The ArtMatic 5 engine features quite a few new components
for constructing fully-3D objects using something called density fields. These components
require ArtMatic Voyager for 3D rendering. The possibilities are enormous and have barely
been explored. Take a glance at our online galleries, and look through this document for
many examples of this new technology. These objects can be rendered with or without a
surrounding landscape and/or backdrop. ArtMatic Voyager is no longer for rendering landscapes only. Now, it can render 3D abstracts and cosmic visions designed in ArtMatic.
These objects can even be rendered as stereoscopic 3D images using ArtMatic Voyager's
binocular rendering option which opens up a vast new area for exploration.
What is a density field? Don't be intimidated by the technical explanation that follows. All
you really need to understand is that a density field component creates output that ArtMatic Voyager can interpret as a 3D object. You do not need to know anything about the underlying technology or how density fields work to make use of them. Technically, a density
field takes a point in 3D space and returns a value that indicates the distance from the object's surface. The object's surface is defined as anywhere that the density field is 0; positive values indicate the object's interior; negative values indicate regions outside the object.
ArtMatic provides density field components that are easy to manipulate to create objects.
See the DFRM Guide for detailed information and some lessons.
The images on the following pages demonstrate objects designed in ArtMatic and rendered with ArtMatic Voyager.
ArtMatic 5 - New Features - In-Depth
8
ArtMatic 5 - New Features - In-Depth
9
Images this page copyright 2011 by Eonite and may not be reproduced without consent.
ArtMatic 5 - New Features - In-Depth
10
Images this page copyright 2011 by Eonite and
may not be reproduced
without consent.
ArtMatic 5 - New Features - In-Depth
11
Examples on this page provided by Peter Miller
and may not be reproduced without permission. Copyright 2011.
ArtMatic 5 - New Features - In-Depth
12
Examples on this page provided by Peter Miller
and may not be reproduced without permission. Copyright 2011.
ArtMatic 5 - New Features - In-Depth
13
Flexible canvas aspect ratio. The canvas is now drawn using the Aspect preference
and is changed on-the-fly. The horizontal to vertical ratio of the displayed area must be 1:2
or less. If the horizontal to vertical ratio is greater than 1:2, 1:2 will be used.
New components. 33 new components supply hundreds of new algorithms, shapes and
patterns. ArtMatic 5's new architecture allows a single component to have up to 32 different algorithms or behaviors plus many now have an option that provides alternative ways
of interpreting their parameters. Many of these new components provide functionality especially useful for implementing 3D objects.
Component Algorithm Popup. In the past, some components used Parameter A as an
algorithm selector for components like 2->1
Math Tools or 2->1 Tech Noise. The new ArtMatic 5 architecture now allows components to
have an Algorithm selector without using up a
parameter slot. All old components and most of the new ones still make use of the parameter A slider for algorithm selection (although you can choose the algorithm from the
popup as well). The new 4->3 3D Tree Structures is a component that uses the algorithm
popup but uses Parameter A for something else.
Component options. Many components now have an option popup that appears when
relevant. The options generally influence how certain
parameters are interpreted (such as whether the angle
is specified in radians or degrees). The option is not
keyframable and appears below the parameter sliders
when available. Common options are:
•
•
Angle in Radians/Angle in °. This option lets you choose to work with angles in degrees rather than in radians. In the past, ArtMatic always used radians for rotation and
angles. When using degrees the range is from -180° to 180 °. Use the 'snap to integer'
grid to make it easier to set precise angles when using degrees. Radians provides a
larger range of rotation.
Use Direct Frequency / Use Voyager km. When available, this option lets you set
the frequency of some noise components using ArtMatic Voyager distance rather than
using the direct frequency. This is available for fractal noise and Perlin noise functions
which are often used in designing ArtMatic Voyager terrains. This option is convenient
when designing systems for ArtMatic Voyager since it makes it much easier to set the
size of large-scale features (which are associated with very low frequency values like
0.0012 which can be hard to set using the sliders). With the Voyager km option, you
ArtMatic 5 - New Features - In-Depth
14
•
can use the full range of the slider to set the base noise scale (the scale of the lowest
frequency element of the noise) in km. It is accurate when the scaling in Voyager is set
to Absolute but is still useful when using relative scaling. It will also make frequency parameter mutations (using the mutation tools) more meaningful for terrains.
Zero Floor / Allow Negative Values. Certain 2->1 components (such as Lozenge,
Line, and Shapes #) have a new option that allows negative values. Previously, these
components generated values greater than or equal to 0 only. The creation of 3D objects (for ArtMatic Voyager) requires values that are both negative and positive. By using the option Allow Negative Values, 2->1 components can be used together to create
3D objects. See the section 3D from 2D for demonstrations.
ArtMatic/Voyager hot-linking.When ArtMatic is being used to edit an element opened
from ArtMatic Voyager, the view in ArtMatic Voyager is updated instantly when the ArtMatic
system is saved. This feature is especially powerful on a two display system or with the
apps side-by-side on very large screens.
New output formats. New image output formats are available when rendering images to
disk. The available formats are: pdf, tiff, png, Height Map 1025 (16 bits), and Height Map
2049 (16 bits).
Height Map output for exporting to 3D apps. The new Height Map output options are
used to export surfaces from ArtMatic to 3D software such as Unity and Bryce or any
other software that supports 16-bit height maps. Height Maps only make sense with 1-out
systems or RGBa systems (where the alpha output defines the exported elevation map).
Audio - optimized realtime rendering. Sound rendering has been rewritten to be multithreaded. Audio playback is much improved when previewing complex systems on multicore machines.
Audio - support for more audio types and bit depths. ArtMatic now supports aif, caf,
Sound Designer II and wav files at up to 32-bit output. All internal audio computations are
32-bit floating point. CAF (core audio file) format supports 32-bit floating point output as
well as 16, 24, and 32-bit integer.
List of PIctures supported as Movie input. Image sequences are now treated as movies when used as inputs to Pict/Movie components. If you select an image file with the
Choose Pict/Movie popup and its name ends with a number (such as image0120.png),
ArtMatic will treat it as a movie if it also finds image0000.png. Use the Rate Option Match
Frame in the Input Pict Movie Setup dialog so that the frames will be matched to the project's frame rate. The options for the movie start time work with image lists and allow you
to extract portions of the image sequence. If you want to use a still image that has an imArtMatic 5 - New Features - In-Depth
15
age sequence-type name (that is in the same folder as other files with sequential names)
as input, you will need to either rename it so that the name doesn't seem like a sequence
number or move it into a folder by itself.
New interlacing options for Input Pict Movie Setup. A new Fields popup has been
added to the Input Pict/Movie Setup dialog to
provide improved handling of interlaced input.
If the movie is not interlaced, leave the setting
at "Normal / Interlaced" or you will lose definition. Fields options:
•
•
•
•
•
Normal / interlaced: no change (use this for non-interlaced input or interlaced input that
you don't want to re-interpret).
Merge Fields: mix the even and odd fields
Merge Fields & filter: mix even and odd fields and apply a light blur
Even Fields: use the input's even lines and duplicate them to the odd lines
Odd Fields: use the input's odd lines and duplicate them to the even lines
List of Pictures image format now PNG. Rendering a movie with the List of Pictures
format now uses PNG format rather than PICT.
Compiled trees - New Compiled Tree from tile groups. It is now possible to select a
logical group of tiles and create a new compiled tree from it. To select a group of tiles, click
on the uppermost tile of the group and shift-click on a tile below it to set the output tile of
the compiled tree. Choose New Compiled Tree from the Tree popup (or type the 'n' shortcut). All tiles between the two tiles will be added to the compiled tree including the last one
as long as all the tiles are linked directly or indirectly to the first selected tile. It is the user's
responsibility to select a meaningful group. In some cases, you may need to add a tile or
two in order to make sure that all the tiles that you want to capture are part of a logical
grouping.
Example
This example shows what happens if you have tiles connected to tiles outside of the
selection group. The first tile selected is the group's parent and has a green outline.
The last tile of the group is indicated by the red outline. The last tile in this group is
connected outside the group. As a result, the compiled tree ends up with a last tile that
has an unconnected input which is something to be avoided or corrected.
ArtMatic 5 - New Features - In-Depth
16
[Left] Structure Before [Middle] Outer Structure after New Compiled Tree is applied
[Right] CT Interior. Notice that the last tile in the tree has an unconnected input.
Before using New Compiled Tree, you should make sure that the selected group is
logical and complete (or you should clean up the tree afterwards to make sure that all
inputs/outputs are connected). For example, in this case, a tile could be added at the
top of the tree to join the two branches so that the new compiled tree will be complete.
[Left] The tree with a tile added at the top to join the branches [Middle] After applying New
Compiled Tree [Right] Inner structure of the new compiled tree
Compiled trees - Rename compiled tree command. It is now possible to give a compiled tree a new name. To rename a compiled tree, use the Tree popup's Rename Compiled Tree command. This changes the name of the tree internally and is useful for indicating the tree's function. If you later export the compiled tree, this will be the exported tree's
default name.
Improved Alpha Channel visualization. A checkerboard background has been added
to make alpha-channel visualization obvious when working with structure trees that have
an alpha channel. This should prevent surprises that have occurred when people inadvertently created ArtMatic systems with unintended alpha channels that caused their images
to be partly transparent when opened in apps such as Preview that automatically composite images with transparency against a background color. To render a movie with an alpha channel, make sure to set the color depth to "millions+" for a QuickTime or use List of
PIctures (which renders as a sequence of PNG files). If you do not want an alpha channel,
ArtMatic 5 - New Features - In-Depth
17
use the new RGB Multi shader or add a 3->3 tile at the bottom of the structure (which
makes the structure an RGB rather than RGBa structure).
A checkerboard pattern shows through for
RGBa (four-output) structure trees where the
image is not fully opaque. If you do not want
an alpha channel (a transparency layer), set
the shader to RGB Multi (or add a 3-output
component at the bottom of the tree so that
there will be no alpha channel).
RGB Shader Changes. There are two new RGB shading modes: RGB Multi and RGB
Density (main out). RGB Direct mode has been renamed RGB Alpha (main out) and RGB
Alpha Bump has been renamed RGB Bump (main out). Also, as noted above, a checkerboard background pattern has been added to help visualize the alpha channel.
RGB Multi (new). This mode has a few uses. It composites (mixes together) parallel output components in trees that have more than one output component. RGB multi ignores
the alpha channel of the main output; so, it is useful if you want to render a 4-output tree
without its alpha channel. It is especially useful for designing multi-output ArtMatic systems
for ArtMatic Voyager since ArtMatic Voyager 2 can make use of multi-output systems. It
makes it possible to visualize the extra outputs being sent to Voyager.
How it works. The alpha channel of the leftmost component is ignored. If there is more
than one output component, the image is composited according to the following rules:
•
•
•
scalar values (the output of a one-output component) are shaded in additive mode using the auxiliary colors where auxiliary color one is used for the first extra output, auxiliary color for the second extra output, etc.).
RGB values (3-output components) are shaded in additive mode
RGBa values (4-output components) are added according to the alpha layer values (i.e.
the alpha layer is treated as a transparency mask).
Several examples of RGB multi mode are found the 5.0 Examples folder of the ArtMatic
presets library. Improbable Bubbles and all the examples that start with the word "multi"
use RGB Multi.
ArtMatic 5 - New Features - In-Depth
18
RGB Multi. Scalar values example.The main
output component is an RGB (three-output)
component. There are two extra scalar outputs
labeled A and B. The extra outputs are drawn
with the auxiliary color that corresponds to their
position. The first extra output (A) is drawn with
the first auxiliary color and the second extra
output (B) is drawn with the second. [Inset] ArtMatic system [Outer] Image as it appears with
RGB Multi.
RGB Density (new). This mode is primarily for visualizing 3D objects that will be rendered
by ArtMatic Voyager. It gives you an idea of the shape of the object and the colors that will
be used for its texture. RGB Density only makes sense when the output component is
RGBa (has four outputs). The left three outputs provide the object's colors. The fourth output is interpreted as the object's surface (density field). The object acts as a mask so that
the color texture only appears where the object is defined. By contrast, RGB Alpha mode
scales the transparency proportionally to the fourth output's value for fine gradations of
transparency. Because an object either exists or doesn't exist at any point in space, RGB
Density is much more useful for visualizing where an object is defined than RGB Alpha
mode. RGB Density does not provide 3D shading. For true 3D-visualization, use the system inside ArtMatic Voyager.
[1] The structure tree [2] The image created when using RGB Alpha mode [3] The image created
when using the RGB Density shader [4]
[Left] The object as rendered by ArtMatic
Voyager in No Planet Mode [Right] The
object rendered in ArtMatic Voyager as
part of a scene.
ArtMatic 5 - New Features - In-Depth
19
Gradient color shader changes. In order to implement forward-looking technology,
many of the gradient-based color shaders had to be re-implemented. As a result of these
changes, some of the gradient-color shaders do not render identically in version 5 as they
did in previous versions. The complex gradient-based shaders were most affected by this
change--especially those that reference components in the interior of the structure tree.
These shaders have been kept for historical reasons but may disappear at some point in
the future. So, you should not rely on them -- especially the modes such as Linear+3
Lights that make use of input values in the interior of the tree. You should now use the 1 ->
3 Main Gradient or Indexed Gradient components to map the gradient to RGB color and
use the many compositing tiles to obtain similar effects using true RGB colors.
IMPORTANT! If you have files that use gradient color, make sure to keep backup copies
of the original files as well as the ArtMatic version used to create them as a reference.
ArtMatic Voyager mode updated (Global Input Matrix). The ArtMatic Voyager global
input mode now fills A3 and A4 with the Voyager camera position which allows the creation of camera effects (such as lens flares). When "Link Environment to Sun" is turned on in
ArtMatic Voyager (available when the Sky mode is Backdrop or Backdrop+clouds), the A3
and A4 inputs provide the sun's co-ordinates (which are centered to the sun position).
Scroll Wheel Support. The computer mouse's scroll wheel is now supported if it is
turned on in both the System's and ArtMatic's preferences. The scroll wheel can be used
to scroll the canvas.
Removed outdated "Use Pict's Own Size" option. Formerly, ArtMatic scaled picture
input to fit an input buffer the same size as the project's work format unless Use Pict's
Own Size was selected in the Input Pict Movie Setup dialog. Input images are now always
used at their true size.
Removed outdated Logical Size preference. In earlier versions of ArtMatic, userdefinable preferences for the work format (the actual pixel dimensions) and logical size
were provided to handle non-square pixels. Since, digital video now predominantly uses
square-pixels, we have removed this setting which often caused confusion for people that
were unfamiliar with the difference between square and non-square pixels. Unless using a
preset for something (such as DV format) that uses non-square pixels, ArtMatic will use
square pixels. When choosing a preset size that is associated with non-square pixels (such
as DV format), the logical size is automatically set.
ArtMatic 5 - New Features - In-Depth
20
Component Reference Update
This section documents new and changed components. There are 33 new components in
ArtMatic 5 which includes some new classes of components that are especially useful for
designing 3D objects. If you do not already have ArtMatic Voyager, you may want to download the demo version and explore the folders with "DFRM" in their name in ArtMatic Voyager's 2.0 Examples folder. Where relevant, images have been rendered from ArtMatic
Voyager rather than ArtMatic. Some important new or expanded classes of components
are:
•
•
Density Fields / Objects - There are components that create primitive 3D solids and/
or collections of primitive solids (spheres, cubes, tubes, and the like). Technicallyspeaking, these components create density fields that ArtMatic Voyager can render as
3D objects, but you do not need to understand what a density field is to make use of
them. While these are especially useful for designing objects to be rendered in ArtMatic
Voyager, they can be used to create beautiful images in ArtMatic itself, as well. See the
document DFRM Guide more information about DFRM.
3D iterators - These components allow iterative manipulation of 3D space/objects and
are especially useful for creating complex 3D fractal and fractal-like objects. Such as
those below:
Examples by Peter Miller
•
3D space transforms - Quite a few space transforms have been added that are useful for manipulating 3D objects and for creating 3D objects from 2D components.
ArtMatic 5 - New Features -Component Reference
21
MISCELLANEOUS
COMPONENT CHANGES
Packed Alpha mixers (updated). All of the Packed Alpha... 2->4 and 3->4 components
(Packed Alpha Max, Packed Alpha Min, etc.) have been rewritten to address several issues
when the input is from scalar values or 3->1 Pack. In general, Infinity is transmitted out
when all the input values are infinite. Scalar input values are treated as surfaces shaded
with gray levels according to height. Packed 3 inputs are given a default alpha/height value
except for Add where it is set to 0.
Packed inputs. All of the components that take packed inputs can also accept nonpacked input in any inputs.
City Noise components. The centering of the street marks in various city noise components were fixed.
Compiled Tree Recursion/Iteration. Some changes have been made to how compiled
trees handle recursion. In the past, all compiled trees with the same number of inputs and
outputs (except for the 4->4 compiled tree) were recursive. Recursive compiled trees pass
their output back to their input when iterated. Iterative trees loop without recursion. The 4>4 Compiled Tree has been modified to be recursive like all other trees with the same
number of inputs and outputs.
Since there are times when recursion (feedback) is undesirable, there is now an option to
disable feedback. Feedback might undesirable if, for instance, the compiled tree inputs are
3D co-ordinates and the outputs are color values. When feedback is off, the recursion parameter behaves like an iteration parameter. This only affects 1->1, 2->2, 3->3, 4->4 compiled trees. In older versions, feedback was always on for these trees (with the exception of
4->4 trees). The options menu appears below the parameter sliders. Options (new): allow
feedback, feedback disabled.
ArtMatic 5 - New Features -Component Reference
22
1->1 COMPONENTS
Set Constant (new). This component returns a constant value set by parameter A regardless of the input value. The options popup provides three interpretations of parameter A:
direct value, 1/value, angle in °. When direct value is selected, the output value is the setting of parameter A. When the 1/value option is used, the output is 1 divided by the parameter A value. When the angle in degrees option is selected, parameter A is treated as a
value in degrees, and the output value is the equivalent value expressed in radians.
Math Tools (new algorithms). Two new algorithms have been added (selectable by parameter A or the Algo popup)
iteration break |x|>32. This component aborts iterations within a recursive compiled tree
when the input value is larger than 32. This can be used to optimize certain fractals by
aborting meaningless (and time-consuming) iterations.
fract(x). Returns the fractional part of the input and is much faster than modulo.
Modulo (updated). The function was updated to increase the frequency parameter's range
and to make sure that 0 is in the middle of each repetition series. The phase setting offsets
the x-axis.
Scale (updated). The component was updated to have parameter options. The options
are: direct value, 1/value, or angle in degrees. When direct value is selected, the output
value is simply the setting of parameter A. When the 1/value option is used, the output is 1
divided by the parameter A value. When the angle in degrees option is selected, parameter
A is treated as a value in degrees and the output value is equivalent value expressed in radians. The angle in degrees option is convenient for multiplying by Pi (180 degrees) or Pi/n.
Saw (updated). The Right Slope parameter (A) now includes negative values in its range. A
negative slope provides a gradual attack and a rapid decay.
Offset (updated). The range of the offset parameter has been increased.
1->2 COMPONENTS
Derivative (new). Returns the partial derivatives DX, DY.
Set Constant (updated). Parameter options have been added: direct value, 1/value, angle
in °. See 1->1 Set Constant for more information about these options.
Modulo (updated). Modulo has been updated to ensure that 0 is centered in the repetitions.
ArtMatic 5 - New Features -Component Reference
23
1->3 COMPONENTS
Derivative (new). Returns the partial derivatives DX, DY and DZ which are useful for 3D
Fields (such as DFRM objects) and 3D Textures.
Set Vector (new). Scale the input value using parameters A, B and C and output A*x, B*x,
C*x (which creates the vector Ax, Bx Cx).
1->4 COMPONENTS
RGB Gamma (new). This is the same as the 1->3 RGB Gamma component with the additional capability that it passes out the input via the alpha channel.
RGBA Indexed gradient (new). This is the same as the 1->3 counterpart with the additional capability that it passes out the input via the alpha channel.
2->1 COMPONENTS
Math Tools (new algorithms). Four new algorithms have been added to the algorithm list
(also selectable by parameter A).
•
•
morph log (e^x + e^y). This is a morphing algorithm. Its equation is: log(exp(x) +
exp(y)). The result is a smooth blending of two functions when their values are close but
works like a maximum function when the values are far apart.
smooth max. A version of maximum with a fixed smoothing ratio that is useful in
recursive/iterative compiled trees. Unlike the normal maximum algorithm, smooth max
adjusts the smoothing to the iteration level of compiled trees in order to avoid small
scale elements being smoothed too much. This is often used in recursive compiled
trees used to generate trees and vegetation for ArtMatic Voyager.
•
power x^y. Raise input value x to the power of input value y.
•
iteration scale x/y^i. This algorithm performs scaling that is inverted with respect to
the number of iterations of the tree which contains it. It is useful for iterative fractals where space needs to inverse scaled with respect to the
number of iterations. It is especially useful for creating DFRM fields where
the field amplitude needs to be inverse-scaled with respect to the space.
Most of the iterated DFRM fractals and iterative tree examples provided
with ArtMatic Voyager make use of this component. See the "iter tree" series of examples and the "Fractales 3D" examples found in the ArtMatic
Voyager 2.0 Examples folder.
ArtMatic 5 - New Features -Component Reference
24
The table below demonstrates how the use of iteration scale can be used to have
elements (such as spacing and size) change in relation to the number of iterations.
Iteration # Example
0
2
3
6
ArtMatic 5 - New Features -Component Reference
25
Ax+By+C (updated). Add parameter options (direct value, 1/value or angle in degrees) for
interpreting the scaling parameter . See the 1->1 Scale component for more details.
2->3 COMPONENTS
Packed RGB min (new). This new packed mixer returns the minimum of (input 1 * parameter A) and (input 2 * parameter B). This component can also be used to mix two 3D
spaces. If the inputs are RGBA, transparent regions are shaded lighter.
Packed RGB max (updated). A new parameter, feather, has been added to smooth discontinuities
3->1 COMPONENTS
3D Density Shapes #. This component provides 3D density fields that correspond to
some basic solid objects which can easily be morphed into complex objects. It is primarily
used for creating 3D objects rendered in ArtMatic Voyager but they can be used for native
ArtMatic images, too. In general, the fields have 0 as the center value (which defines the
object surface in Voyager). The value goes to -infinity when moving far away from the object. The field is positive inside the object and indicates the distance to the surface.
See the example "2.0 examples/DFRM Objects/Basic Objects/3D Shapes Dimensions.vy"
to see all the primitive shapes with their normal orientations and size.
Parameters:
(A) Algorithm - selects the shape
(B) Radius - the object size. An undistorted,unscaled sphere of radius 1 (the unit sphere)
has a radius of 20 meters in ArtMatic Voyager.
(C) Amp (amplitude) - This value is normally either 1 or -1. -1 creates a negated field which
is very useful when using boolean operations (such as min) to create a hole in another field
as shown below. The algorithms from plate xz to hollow tube use the amplitude to control
the z dimension (depth).
ArtMatic 5 - New Features -Component Reference
26
Complex shapes can be made from simple combinations of primitive Density Shapes. In this
example, a cube with amplitude 1 is combined with a cylinder whose amplitude is -1 using
MinMax set to minimum. See the DFRM Guide for more information.
Sphere
a sphere of radius B.
Column
an infinite upright cylinder
of radius B in the y axis
Tube x axis
an infinite upright cylinder
of radius B in the x axis
ArtMatic 5 - New Features -Component Reference
27
Tube z axis
an infinite upright cylinder of radius B in the z
axis
Ring (xz) plane axis
a horizontally-oriented
(oriented in the xz plane)
torus (donut shape)
Ring (zy) plane axis
Ring (xy) plane axis
ArtMatic 5 - New Features -Component Reference
28
Saucer xz
a flattened sphere
Cone
an infinite cone. Radius
(parameter B) changes
the slope
Pyramid
an infinite pyramid. Radius changes the slope
Cube
a cube
ArtMatic 5 - New Features -Component Reference
29
Smooth Cube
a smooth-edged cube
Cylindre
A cylinder whose height is
finite above 0 but infinite
where y < 0
Obelix
a truncated rectangular
prism (box shape) that is
finite where y > 0 and infinite where y < 0
Arch y
an arch-topped rectangular prism (box shape) that
is finite where y > 0 and
infinite where y < 0
ArtMatic 5 - New Features -Component Reference
30
Rounded tube y
A cylinder with a rounded
top that is finite where y >
0 and infinite where y < 0
Spheres cluster xz
A collection of spheres on
the xz plane (horizontallyoriented). This is a nice
starting point for groups
of rocks or asteroids
Spheres Cluster
A cluster of spheres. This
is a nice starting point for
flying rocks or asteroids
ArtMatic 5 - New Features -Component Reference
31
Column Cluster xz
Cubes Cluster xz
Cubes cluster
Plate xz
ArtMatic 5 - New Features -Component Reference
a horizontally-oriented
flattened box
32
Panel xy
a vertically oriented flattened box. Amplitude (parameter C) controls the
depth
Frame xy
a vertically-oriented rectangular frame shape. The
frame edges are squares
and Radius controls the
object size. Amplitude
controls the depth.
Hollow Tube z
a hollow horizontallyoriented cylinder oriented
along the z-axis. The size
is Radius*8. Amplitude
(parameter C) controls the
depth in the z direction
Leave y
A vertically-oriented leaf
shape. A useful primitive
for designing vegetation
ArtMatic 5 - New Features -Component Reference
33
Grass y
A vertically-oriented
shape reminiscent of a
blade of grass. This is a
useful primitive for building objects, but for creating "real" grass the builtin 3->4 Color Grass Field
component is
computationally-more efficient than building grass
from primitives.
Branch Smooth
The branch series is essentially a collection of
smooth-topped cones
(with a steep slop) with a
variety of useful textures.
A branch shape with a
smooth surface.
Branch B
A branch shape with a
textured surface
Spiky Branch
A branch shape with a
spiky textured surface
ArtMatic 5 - New Features -Component Reference
34
Cactus Branch
Twirl Bumped Branch
Radial Displace #. This component creates radial displacements that provide interesting
surface features to 3D objects (primarily those that will be rendered from ArtMatic Voyager), especially vegetation. This component provides quite a few different algorithms for
very different effects.
Radial displacement can take a shape like the one on the left (a sphere merged with a cone) and
add interesting surface detailing
The displacements radiate outwards from a vertically-oriented cylinder. To use Radial Displace with DFRM objects, add the output of Radial Displace to the object's output value as
shown in the example tree. For the math-minded: Radial Displace creates displacement
ArtMatic 5 - New Features -Component Reference
35
of the angle/distance/y-axis with a displacement vector pointed towards an outward x/z
cylinder.
Explanation of the example structure tree. Group A creates the
"cone/sphere" by combining two 3->1 Density Shapes (a cone and a
sphere) using 2->1 Math Tools set to Max as the mixer. The 3D Offset
tile is used to control the position of the sphere on the cone. The tile
labeled B is the Radial Displace component. The tile labeled C is
used to add the Radial Displacement to the object (density shape).
Parameters: A: Algorithm, B: Phase, C: Frequency
Algorithms. The table below illustrates all of the algorithms by applying them to a merged
cone & sphere. The renders were done with ArtMatic Voyager. See the ArtMatic Voyager
example file 2.0 examples/DFRM Life & Plants/Components Demo/RadialDisplaces
Demo.vy to see examples of all the algorithms. Advancing the time slider will advance you
through the algorithms.
Cone and sphere with no displacement.
1. Fibrous Segmented
2. Petales
0. Y-Segmented
ArtMatic 5 - New Features -Component Reference
36
3. Radial Sines
7. Bumps A
4. Sparse Spikes
8. Bumps B
5. Upward spikes
9. Random
6. Saw and Spikes
10. Spherical Spikes
ArtMatic 5 - New Features -Component Reference
37
11. Spherical Spikes+
14. Spherical Bumps C
12. Spherical Bumps A
15. Spherical Random
13. Spherical Bumps B
ArtMatic 5 - New Features -Component Reference
38
3D Density Noises. This component provides a variety of 3D noise that can be blended
with a density field object (DFRM object). The output range is infinite so it needs to be intersected or blended with a finite object to bound it. 3D Density Noise (depending on how
it is used) can add texture to a surface (as seen in the Textured Torus examples below) or
transform a primitive shape like a sphere into something much more interesting. Typically,
3D Density Noise’s output will be combined with the output of a density field object using a
component like 2->1 Ax+By+C or 2->1 Interpolate.
Some helpful example files are provided with ArtMatic Voyager:
•
•
Textured Torus - A basic example that shows all the noise types (by moving the time
slider in Voyager). See Voyager's 2.0 Examples/DFRM Objects/Basic Objects/Textured
torus.vy
Desert Psychic 3D - This example interpolates a sphere with the Jitter Spheres noise
to create a sphere cluster. It demonstrates how you can transform one object into quite
a different object. See Voyager's 2.0 examples/DFRM Objects/Basic Objects/desert
psychic 3D JS.vy
Parameters: A: Algorithm, B: Scale, C: Amplitude
Algorithms: Cylindre 3d grid # , Rect 3d grid # , Diamond 3d grid # , Sphere 3d grid # ,
Spheroid noise # , Cuboid noise # , Jitter Spheres # , Random Boxes # , Lines Network # ,
Random Plates # , Random Polygons #
D E S E R T P S Y C H I C E X A M P L E S ( 3D D E N S I T Y N O I S E )
This structure tree demonstrates how 3D Density noise can be used to transform a simple shape into something much more complex. This tree interpolates a Density Shape with Density Noise to create a new shape (or cluster of
shapes). This is the ArtMatic tree used to create the object cluster in the Desert Psychic 3D example system. It is used for the examples that follow. In all
cases below, the 3D Density Shape is a sphere.
ArtMatic 5 - New Features -Component Reference
39
Shape: Sphere.
Density Noise algorithm: Jitter Spheres.
Shape: Sphere.
Density Noise algorithm: Cylinder 3D Grid.
The only difference between the object in the
previous image and this one is the setting of
the interpolation parameter.
Shape: Sphere.
Density Noise algorithm: Cylinder 3D Grid
Shape: Sphere.
Density noise algorithm: Random Polygons.
ArtMatic 5 - New Features -Component Reference
40
Algorithms Illustrated (3D Density Noise) Textured Torus Example
A
B
The tree used in the examples below is from the Textured
Torus.vy example file provided with ArtMatic Voyager. In
the example file, move the time slider to see each of the
algorithms demonstrated. Group A provides the Density
Noise (which is warped using cylindrical projection. Group
B provides the basic shape which is a combination of a
torus and a rounded tube (both are 3D Density Shape algorithms). The Density Noise is added to the object using
the 2->1 Ax + By + C component.
0 - Cylindre 3D Grid
2 - Diamond 3D Grid
1 - Rect 3D Grid
3 - Sphere 3D Grid
ArtMatic 5 - New Features -Component Reference
41
4 - Spheroid Noise
8 - Lines Network
5 - Cuboid Noise
9 - Random Plates
6 - Jitter Spheres
10 - Random Polygons
7 - Random Boxes
ArtMatic 5 - New Features -Component Reference
42
2->4 COMPONENTS
RGBa Blurred Pict/Movie (new). A color version of the 2->1 Blurred Pict/Movie component. The source image is loaded into an internal buffer and blurred. The loading time increases with the size of the image. Very, very large-sized images may take a long time to
load since ArtMatic applies a high-quality blur algorithm and blurring is by nature a cpuintensive task. (As a point of reference a 5120 * 4800 pixel image loaded quite quickly on
a dual-core 2.4 GHz MacBook Pro while a 10,000 by 10,000 pixel image loaded fine but
took many minutes to load).
Packed Alpha... (updated). All of the components with 'Packed Alpha' in their name have
been updated. See the section Packed Alpha Mixers found later in this document for details.
Packed Add (updated). This component no longer limits values to 0 and over. Negative
colors can be interesting for special effects (such as negative lights). If you need to clamp
values to 0 and over, use any of the following: 4->4 Contrast & Offset, 4->4 Color Shift, 4>4 Smooth Floor, or 3->3 RGB Contrast.
3->2 COMPONENTS
Revolution space. This component creates a 3D solid of revolution by rotating a 2D
shape around the y (vertical) axis. For example, if you rotate a vertically-oriented circle
around the y-axis, the result is a torus (a donut shape). Revolution space returns dist(x,z)
from the left output and y from the second output. Connect the inputs to 3D space and
the outputs to a 2D surface.
Parameters: A: Radius
EXAMPLES
A torus is created from the Distance component whose Amplitude is less than 0
ArtMatic 5 - New Features -Component Reference
43
The solid created when the 2>1 Shapes component is set to
Pyramid Squared
The result when 2->1 Lozenge
is used
ArtMatic 5 - New Features -Component Reference
44
Spherical Projection (updated). Spherical projection now has 4 algorithms from which to
choose: two algorithms for spherical projection and two for cylindrical projection. Previously, there was no algorithm choice. Algorithms 0 and 1 are useful for mapping a 2-D image onto the surface of a sphere since they take into account the curvature of the sphere
in all directions. Algorithms 2 and 3 are useful for mapping a 2-D image onto a cylinder or
cylinder-like object which is only curved in one direction. The algorithm choice depends on
whether the 3D space being mapped is spherical or cylindrical as demonstrated in the table below. Example: ArtMatic Voyager/2.0 examples/DFRM Objects/Basic Objects/
Textured torus.vy uses a cylindrical projection
The algorithms are:
•
•
•
•
0 - Spherical Projection. This was the algorithm used by ArtMatic 4.8 and earlier.
Note that there is a discontinuity at 2π. Output: angle(x,z), asin(y/M)
1- Spherical Sym Projection. The absolute value of x is used which keeps the projection symmetrical and continuous. Output: angle(|x|,z), asin(y/M)
2- Cylindrical Projection. Y is passed out unchanged. Output: angle(x,z), y
3- Cylindrical Sym Projection. This is the same as algorithm 2 except that the absolute value of x is used to make the output symmetrical and continuous. Output: angle(|x|,z), y
Technical Note: asin is arcsine and M is the modulus (dist(x,y,z)) used to normalize y.
The structure tree used to generate the example images. With vertical skew = 1, 3D
ellipsoid produces a sphere. When the skew is set to 0, the result is a cylinder.
ArtMatic 5 - New Features -Component Reference
45
A sphere with the Spherical Projection set to
algorithm 0 (spherical projection). Notice that
it compensates for the curvature in all directions.
Spherical Projection set to algorithm 2 (cylindrical projection) to project the logo image
onto the cylinder.
Spherical Projection set to algorithm 2 (cylindrical projection). Notice the squashing of the
logo.
Spherical Projection set to algorithm 1
(spherical projection) to project the logo image onto the cylinder. Notice the distortion
that occurs because the spherical algorithm
is compensating for curvature at the top and
bottom which a cylinder does not have.
ArtMatic 5 - New Features -Component Reference
46
3->3 COMPONENTS
Scale (updated). Add options popup with options: Individual Axis and Uniform Scaling. In
earlier versions, individual axis was used. Uniform Scaling allows all dimensions to easily
be scaled by the same amount. It uses parameter A to scale all three outputs and uses B
and C to for addition scaling of the Y and Z outputs. With Uniform Scaling, the formulas for
the outputs are: Ax, ABy, ACz. With Individual Axis, the output is Ax, By and Cz.
Offset (updated). The parameter range was increased to +/-64
RGB Contrast (updated). The component now clamps colors to valid ranges (no negative
values).
Color Shift (new). Like the 4->4 version, this component controls hue, saturation and luminosity and clamps the colors to valid nominal ranges (0 - 8).
3D Tile (new). Tile space in up to three dimensions. This component is useful for creating
regular tilings of space which can be useful for creating 3D objects that feature repeating
patterns.
Algorithms: Infinite Tile #, Repeat twice, repeat 3 ... repeat 12.
Parameters: A - Tile X, B - Tile Y, C - Tile Z
The parameter range for A, B and C is 0 to 1. The parameter value sets the spacing of the
tiling along the associated axis. When the parameter is 0 , there is no tiling along that axis.
•
•
Parameter options:
Use 2/period. This option treats the parameter value as frequency. Low values increase distance while high values decrease it. At 1, the tiles overlap slightly.
Use period. Treats the parameter as the distance between the tiles.
3D Mirrors and Rotates # (new). This component provides several 3D space transformations that are especially useful for creating 3D objects. The transforms include a variety of
rotation and mirroring algorithms along with some others.
Parameters: A: Algorithm, B: N Rotate (number of rotations), C: Offset or Angle
ArtMatic 5 - New Features -Component Reference
47
Algorithms Illustrated (3D Mirrors and Rotates)
Far left: Untransformed Obelisk.
Left: The tree used for the examples:
0
Mirror N xy
sharp
Mirror each tile/branch and perform N rotations using rotational symmetry with respect
to the xy plane.
1
Mirror N xy
smooth
2
Rotate N xy
N symmetrical rotations with respect to the xy
plane.
3
Mirror N xz
sharp
The same as algorithm 0 but with respect to
the xz plane
ArtMatic 5 - New Features -Component Reference
48
4
Mirror N xz
smooth
The same as the previous but with smoothing.
5
Rotate N xz
The same as #2 but with respect to the xz
plane.
6
Helix in Y
Create a helical transformation of the space
with respect to the y axis. Note: it is sometimes useful to use 3D Offset after this component.
07
Mirror N xz &
Rotate 30 zy
Rotational symmetry with respect to the xz
plane plus a rotation of 30° in the zy plane
08
Mirror N xz &
Rotate -30 zy
Same as previous but with -30° rotation in zy.
In each of the previous algorithms (0 - 8), parameter C controls the rotation center's offset
while parameter B (N) controls the number of symmetries of rotations.
In algorthms 9 - 15, the parameter C controls the vertical rotation or the spread rather than
the offset.
ArtMatic 5 - New Features -Component Reference
49
09
Mirror N xz &
tilt C y
Mirror symmetry of the input with radial symmetries with respect to the xz axis plus a rotation of -C° in the zy plane.
Parameter C controls the vertical rotation in
this algorithm (while in algorithms 0 through 8
it controlled the offset). The upper example
shows C = 2 while the lower example has
C=60.
10
Mirror N xz &
tilt -C z
Essentially, the upside down version of the
previous algorithm.
11
Rotate N xz &
Spread
Radial symmetry without mirroring plus a
randomized offset for each rotation. Parameter C controls the angle by which the rotations are spread
12
Rotate N xz &
Spread &
Bend Up
The same as the previous algorithm with the
addition of bending in the zy plane. This is
especially useful for creating flowers and
fluted textures.
13
Rotate N xz &
Spread &
Bend Down
The same as the previous algorithm but with
a downward bend.
ArtMatic 5 - New Features -Component Reference
50
14
Rotate N xz &
Branch 3
Radial symmetry with 3 repetitions to create
a branched structure. Parameter C is the
spreading angle.
15
Rotate N xz
Random
xz symmetries with randomized rotations and
offset with a spread of -C° in the zy plane.
3D Distorts and Bends (new). This component provides a variety of 3D space distortions
that are useful for creating 3D objects.The component is generally used to modify the
shape of objects by being used above the objects in the structure tree (which warps the
objects by modifying the space in which they occur).
Parameters: A - Algorithm, B - Amount, C - Scale/Period.
Example files: See the examples provided with ArtMatic Voyager: 2.0 Examples/DFRM
Objects/Space distort objects
Spread Gaudi Plant example.
ArtMatic 5 - New Features -Component Reference
51
Algorithms Illustrated (3D Distorts and Bends)
In the images below camera is facing northwest. The thick cylinder runs along the x axis
Undistorted
0
Dist xz ripples y
Distort the space vertically using formula:
sin(dist* scale) * amount.
Ex. 1. Amount =-2
Ex, 2 Amount = 2
1
Dist xz bend
Bend the space vertically by an amount that
is a function of the distance to to the center
(0) of the xz plane.
2
x Bend
Bend the space vertically in the x axis by
amount*x
ArtMatic 5 - New Features -Component Reference
52
3
z Bend
Bend the space vertically in the z axis by
amount*z
4
y Bend
5
Rotate xz by
y
Vertical twirl of the space by amount * scale
6
Warp y
Distort the space's scale on the y axis
7
Warp Dist
Distort the space proportional to its distance
from the center (0).
ArtMatic 5 - New Features -Component Reference
53
8
Cylindrical
bumps
Cylindrical coordinate displacement pattern
(angle(x,z),y). This works nicely for objects of
revolution and branches. Strong displacements can result in poor convergence. If
there are artifacts even at Best and Sublime
quality, the amount of distortion should be
reduced.
9
Cylindrical &
y bumps
10
Cylindrical &
y spikes
11
Cylindrical
randomize
12
Spherical
bumps
ArtMatic 5 - New Features -Component Reference
Spherical coordinate displacement patterns.
Equations: (angle(x,z),angle(y,dist))
54
13
Spherical
spikes
14
Spherical
ripples
3->4 COMPONENTS
3D Looper (new). This component is a fully 3D looper and is similar to the 2->3 Looper.
Like all loopers, this component is recursive. The leftmost 3 outputs of the component are
fed back into the component that feeds the loop. The rightmost output is the count value
(the iteration number times Parameter B, count multiplier). All components between the
looper and the next memory component are looped.
Jitter Tile xz# (new). Jitter Tile xz splits the xz plane (the horizontal plane in ArtMatic Voyager) into many similar cells with local centers. When the output is fed into a component
(or series of components) that create a 3D object, the result is non-identical copies of the
object. "Jittering" is often used to perform operations like creating a forest from a tree or a
field from a blade of grass for ArtMatic Voyager. This has many applications and is especially useful for creating object clusters for ArtMatic Voyager.
A forest of non-identical trees created using Jitter XZ
ArtMatic 5 - New Features -Component Reference
55
Application Note: For proper convergence of DFRM objects (for ArtMatic Voyager), care
should be taken not to use too much randomization or to set the scale too low which may
causes objects to move outside their cell. Jittering of a single object can also be performed
in ArtMatic Voyager itself.
This simple tree jitters a 3D Density Shape (set to the frame shape).The fourth output (the randomized jitter value) is sent to 4->3 Rotate so that each copy is rotated
differently. By setting up the structure tree correctly, you can create significant
variation among the copies.
The system as it appears in ArtMatic Voyager.
Parameters:
A: Scale controls the size of each cell. The smaller the value, the smaller the region of
space that is replicated and the closer the repetitions will be to each other. If you set this to
ArtMatic 5 - New Features -Component Reference
56
a small value, the region may be too small to contain the object -- especially if the Jitter %
is high.
B: Jitter % controls how much the center position is deviated from strict tiling.
C: Clip radius % allows to restrict the area. At maximum the repetitions are infinite. A
small value provides only a few repetitions.
Output: The output are new co-ordinates X, Y and Z plus a 4th output (W) which is a random number with a range of 0 - Pi that varies with each tile in the.
Parameter Options:
Regular Jitter - the xz plane (horizontal plane in Voyager) is broken up into a fairly regular
grid
Sparse Jitter A - the space is divided into a grid that is more irregular and sparse than
first mode with various placement patterns.
Sparse Jitter B, Sparse Jitter C - other variations of sparse jittering.
bypass"- no tiling/jittering. This setting is sometimes useful for debugging a complex system so that you can see the item being jittered on its own.
Regular Jitter
Sparse Jitter A
ArtMatic 5 - New Features -Component Reference
57
Sparse Jitter B
Sparse Jitter C
3D Leaves # (new). This component creates a variety of leaf-shaped density fields that are
especially useful for creating leaves or other DFRM objects for ArtMatic Voyager. A typical
structure tree demonstrating this component is shown below. The input is a 3D space and
the output is a 3D space warped into a leaf shape (which will be sent to a color texture
function) and a density field (which will be used in Voyager to define the leaf shape).
The MR Palm Tree Voyager example
Tropical B Leaf Attached to a Cactus Branch
EXAMPLES. There are many examples of this component's use in the Voyager's 2.0
Examples/DFRM Life & Plants/Components Demo folder. In particular see the example
leaves Demo.vy.
ArtMatic 5 - New Features -Component Reference
58
A very simple section of an ArtMatic structure that uses the Leaves # component
and others to create a color-textured leaf in ArtMatic Voyager. This structure was
used to create the examples in the table below.
Algorithm is selected with the algorithm popup.
Parameters: A: Angle, B: Bending Amount, C: Shape
The shape parameter provides variations of the generated shape.
Palm Leaf A with Bend = 0 Palm Leaf A with Bend = 1
Bending Amount illustrated
Parameter Options: Orient xy, Orient zy, Symmetric 30 xy, Symmetric 45 xy, Symmetric
60 xy, Triple 30 xy, Triple 45 xy, Eventail xy
Algorithms Illustrated (3D Leaves)
Algorithm
Shape = 0 (Min)
Shape = 1 (Max)
0
Heart
1
Heart Saw
ArtMatic 5 - New Features -Component Reference
59
2
Palm Leaf A
3
Palm Leaf B
4
Lozenge
Saw
5
Tropical A
6
Tropical B
ArtMatic 5 - New Features -Component Reference
60
7
Tropical C
8
Alien Rings
9
Alien Flower
ArtMatic 5 - New Features -Component Reference
61
Parameter Options (3D Leaves #) illustrated:
Orient xy
Orient zy - Camera rotated offaxis slightly for this image.
Symmetric 30 xy
Symmetric 45 xy
Symmetric 60 xy
Eventail (fanned) xy
Triple 30 xy
Triple 45 xy
ArtMatic 5 - New Features -Component Reference
62
Color Grass Field # (new).Creates an infinite field of grass for use with Voyager DFRM
objects. The output is color (the lefmost 3 outputs) + field value (object). The field value defines the shape of the blades of grass. This component is faster than using a jitter function
with a repeated single grass object. The Option popup provides several different grass
types. Those with "random" in the name have randomized colors.
Random Yellow Grass using the follow terrain Option
Parameters: A: Modulation Scale, B: Modulation Amount, C: Contrast.
Parameter Options: see table below
The examples below were created with the ArtMatic Voyager Builtin Grass example file
provided with Voyager (2.0 Examples/DFRM Life & Plans/Grass folder/Builtin Grass).
ArtMatic structure tree of the Builtin Grass example file (provided with ArtMatic Voyager), Notice the use of A2 (Voyager Elevation) to limit the grass to low
elevation areas. The use of A2 Requires that the Follow Terrain option be
turned on in Voyager's Object dialog.
The parameter options popup provides a number of different options
that determine the color and shape of the blades of grass. The table below shows the various types of grass at a few different levels of magnification.
ArtMatic 5 - New Features -Component Reference
63
Green Grass
Random Green Grass
Random Green Gr. (close)
Yellow Grass
Random Yellow Grass
Sparse Grass
Random Sparse Grass
Strange Grass
Strange Grass (closer)
Random Strange Grass
Random Strange Gr. (closer)
Random Strange Gr. (close)
Sparse Strange Grass Sparse Strange Grass (closer)
Sparse Random Strange Gr.
ArtMatic 5 - New Features -Component Reference
64
Packed Alpha... components (updated). See Packed Alpha Mixers in the section Miscellaneous component changes.
4->1 COMPONENTS
3D w Fractal Noise (new). This is a version of 3D Fractal noise that uses the fourth input
(w) to control the fractal dimension (the roughness) of the noise. Values above 0 increase
the fractal dimension (with relation to the baseline dimension) and values below 0 decrease
it. This component is great for clouds or terrains when you need higher fractal dimensions.
Use a constant w value to increase or decrease the fractal dimension or a varying w to
create interesting patterns and terrains.
Fractal Noise controlled by a constant
Image with w set to a
high value
w set to a low value
w = approximately 0.5 w very low
w set to a higher value
Volumetric clouds created with the structure
shown above
Algorithms: Straight fractal noise, Multi Fractal Positive, Multi Fractal Balanced, Ridged
fractal noise.
Parameters: A: Amplitude, B: Phase, C: Frequency
Parameter options: Use Direct Frequency, Use Voyager km
ArtMatic 5 - New Features -Component Reference
65
Examples: See the ArtMatic Voyager examples in 2.0 examples/Terrains and also 2.0
examples/Clouds & Volumetrics/Volumetric AM w fractal clouds.vy
4->3 COMPONENTS
w Multiply (new). This component simply multiplies the x, y, and z inputs by w (the fourth
input) and sends out the result of the multiplications. This is similar to 4->3 w Scale but the
output values are not clipped.
w Divide (new). Divide the x,y and z inputs by w and pass out the results.
w Scale (updated). A new parameter "Roof" was added allowing you to pin the multiplier
value (the w input) to this maximum. Roof must be higher than the Floor parameter.
RGB Mix, RGB Alpha, RGB Multiply, RGB Interpolate (updated), w Color Fade &
Color Shift (updated). These components have been updated to transmit Infinity correctly. Note the components between RGB mix and RGB interpolate can accept a packed
color stream as the 4th input. If the 4th input is a scalar value, they map the value to the
current gradient to create the color. (In earlier versions of ArtMatic, if the 4th input was
scalar, the gradient color was only used if the component was at the bottom of the tree.
3D Tree Structures #. This component creates a tree-like branching of space using a variety of techniques (symmetries, rotations, translations and repetitions) that are especially
useful for creating trees and plants for ArtMatic Voyager. When used inside a recursive CT
(compiled tree), this component may be sensitive to the iteration level (depending on which
tree algorithm is selected) which results in a more varied structure than if each level were
simply a scaled down version of the parent.
[Left] ArtMatic Voyager tree [Right] 3D Tree Structure used inside a recursive compiled tree
ArtMatic 5 - New Features -Component Reference
66
To create an tree-like object, the component is used in conjunction with a component such
as 3->1 Density Shapes since by itself, it is just a space distortion function. Most users will
want to use one of our many examples as a starting point for their creations since using
the component from scratch requires a solid understanding of ArtMatic structures and recursion. However, it is fairly simple to make modifications to the many example files that
are provided with ArtMatic Voyager.
Of course, you are not restricted to creating trees for ArtMatic Voyager.
Use this component to create non-tree-like objects, too. A sphere transformed with a single recursion of 3D Tree Structures
Inputs and outputs. The four inputs are a 3D Space (the left 3 inputs) and w which acts
as a random seed for the random numbers used internally to determine the branch spacing. When the 4th output of Jitter Tile xz# is connected to w, it will randomize the aspect of
repeated trees. Or, you can connect w to global input A3 if Voyager Jitter Opaque mode is
in use. To control the range of w-related modifications, you can use the 1->1 Math component set to the Fract algorithm to limit the range from 0 to 1 and add a scale and offset
so that you can control the minimum, maximum and amplitude of the variations.
ArtMatic 5 - New Features -Component Reference
67
The best way to get started using this component is to start from one of the examples in
Voyager's 2.0 Examples/DFRM Life & Plants/Plants iterative folder.
Parameters:
A: N Rotate - For most algorithms, this is the number of symmetries of rotation. Some
algorithms, such as Alternate 180, only use this value for iteration #3 (in a recursive CT).
B: Angle A - The main branch angle. Low values result in branches pointing upward. 90
degrees will be perpendicular and high values create branches angled down.
C: Angle B / Slope % - The slope or a second angle. The meaning depends on the particular tree algorithm. The slope controls how much the length of the branches diminish
going up. At 0, the branches are parallel. For some algorithms (such as cactus) it controls
the bending. For some (palm trees) is is the sub-branching angle.
Algorithms Illustrated (3D Tree Structures)
The tree algorithms are also referred to as "tree rules" since strictly speaking some of the
algorithms are rule sets sensitive to the number of iterations.
0 - Palm Tree - All branches start from the same center. nice for palm-like structures
1 - SR Tree B1 - When iterated (recursed), the first iteration level can have N branches
while the additional iteration levels just have N branches created with rotational symmetry
off of the parent branch.
ArtMatic 5 - New Features -Component Reference
68
tree rule 1 (3 iterations)
2 - SR Tree BN bend up - All levels can have N branches with some randomization
3 - SR Tree BN bend down - All levels can have N branches with some randomization
4 - Random SR Tree BN - All levels can have N branches with some randomization
tree rule 4 (3 iterations)
5 - Random SR Tree B1 - Similar to rule 1 but branch direction and length are randomized.
ArtMatic 5 - New Features -Component Reference
69
6 - Cactus - Branches grow alternately left and right. When iterated it produces a structure like the one below:
7 - Alternate 180 - branches grow alternately left and right.
8 - Alternate Ferns,
ArtMatic 5 - New Features -Component Reference
70
9 - Rotating Branches - branches grow in alternating fashion with a global rotation controlled by parameter C.
tree rule 9 (3 iterations)
10 - Rotating Branchs & SR - Similar to 9 for the first levels but then grows clusters of
rotating branches whose number is related to parameter A. Here an example of tree rule
10 with leaves attached with SR 8:
ArtMatic 5 - New Features -Component Reference
71
LESSON: USING 3D TREE STRUCTURES
Analysis of a basic structure for creating a tree
The generation of a trees/plants is a complex problem. 3D Tree Structures can create a
wide variety of plant structures. A typical structure tree for a tree/plant is shown below:
•
•
•
There is a section (a single 3->1 Density Shapes tile in this structure) responsible for
creating the trunk.
The trunk shape is passed (along with 3D space) to a recursive compiled tree that creates the branches (it includes the 3D Tree Structures component,
The trunk+branches are fed to compiled tree that adds the leaves.
A typical ArtMatic structure tree for trees and vegetation
The compiled tree that handles the branches is generally a recursive compiled tree. The
number of levels of recursion determine the number of layers of branches. Some tree algorithms vary the branching pattern according to the recursion level. More details are found
below.
A SIMPLE STRUCTURE: TRUNK + BRANCHES
Below is a very simple structure that provides a trunk and branches and colors them with a
simple color texture.
ArtMatic 5 - New Features -Component Reference
72
The outer level structure [ArtMatic system: Angles 43 tree iter from the Voyager example Tree
rule 1.vy]. The structure creates a trunk with branches and uses a simple color texture.
The same structure and recursion level (3) but a different tree rule (number 4 instead of number
1) creates a very different tree.
ArtMatic 5 - New Features -Component Reference
73
Main Structure. The main (outer-level) structure tree provides the
tree trunk (A) and color texture (C). The recursive compiled tree (B)
provides all the branches and sub-branches. The 3D Rotate component at the top is useful for adjusting the orientation.
Helpful hint: 3D Rotate is very helpful when designing any 3D object as it enables you to rotate the object in space while working on
the object even if you don't plan on having the object rotated in
your final scene.
The 3D space (from 3D Rotate) and the tree trunk (from 3->1 Density Shapes) are passed into the CT that adds the branches (described below). The tree trunk (A) output is also sent to the 1->4 Hue Color tile (C) which
provides the tree's color texture. Hue Color's RGB output is sent to Alpha Scale and Offset
which provides final adjustments of the completed tree.
The Branches CT (Compiled Tree)
In the structure shown above the compiled tree (CT) labeled B provides the branches. A
CT is a group of components that appear as a single tile in the outer-level ArtMatic structure. Below is the internal structure of the compiled tree that creates the branches. This
structure (with different parameter settings) is used for almost all of the plants and trees
that we create. Adjustments of a few parameters can create a virtually endless variety of
plants and trees.
[Left] The structure inside the compiled tree that provides the tree
branches. The green lines indicate the input received from the
parent tree: 3D Space and the tree trunk (a density field)
CT Inputs: The compiled tree receives four input values from
the parent structure (which are indicated in green in the diagram): three space co-ordinates and the tree trunk density
field .
Quick analysis: the incoming space is scaled (by the W*
component) and sent to the 3D Tree Structures component
whose output is sent to 3D Density Shapes (algorithm = Cactus Branch) and blended with the tree trunk (the density field
received from the input). The output is the modified space
(modified by 3D Tree Structures component) and the modified
density field (which is the tree object).
ArtMatic 5 - New Features -Component Reference
74
Details: The Set Constant tile (label: A) is used as a scaling factor by being multiplied
against the incoming space using the W Multiply tile. Its output is also used as the y-input
for the Math Tools component in the group of components labeled D where it has a further
impact on the scaling.
The scale space is sent from W Multiply to the 3D Tree Structures component (label C) -which is set to Algorithm 1, N Rotate =1, Angle A = 5, Angle B/Slope = 40.844. The 3D
Tree Structures component's w input (which acts as a random seed) comes from the Set
Constant component labelled B in the diagram.
The 3D Tree Structure's output is a space warped into a tree-like shape. This space is sent
to 3->1 3D Density Shapes which is set to the Cactus Branch algorithm. This provides the
actual branch objects (the density field). The 3D Tree Structure output is also passed to the
first three outputs of the final component (whose job is just to pass out the values it receives).
The 3D Density Shape (which is at the top of the group labelled D in the diagram) is sent to
2->1 Math Tools->Iteration Scale. The resulting branches are thus automatically scaled by
the number of iterations. Each successive iteration creates smaller branches. The adjusted
branches are then added to the density field (the actual tree object) that was passed in to
the compiled tree.
The resulting output is a density field (3D object) which is passed to the fourth input of the
last component. The last component sends 4 output values out of the tree. The three coordinates of the branch-warped space and the updated branching object (density field).
Recursion. The recursion parameter of the compiled tree determines the number of
branching layers. Setting it to a value larger than 0 causes the CT to be looped so that its
operations are performed several times. This particular type of compiled tree is recursive
which means that the compiled tree's output is fed back to the input each time that it is
iterated (looped). Each iteration of the tree creates a new level of branching as illustrated
below. Some of this component's algorithms (the so-called tree rules) are sensitive to the
recursion level and create different branching patterns at different levels of recursion so
that different levels of branches are not simply scaled down versions of the previous level.
ArtMatic 5 - New Features -Component Reference
75
Recursion = 0
Recursion = 1
Recursion = 3
With this tree rule (algorithm 1), each level of recursion adds another set of branches at the
end of the existing branches. Some tree rules add branches elsewhere as shown below.
Tree Rule 4 with Recursion = 3
ADDING LEAVES
To add leaves to a tree, we need to add components to:
•
•
add leaves to the trunk and branches
blend the leaves with the tree branches.
Below is a "trunk+branches" type structure to which components have been added to
provide leaves
[Left] Structure that creates just trunk and
branches
[Middle] The structure modified with components to add leaves
[Right] The compiled tree that handles the
leaves
ArtMatic 5 - New Features -Component Reference
76
The tree with the added leaves
Analysis
•
•
•
a compiled tree (A) was added that takes a 3D "tree" space as input and sends out an
3D color texture and a density field that corresponds to the leaves. Its output is packed
with 4->1 Pack so that it can be sent to a mixer
a 2->4 Packed Alpha Max component (C) was added to mix the tree and branches
with the leaves
a4->1 Pack component (B) was added to pack the trunk+branches
A tree created with the structure tree above as it appears in ArtMatic Voyager.
ArtMatic 5 - New Features -Component Reference
77
Recursion and 3D Tree Structures. When used inside a recursive CT, one must set the
scaling ratio for each level carefully to avoid having branches grow outside the plant's
boundaries. Our example systems are already set up with the necessary scaling components and should generally be your starting point. In general, scaling values of 2 to 5 work
best. Because the structures are recursive, they are quite sensitive to parameter values
and can be computationally intensive.
4->4 COMPONENTS
Memory W Max (updated). The component is now intiated to -inf so that it can be used
with 3D fields that have negative values.
Compiled Tree (updated). In ArtMatic 4.8 and prior versions, 4->4 compiled trees were
looped but not recursive (while all other CTs with the same number of inputs and outputs
were recursive). In ArtMatic 5, 4->4 compiled trees are recursive as they should be. A new
option, allow feedback (ins -> outs) has been added for all recursive compiled trees. By
default, the option is on and the CTs are recursive. When the option is turned off, the CT
will loop non-recursively (and thus needs a memory component at the end to accumulate
the loop results).
4->4 Compiled Trees are most commonly used to create recursive fractal-like objects. For
fractal-like objects, the input to the CT will be a 3D space in inputs xyz and the fourth input
(w) will be a density field. Inside the CT, you generally will accumulate the density using
Memory w Max. This component is also used extensively for creating iterative plant structures (see 4->3 3D Tree Structures) where the input is 3D Space and (in w) the density field
to which the structure is to be added (such as the tree trunk to which branches are to be
added). In these cases, the output is typically the modified object (density field) or a
packed RGBa value that holds the color texture and field density value (the object). The
advantage of using 3D Space + RGBa output is that you can mix the output with other
similar CTs to build up complex plant structures. For example, a first 4-> 4 CT might create
the first level of branches while a second will add a different secondary branching structure
and a third would add the leaves. An example of this is found in the ArtMatic Voyager examples 2.0 Examples/DFRM Life & Plants/Plants Iterative/Composite...
ArtMatic 5 - New Features -Component Reference
78
Composite Tree A.vy and the ArtMatic structure that creates the plant.
ArtMatic 5 - New Features -Component Reference
79