//----------------------------//
ArtMatic 3 in 1 out components
//----------------------------//


Introduction
Math tools #
S:P Maths #
Ax+By+Cz
Dot, Plane & Line
x:y * z
x*y + z
x * y * z
Logic tools #
Min <-> Max
z Blend
Blend by alt (z)
Displace by alt (z)
Random Mix
z Sin shader
z Circles
z Bubbles
Facet pers
3D Sin x+Sin y+Sin z
3D Sin x*Sin y*Sin z
Radial Displaces #
Pack(x,y,z)
3D Grid
3D Techno noise
3D Bubble & skins #
3D Spots
3D DF XYZ shapes #
3D DF shapes A #
3D DF shapes B #
3D DF noises #
3D DF Patterns #
3D DF Surfaces #
Turbulence pers
Techno pers
Random pers
Fractal Map
Mandelbrot set
Julia sets
Ferro magnet model
z Fractal lines
z Basalt rocks
z ridged Fractal noise
z Stone Clusters
3D Random
3D Perlin Noise
3D Multi Perlin noise
3D Fractal noise
3D MultiFractal noise
3D Cubic MultiFractal
3D Ridged Fractal
3D Fractal noises #
3D Terrains #
3D Textures #
3D Lunar rocks
3D Bubble rocks
3D Stratified noise
3D Crystal noise
3D Fractal Stucco
3D Fractal Puffy Clouds
3D Altocumulus Clouds
3D Ocean
3D Fractal lines
3D Random lines
3D Cellular
3D Fractal Bubbles
31 Compiled tree


Introduction

These components provide a number of different functions: 3D surfaces/textures, mixers for blending surfaces, basic fractals. 31 components also include some important DFRM primitives for creating 3D objects in ArtMatic Voyager.
An essential in-depth discussion of ArtMatic structures Trees and components is found in ArtMatic Designer References and in Building trees.

Coordinate Notes: In the descriptions below, x, y and z refer to the components first, second, and third inputs. They are not necessarily x,y,z spatial coordinates since that depends entirely on the components which are feeding the inputs.

Adaptive, Band-Limited Noise Functions

Many fractal noise functions have adaptive resolution and are band-limited to reduce high-frequency noise. These functions are recommended for designing systems for use in ArtMatic Voyager. The number of iterations and resolution of the functions are determined by both the cameras zoom level and the preference for fractal iterations. By being adaptive, the functions can deliver maximum detail at any zoom level.

Notes: With very high zoom levels, you may need to increase the Maximum Iterations for Fractals preference. Those components with a sienna-colored icon feature adaptive resolution and band-limiting.


31 Math tools #

parameters :
Depends on Algorithms.

discussion :
This component provides many useful ways of blending/compositing 3 branches and provides a number of valuable math primitives for advanced users.

algorithms :


31 S:P Maths #

parameters :
A : Amplitude x (0. : 1.)
B : Amplitude y (0. : 1.)
C : Amplitude z (-1. : 1.)

discussion :
Introduced in ArtMatic engine V 8.07 this component can operates on scalar and vector packed data indifferently. This math component is useful as both a mixer and as a basic mathematical building block for implementing specific equations on any combination of vector and scalar inputs.
For RGB and RGBA data it is similar to the packed maths equivalents. When the output has to be unpacked you may use the 33
Packed Maths # or the 34 Packed Maths # versions.

algorithms :


31 Ax+By+Cz

parameters :
A : Scale X (-16. : 16.)
B : Scale Y (-16. : 16.)
C : Scale Z (-16. : 16.)

discussion :
This component provides a weighted mix of the input : it is the dot product of parameter vector(A,B,C) with incoming XYZ coordinates. The three scale parameters act like level controls which determine how much of each input is present in the output. An input is essentially ignored if the corresponding scale parameter is set to 0.
Formula: Ax + By + Cz



31 Dot, Plane & Line

parameters :
A : Plane/Line x (-2. : 2.)
B : Plane/Line y (-2. : 2.)
C : Plane/Line z (-2. : 2.)
D : Offset (-32. : 32.)

discussion :
Parameters A to C specifiy the plane
normal vector from which various DF fields can be returned like infinite planes and tubes of arbitrary directions. Useful for 3D modeling this primitive is usually mixed with others to create complex objects with logical boolean operation as provided by S:P Logic &Profiles.
For convenience it also provides some dot product calculations useful for shading.

algorithms :


31 x:y * z

parameters :
A : Balance xy (0. : 1.)
B : Amplitude z (0. : 1.)

discussion :
This math component mixes the x and y inputs by interpolating between them and uses the z input to multiply the mix. This is a great way to animate a transition from one image to another using the z input as an additional modulation. If z is connected to a derivative or an illumination branch it can provide an independent shading.
Formula: mix(x,y,A)*B*z



31 x * y * z

parameters :
A : Scale (0. : 2.)

discussion :
Math primitive that multiplies all inputs.
Formula: A(x * y * z)



31 Logic tools #

parameters :
A : Amplitude (-2. : 2.)
B : Smoothness % (0. : 32.)
C : Thickness % (Algorithm dependent)

discussion :
This component provides a number of logical operators for combining 3 streams (usually DF objects) in complex ways. For instance, it can be used to combine/intersect, three DF objects to create complex shapes. 34 Packed z Morph provides similar functions for packed streams (for mixing several colored objects). See also:
21 Logic tools # # and 24 Packed Logic # for illustrations of Logic transforms similar to those provided by 31 Logic Tools.

Example: DF terrain Dfnoises

algorithms :


31 Min <-> Max

parameters :
A : Amplitude (0. : 2.)
B : Min to Max (0. : 1.)
C : Smoothing (0. : 16.)

discussion :

Min<->Max is the 3 input equivalent of the logical blending function 21 Min <-> Max




31 z Blend

parameters :
A : z scale (0. : 1.)

discussion :
This component mixes the x and y inputs using the z-input as the interpolator. "z scale" parameter will blend incoming z to 0 if <0.5 and to 1 if >=0.5. Keep it at 0.5 for leaving z unchanged. z is clamped to unity range prior the interpolation.
See also
31 Math_tools at Cubic Interpolate clipped and interpolate unclipped.
Formula x+z*(x-y)




31 Blend by alt (z)

parameters :
A : Altitude fx (-16. : 16.)
B : Altitude fy (-8. : 32.)
C : Range (0.10 : 8.)

discussion :
This component mixes the (x,y) inputs using the z input to control the blending. Feed this tile with the output of 2 surfaces that you want to blend under the control of a third. When the Z values are within the range specified by Altitude fx and the Range parameter, the x surface is selected. When the Z values are within the range specified by Altitude fy and the Range parameter, the y surface is selected. Everywhere else, the Z surface itself appears. The Range parameter determines the range of values to be replaced--Altitude fx and Altitude fy specify the range's center, and Range specifies the range width. The x input always appears at lower altitudes than the Y input. Parameter B must be larger than parameter A for the x input to appear.

This component is a very powerful component when designing terrains for ArtMatic Voyager as it allows complex composite terrains to be made by combining two disparate terrains under the control of another. Example: The lower texture (input x) is the Cellular noise component and the higher texture (input y) is Sparse Fractal Rocks.




31 Displace by alt (z)

parameters :
A : Altitude fx (-16. : 16.)
B : Altitude fy (-4. : 32.)
C : Range (0.10 : 8.)

discussion :
This component is similar to Blend by Alt. Rather than mix the (x,y) inputs (left and middle) according to the contours of the third input, this component selectively adds the values from the left and middle inputs to the values in the third input.

For example, take a system that has Cellular Noise as the left (x) input, Sparse Fractal Rocks as the second input, and a noise function to blend them. The features provided by the x and y inputs (Cellular Noise and Sparse Fractal Rocks) are added to the terrain provided by the third input. In essence, this component adds the x input to the Z input at low elevation and adds the y input to the z input at higher elevations with parameters A and B (in combination with parameter C) determining where the transitions occur.




31 Random Mix

parameters :
A : Amount (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
This component randomly mixes the three input surfaces. This component is especially useful for creating composite images or surfaces (for use with ArtMatic Voyager) that randomly mix elements from its inputs. When Amount is 0, the output is provided entirely by the left input. The order of the inputs is significant. The dominant surface should be the left input.

When creating systems for use with ArtMatic Voyager, this simplifies the task of creating rich varied topographies.




31 z Sin shader

parameters :
A : Amplitude (0.50 : 3.)
B : Z scale (-2. : 2.)
C : Contrast (-2. : 2.)

discussion :
This component can generate complex shading/banding where the shading is controlled by the z input.

Basic Formula: sin(x + y + B z) (The basic equation is further modulated by the amplitude and contrast parameters.)




31 z Circles

parameters :
A : Frequency (0.06 : 6.28)
B : Contrast (0.50 : 2.)
C : Altitude (-2. : 2.)

discussion :
This periodic component has a pointillation, pixellation or dither-type effect and only works well with some sorts of systems. If the first two inputs define a spatial position, the z value will effectively control the amount of pixellation.




31 z Bubbles

parameters :
A : Scale (-2. : 2.)
B : Contrast (-2. : 2.)
C : Phase (-2. : 2.)

discussion :
This function distorts space with superimposed cylinders/bubbles. The interaction between the inputs can be quite complex. Animating the phase parameter can create fascinating mixing, morphing of the inputs and the distortion bubbles.




31 Facet pers

parameters :
A : Frequency (0. : 2.)
B : Z scale (-0.50 : 0.50)
C : Contrast (0. : 1.)

discussion :
This component generates a mosaic pattern with a perspective effect imposed by the z-input.




31 3D Sin x+Sin y+Sin z

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 8.)

discussion :
This periodic component tends to create dimpled textures. It can be used either as a mixer or as a 3D texture generator.




31 3D Sin x*Sin y*Sin z

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 8.)

discussion :
This periodic component tends to create dimpled or egg-crate like textures. It can be used either as a mixer or as a 3D texture generator.




31 Radial Displaces #

parameters :
Algorithm slider : (0 : 15)
B : Phase (-32. : 32.)
C : Frequency (0. : 16.)

discussion :
This component creates radial noises that provide interesting surface features to add to 3D objects (primarily those that will be rendered from ArtMatic Voyager), especially vegetation.

The displacements radiate outwards from a vertically-oriented cylinder. To use Radial Displace with DF objects, add the output of Radial Displace to the object's output value as shown in the example tree. The radial displace noises are in themselves not DF compliant but when added slightly to a DF object they will add interesting details without compromising the convergence. The spherical variants use a spherical projection instead of a radial (cylindric projection) to add details.

Note: For the math-minded, Radial Displace creates displacement of the angle/distance/y-axis with a displacement vector pointed towards an outward x/z cylinder.

Example: A sphere and plane displaced by Fibrous Segmented #



Example: A sphere and plane displaced by Petales #



Example: A sphere and plane displaced by Upward Spikes



Example: A sphere and plane displaced by Bumps A



Example: A sphere and plane displaced by Spherical Spikes +



Example: A sphere and plane displaced by Spherical Bumps C



algorithms :


31 Pack(x,y,z)

parameters :
No parameters.

discussion :
Use this component to pack the output of 3 output functions into a single packet which can be passed to packed functions. The output of this function should only be passed to components that expect packed input. As the number of inputs is limited packing is necessary to compact data for vectors operations. For example adding two 3D vectors would require 6 inputs. By packing data you can use the special "packed" functions to operate on RGB, RGBA streams and 3D or 4D vectors. Functions like
21 S:P Maths can operate indifferently with vector or scalar inputs but will return a packed result. Otherwise most functions that takes packed data will output an unpacked vector like 24 Packed Logic or 23 Packed Vector Maths #
You can also pack 4 values using 41 Pack(x,y,z,w).




31 3D Grid

parameters :
A : Contrast % (0. : 100.)
B : Phase (-32. : 32.)
C : Frequency (0. : 64.)
D : Width % (0. : 1.)

discussion :
This function creates a true 3D Grid (constructed of interlocking walls) when the inputs are a 3D space (as opposed to inputs from three independent branches). To get a sense of this as a 3D function, place it after the 3D Room (23) component and manipulate the room's offset z parameter which moves the room's back wall. (The "3-to-1 3D Explorer" example file has been set up to explore the 3-to-1 true 3D functions). This component can also be used as a mixer to mix the output of independent branches with interesting effect. 31 3D Grid has now similar shading algorithms than the
21 Grid and 21 Line and can stay sharp at high resolution renderings. Refer to 21 line for an in-depth discussion

algorithms :


31 3D Techno noise

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
True 3D version of the 2D Techno Noise component.




31 3D Bubble & skins #

parameters :
A : Amplitude (-4. : 4.)
B : Phase & style or Mutation (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
This component now has 18 different textures well-suited for skin-like or organic textures. Some are truly 3D while others are based on 2D noises although they are modulated in z. The "density" series modulates the visual density of the pattern with the 'Phase and style' parameter. Recent additions uses a 'Mutation' parameter to modulate the certain aspects of the pattern. In general they are based on an underlying voronoi network where each cell is randomly jittered.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.

algorithms :


31 3D Spots

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 64.)

discussion :
3D scalar texture reminiscent of a star field. "Density power dots" in
3D Bubble & skins # provides a similar function with an additional control of density.




31 3D DF XYZ shapes #

parameters :
A : Radius (0.02 : 50.)
B : Size X (0. : 32.)
C : Size Y (0. : 32.)
D : Size Z (0. : 32.)

discussion :
3D DF XYZ shapes provides a set of DF primitives that can be stretched in XYZ direction independently. They are great starting point for 3D architectural and design work with Voyager but can also be used in 2D graphics if the distance field is scaled to create a mask. Most of them are self explanatory.

The global radius scales the entire object while 3 other parameters resizes each axis individually mostly by stretching the space. So a sphere with sizes (4,4,4) will look like a rounded box, and a sphere with (1,4,1) will look like a round edged column or a "capsule" like provided in the DF Shapes set B

Algorithms Notes: There are options to have chisel caps instead of hard edges. Pure conics like sphere and ovoid that don't have edges, ignore the option. The options are:


Example: A Convex box in y at Size (2,4,1) with chisel caps.



Example: An Arch cut box at Size (2,3,2) with chisel caps.



algorithms :


31 3D DF shapes A #

parameters :
Algorithm slider : (0 : 31)
B : Radius (0. : 64.)
C : Amplitude (-2. : 2.)

discussion :
DF Shapes A provides basic and advanced DF 3D objects for ArtMatic Voyager. The algorithms can be set with parameter "Algorithm slider " or chosen with a iconic pop up menu. In general, the surface of the volume defined by a distance field is the zero crossing of the field . The value goes to -infinity when moving far away from the object and shall be a good approximation of the distance to the surface. The value is positive inside the object but still indicates the distance to the surface. For MUCH more about DFRM technics and DF objects, see the DFRM guide. Parameter D provides height control for some algorithms and branch thinning for the branch primitives. Ring (torus) uses parameter D to control the ring radius.

algorithms :


31 3D DF shapes B #

parameters :
A : Thickness (0. : 16.)
B : Smoothing (0. : 16.)

discussion :
This component provides useful 3D object primitives that are especially useful for creature design. The rotation parameter options can rotate the whole shape (with the exception of the the first two shape algorithms) and/or limit the shape to one side of the axis. Parameter notes. The parameters vary by algorithm. For most of the algorithms, parameter A controls the thickness/radius, parameter B the smoothing, and parameter C the spread (the object's growth). Parameter D provides period control for the hairy tube algorithms.

Notes: Hairy Tubes - these are cylinders with protruding hairs, spike or bumps. They have an advantage over other techniques that create protrusions because they do not distort space. Methods of creating protrusions via space distortion may destabilize the underlining distance fields which can result in artifacts or overlong render times. The Hairy Tubes are infinite shapes intended to be blended with finite shapes to make the cylinders finite.

Hairy Tubes Parameters: A: Radial Frequency - number of spikes. B: Smoothing - controls the size of the spikes base. At 0, the spikes are uniformly thin. C: Spread % - the spike length. D: Axis Frequency - the distance between the rings of spikes. Together, Spread and Smoothing can be used to change the character of the protrusions allowing you to create spikes, hairs or bumps.

algorithms :


31 3D DF noises #

parameters :
Algorithm slider : (0 : 26)
B : Scale (0.03 : 64.)
C : Amplitude (-16. : 16.)

discussion :
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
21 Logic tools # # or S:P Logic & Profiles #.

Example: Rect 3d grid # - Diamond grid intersecting a cube. Thickness of the grid was reduced by -1.5



Example: Diamond 3d grid # - Diamond grid intersecting a cube.



Example: Spheroid noise #



Example: Jitter spheres #



Example: Random boxes #



Example: Lines network # - Lines network intersecting a sphere.



Example: Random jitter columns # - Random columns intersecting a sphere.



Example: Voronoi network # - Voronoi network sphere.



algorithms :


31 3D DF Patterns #

parameters :
A : Thickness (-1. : 1.)
B : Phase (-16. : 16.)
C : Frequency (0.03 : 32.)
D : Smoothness % (0. : 1.)

discussion :
3D DF Patterns proposes 3D equivalents of procedural 21 DF patterns when possible and a series of patterns useful for design and architecture. "Thickness" parameter will adjust the zero crossing of the volume, thus it's thickness. Most of the patterns are semi random and don't display cycles over large scales.

Example: Random panels & diagonals - modulating a round box.



Example: Chisel maze & floors - intersect with a cube.



Example: Mixed blocks mutate - modulating a round box.



algorithms :

You can build amazingly complex fractal-like shapes by using these DF patterns iteratively. For example, you can subtract various scaled versions of a pattern from a volume. You can also use the 21 Logic tools # partial subtract to cut smaller and smaller portions from a volume.


The Random spheres pattern applied iteratively on a volume using Logic Tools partial subtract

You can also use a straight subtract with 21 Logic tools #, but the volume tends to disappear quickly. However many of the logic tools provide a blend control so you can attenuate the disappearance across iterations as in the example file Voyager 4.O examples/DF Fractales V7 /DF Pattern fractales/DF Pattern Fractal BorgCube.vy where the pattern's intersection is blended at O.25 with the original. Another possibility is to accumulate several octaves of the texture in a compiled tree (CT) using memory min or max and use the modified result as in the example file Voyager 4.O examples/DF Fractales V7 /DF Pattern fractales/ DF Pattern Mystery box.vy



31 3D DF Surfaces #

parameters :
A : Density (0. : 1.)
B : Height (0. : 16.)
C : Frequency (0.03 : 32.)
D : Smoothness % (0. : 1.)

discussion :
Implements procedural DF surfaces that can be used directly as terrains in Voyager. They are fast, converge nicely, and can be merged easily with others terrains and textures. The density parameter controls the density of elements while the height gives a maximum height.

Example: Mushrooms & Mushrooms bowl 31 DF surfaces mix.



algorithms :


31 Turbulence pers

parameters :
A : Perspective (-1.50 : 1.50)
B : Level (-2. : 4.)
C : Phase (-32. : 32.)

discussion :
This component is similar to Random Pers but uses turbulent noise rather than a random noise-type algorithm for generating its texture. This component works well for planet surfaces.




31 Techno pers

parameters :
A : Perspective (-1. : 1.)
B : Amplitude (-2. : 4.)
C : Phase (-32. : 32.)

discussion :
This component is similar to Random Pers and Turbulent Pers but uses the techno texture. See the description of the 2D scalar techno component for more information about the techno texture.




31 Random pers

parameters :
A : Perspective (-1. : 1.)
B : Level (0. : 2.)
C : Phase (-32. : 32.)

discussion :
Provides both a perspective transform controlled by z input and a scalar random texture. If the z-input is fed by an unchanged y coordinate, you will get a horizon-like effect. Parameter "phase" slides the generated texture in x. Parameter 'level' offsets the result scalar value.




31 Fractal Map

parameters :
A : Real (-2. : 2.)
B : Imaginary (-2. : 2.)
C : Z displace (-2. : 2.)

discussion :
Fractal map is a complex number-based recursive fractal where the x and y inputs are treated as the real and imaginary parts of a complex number. The 'Z displace' parameter is used to modulate parameter A in such a way that you can effectively modulate the "granularity" of the fractal with the z-input. The z -input can be used to explore changes in the fractal's degree of chaos. In some ranges, the fractal behaves in an orderly fashion while in others it can appear quite chaotic. This component is sensitive to the Max iterations for fractals parameter.




31 Mandelbrot set

parameters :
A : Scale (-2. : 2.)
B : Z distortion (-2. : 2.)
C : Contrast (0.12 : 16.)

discussion :
This component is the classic Mandelbrot set. You can create interesting variations by feeding the output of a 2D space distortion function into the leftmost inputs of this component. The scale parameter acts as a zoom control. The z distortion parameter warps the resulting image, and the contrast parameter adjusts the color contours of the resulting output. This component is sensitive to the Max iterations for fractals parameter.




31 Julia sets

parameters :
A : Real (-2. : 2.)
B : Imaginary (-2. : 2.)
C : Z displace (-2. : 2.)

discussion :
This component generates a Julia set. For the classic Julia Set (as shown in the component's icon), set parameter C to 0. When parameter C is anything other than 0, the z input is used to modulate the "granularity" of the fractal. The A and B parameters are multipliers applied to the x and y inputs respectively. This component is sensitive to the Max iterations for fractals parameter.

Tip: Due to the limited output range of this component, the logarithm-based shaders often work best.




31 Ferro magnet model

parameters :
A : Real seed (-2. : 2.)
B : Imaginary seed (-2. : 2.)
C : Z displace (-2. : 2.)

discussion :
This is a complex fractal based on the magnetic field equations. The A and B parameters are multipliers for the x and y inputs. The 'Z displace' parameter works similarly to the Fractal Map's and Julia Set's Z displace parameters. This component is sensitive to the Max iterations for fractals parameter.




31 z Fractal lines

parameters :
A : Amplitude (0.25 : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 4.)

discussion :
This is a variation of 2D fractal noise. The z input provides an offset that modulates the noise. As z Basalt Rocks, Z Ridged Fractal Noise & Z Stone Clusters theses complex fractal generators are not truly 3D noises but 2D scalar noises that uses the z input to modulates their maths internally.




31 z Basalt rocks

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
This is a rocky fractal noise whose third input (z) controls the roughness and amplitude/altitude of the output. This component is great for creating igneous, basalt rocks in systems designed for use with ArtMatic Voyager. When used with Voyager-destined systems, the Frequency should be low or very low values (below 0.25). The rock contours are controlled by the third (Z) input. Try inserting various 1D filters on the Z input and see how you can influence this texture's 'geology'.




31 z ridged Fractal noise

parameters :
A : Amplitude (0. : 4.)
B : Phase (-32. : 32.)
C : Frequency (0. : 8.)

discussion :
This component is similar to the 2D Scalar version
21 Ridged Fractal noise with the addition of the Z input modulating both the surface roughness and amplitude.




31 z Stone Clusters

parameters :
A : Amplitude (0. : 16.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
Essentially the same as the 2D Scalar version of this component with the addition of providing control (via the third input) of the stone size and placement. If you connect the third input to a component that generates terrain, the rocks will loosely follow the terrain's contours as shown in the image below. The Z input modulates the number of stones in a periodic fashion while the size of the stones has a linear randomized relationship to the Z value.

Example: The Z input has a steadily increasing value from left to right. Notice that the size of the stones increases steadily while the number of stones changes periodically.



Example: If the Z (third) input is connected to the component that provides the main surface, the stone clusters will follow the terrain contours as shown in the landscape below.






31 3D Random

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
This component generates a 3D random space distortion and is related to the 2D random noise component. Great for granite-like textures.




31 3D Perlin Noise

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
Returns a single scalar 3D Perlin noise function. See also the 2D version at
21 Perlin Noise.




31 3D Multi Perlin noise

parameters :
A : Amplitude (-8. : 8.)
B : Octaves (1. : 64.)
C : Frequency (0. : 32.)
D : Roughness (0.12 : 0.75)

discussion :
Is the 3D equivalent of
21 Multi Perlin noise. It sums a series of 3D Perlin noise functions with the frequency being scaled by 1/Roughness for each octaves in the series. This component allows very fine control of the frequency content and the fractal dimension. It is especially useful when used with very low frequency values to create surfaces or large scale modulations for ArtMatic Voyager. When 'Octaves' is 1 roughness has no effect and the outputs is a single scalar perlin noise function.
'Frequency' abides to the standard frequency options while 'Amplitude' controls the elevation heights.




31 3D Fractal noise

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0.25 : 0.75)

discussion :
3D Fractal noise is the 3D equivalent of
21 Fractal noise; Its fractal dimension is constant and determined by the 'Roughness' parameter.
'Frequency' abides to the standard frequency options while 'Amplitude' controls the elevation heights.


Example: Fractal noise blended with a DF sphere and plane.
Notice how the roughness is uniform compared to Multi fractal noises.




31 3D MultiFractal noise

parameters :
A : Amplitude (0. : 4.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0. : 1.)

discussion :
A 3D fractal noise created by summing 3D Perlin noise functions with varying fractal dimension (roughness). "Multi-Fractal" indicates that the fractal dimension (a measure of the surface roughness) changes randomly over the surface. As you can see below, the apparent roughness is not uniform as it is with the Fractal Noise component. This 3D version of MultiFractal noise can be used as a volumetric texture or displacement map and can also modulate DF 3D objects. It can also be used to animated a 2D terrain when connecting the z input to time (or to an keyframe animated constant).

'Frequency' has the standard
frequency options while 'Amplitude' controls the elevation heights.


Example: MultiFractal noise blended with a DF sphere and plane.




31 3D Cubic MultiFractal

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0.20 : 0.80)

discussion :
A 3D multi-fractal created by filtering the output of Perlin noise functions through a cubic ceiling function. The 3D version can be used as a volumetric texture or displacement map and can also modulate DF 3D objects.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.




31 3D Ridged Fractal

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0.20 : 0.80)

discussion :
This function is the 3D equivalent of
21 Ridged fractal noises #. It is a multi-fractal function composed of ridged 3D Perlin noise (1-abs(n)). This fractal function was designed by Ken Musgrave and is a good approximation of ridged mountains. The fractal dimension is smoothest in the valleys. This function only generates values greater than 0. The 3D version can be used as a volumetric texture or displacement map and can also modulate DF 3D objects. It can also be used for animated 2D terrain when connecting the z input to time (or to an keyframe animated constant).
'Frequency' has the standard frequency options while 'Amplitude' controls the elevation heights.


Example: Ridged Fractal noise blended with a DF sphere and plane.




31 3D Fractal noises #

parameters :
A : Amplitude (0. : 8.)
B : Mutate % (0. : 1.)
C : Frequency (0. : 32.)
D : Roughness (0.12 : 0.75)

discussion :
Offers several flavors of fractal based 3D noises. This component, as are all the fractal based components, is sensitive to the Maximum Iterations for and provides band limited functions.
Adaptive, Band-Limited Noise Functions

algorithms :


31 3D Terrains #

parameters :
A : Amplitude (0. : 4.)
B : Style % (0. : 1.)
C : Frequency (0. : 32.)

discussion :
3D Terrains # is especially useful for ArtMatic Voyager terrain design as it outputs complex & realistic terrains topography in just one tile. While outputting a terrain on a xy coordinates the various algorithms uses z internally to modify the result as they use real 3D fractals noise internally. Changes in z provides an easy way to animate the generated surfaces. They can be used as a filter or added to various surfaces to simulate erosion patterns by using it in an ArtMatic file that is used for blending using Combination mode.

algorithms :


31 3D Textures #

parameters :
A : Amplitude (-4. : 4.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
Formerly called 3D Fractal Strings, this component now provides 18 different Perlin-based 3D or semi-3D elevation textures suited for a wide range of uses. These are useful for both 3D and 2D graphics and to design sophisticated textures for plants and animals.

algorithms :


31 3D Lunar rocks

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0.30 : 0.75)

discussion :
Multi-fractal noise with added sparse bumps clusters reminiscent of lunar soil. The texture has varying degrees of roughness.




31 3D Bubble rocks

parameters :
A : Amplitude (-2. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Roughness (0.25 : 0.75)

discussion :
Multi-fractal noise with round bump clusters. Fine details tend to appear at the lower elevations of this texture's larger scale elements - whose higher elevations tend to be smooth.




31 3D Stratified noise

parameters :
A : Amplitude (0. : 4.)
B : Distortion (-8. : 8.)
C : Frequency (0. : 8.)

discussion :
A simple approximation of perturbed geological layers (a texture used widely in Bryce). The distortion parameter controls the texture's vertical displacement. Example file: "Solid Strata Time Room" shows how the 3D stratified noise intersects a Room. Note how the y and z coordinates are modulated by time to create a constantly moving texture.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.




31 3D Crystal noise

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
3D version of the 2D Crystal Noise component. This is a structured fractal-based noise based on random noise subjected to triangular lattice linear interpolation. Crystal noise features sharp ridges and is often used along with a 22 fractal displacement. This function only generates values greater than 0.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.




31 3D Fractal Stucco

parameters :
A : Amplitude (0. : 2.)
B : Phase (-32. : 32.)
C : Frequency (0. : 16.)
D : Roughness (0.25 : 0.75)

discussion :
A variation of the fractal noise algorithm that generates a stucco-like texture. See also the Shining Stucco Gelatin example file. Note that the Power function provides a metallic effect.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.




31 3D Fractal Puffy Clouds

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 8.)
D : Roughness (0.30 : 0.70)

discussion :
A 3D multi fractal noise with phase feedback, capturing the twirling turbulence of clouds. It is a great primitive to design volumetric clouds but can also be used for terrains and textures creation.
'Frequency' has the standard
frequency options. 'Amplitude' controls the field intensity.




31 3D Altocumulus Clouds

parameters :
A : Amplitude (0. : 4.)
B : Banding % (0. : 1.)
C : Frequency (0. : 8.)

discussion :
3D texture shader designed for creating cloud layers for ArtMatic Voyager where they yield mid-level layered altocumulus clouds. This component is great for creating mackerel skies with rhythmic banding. Banding controls the amount of banding. When it is 0, the cloud distribution is strictly random.
'Frequency' abides to the standard
frequency options while 'Amplitude' controls the elevation heights.




31 3D Ocean

parameters :
A : Wave amp (0. : 8.)
B : Wavelet amp (0. : 2.)
C : Frequency (0. : 8.)

discussion :
Outputs a complex animated wave texture for alternate sea surfaces. It output the waves elevation without the foam channel provided by the 32 Ocean and Foam Tile.




31 3D Fractal lines

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
3D fractal-based texture made of randomly intersecting curving veins. Great for marble and other veined textures. This is a structured fractal-based noise and is sensitive to the Max. Iterations for Fractals preference. Increasing the iterations increases the detail. When used in ArtMatic Voyager terrains, the effect is of a network of faults/cracks.




31 3D Random lines

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)
D : Smoothness (0. : 1.)

discussion :
Similar to fractal lines but composed of randomly intersecting straight lines. Great for fibrous and geological textures. With some distortion it can creates convincing rock faults patterns. This component was reimplemented in ArtMatic Engine 8.0 to have a smoothing parameter to allow the function a wider range of uses. It is sensitive to the maximum Iterations for Fractals preference. As it is a true 3D noise sliding in z offer some cool animation possibilities even for 2D graphics.

Example : Libraries/Components demo/3D Smooth RandomLines






31 3D Cellular

parameters :
A : Amplitude (0. : 8.)
B : Phase (-32. : 32.)
C : Frequency (0. : 32.)

discussion :
A 3D scalar implementation of the voronoi random noise. It has been made smoother on the edges in ArtMatic Engine 8.0. See other Voronoi-based variations in
3D Bubble & skins # . See also XYza Voronoi tiles.


A bedrock terrain based on 3D Cellular used iteratively.




31 3D Fractal Bubbles

parameters :
A : Amplitude (-4. : 4.)
B : Roughness (0. : 1.)
C : Frequency (0. : 32.)

discussion :
A multiple octaves version of the Bubble 3D noise used in
3D Bubble & skins # based on Voronoi diagrams.
'Frequency' has the standard frequency options. 'Amplitude' controls the elevation heights.

Example: Multiple bubbles applied negatively on a sphere.




31 Compiled Tree :

parameters :
A : Scale 0:1
B : Iterations

discussion :
Compiled Trees are groups of tiles that can be used in place of single tiles as a kind of macro or subroutine.
31 compiled tree is usually used to create 3D scalar function (DF or not). A 31 CT can also hold a mix of colored 3D objects or terrains when the output is a packed RGBA stream.
Select a 31 tile and use "New compiled tree" to create a new CT from the selection (Tree Edit menu or type 'n' key).
To save a CT on disk to use the function elsewhere use "Save compiled tree" from the Tree Edit menu.
You may also copy and paste the entire CT by using Copy Tile and Paste Tile from the Edit menu.