//----------------------------//
ArtMatic 2 in 3 out components
//----------------------------//


Introduction
3D z set
3D Axonometric
Inverse projections #
3D plane
3D sphere
3D ellipsoid
3D tube
3D cube
3D box
3D room
3D parametric face
3D parametric cube
3D parametric room
Perlin noise + derivative
Looper
Shaded plain color #
RGB color shade
RGB main gradient
Shaded main gradient #
Bezier main gradient
Indexed gradient
Y indexed gradient
RGB color gradient
RGB linear hues
RGB radial hues
RGB concentric hues
Max to gradient
RGB Pict/Movie
RGB Pict/Movie mirror
Pict/Movie Overlay
RGB Multi Perlin random
RGB Random Fractal
RGB MultiFractal
Lunar rocks
Color Bubbles
String noise
Techno boxes
Color Pyramids
RGB grass
RGB foliage
RGB soft random hues
Packed XYA logic #
Packed Vector Maths #
Packed RGB Crossfade
Packed RGB Add
Packed RGB Max
Packed RGB Min
Packed Depth sort
23 Compiled tree


Introduction

These components perform a variety of functions depending on how they are used in the structure tree. Many of these components are RGB 2D color textures that maps a point into a color. Some of them are mixers. Some of these components translate 2D to 3D space or create 3D objects (spheres, cubes, rooms and the like)

NOTE: ArtMatic's internal RGB color space goes from (0,0,0) (black) to (8,8,8) (white). Qll color calculations are in floating point.

An essential in-depth discussion of function categories is found in the Getting Deeper chapter and is recommended reading for everyone.


23 3D z set

parameters :
A : Z value (-16. : 16.)

discussion :
Use this component to create a third coordinate (whose value is determined by parameter A) that can be passed on to 3D functions or used as a controller value. The incoming x and y values are passed unchanged through the leftmost outputs. Parameter A's value is sent out the rightmost outlet. Animating this parameter is a great way to control solid textures such as 3D noise functions. Use this function at the top of the system if you want to use 33 components near the top of the tree but do not want to use the system's third global input (time) which is incremented with every frame.




23 3D Axonometric

parameters :
A : Scale X (0. : 2.)
B : Scale Y (0. : 2.)

discussion :
Use this component to create a third coordinate whose value is related to the incoming x,y values. Unlike 3D zset the third output (the z value) is not a constant value but calculated from the x and y values. The scale parameters are multiplied by the x and y inputs before passing them out. The outputs are calculated using the following formulas:




23 Inverse projections #

parameters :
A : Radius (0.50 : 8.)

discussion :
Provides inverse mappings from 2D to 3D spaces. Inverse Sphere 360 is useful to create 3D coordinates for 360 degree environments maps or to create seamless 2D textures that can be projected on a sphere.



algorithms :


23 3D plane

parameters :
A : Banking X (-1.57 : 1.57)
B : Plane Offset (-16. : 16.)
C : Z slope (-3.14 : 3.14)

discussion :
Create a 3D plane on the canvas which can be banked and tilted and returns the 3D XYZ coordinates on the plane. Like all 3D object components, the area outside the object is mapped to infinity (which is painted with the depth cueing color). The components which follow the "plane" component provide the surface's texture. "Banking x" controls the horizontal tilt, "Plane offset" provides an altitude offset, and "z Slope" controls the forward/back tilt.

With all pseudo 3D graphic primitives (2D inputs) the projection into 2D space is done within ArtMatic and theses objects cannot be used as real 3D primitives in Voyager as they are already rendered into 2D canvas when Voyager uses them. They are useful for fast 3D effects within a 2D graphic context. The projection used to render the object in the ArtMatic canvas is a simple implicit perspective projection that can be manipulated with the 22 Scale and offset tile and the 33 translation tile. When 2D coordinates are needed there is a parametric version of the plane (face), the cube and the room. Example: Libraries/Graphic Design/pface and plane.artm




23 3D sphere

parameters :
A : Offset x (-16. : 16.)
B : Offset y (-16. : 16.)
C : Offset z (-32. : 32.)

discussion :
Renders a pseudo 3D sphere into ArtMatic canvas and returns the 3D XYZ coordinates of the sphere surface. The 'sphere' can be moved along the x, y and/or z axes. Regions outside the sphere are assigned infinity which makes them transparent for most ArtMatic functions. The 'Offset z' parameter controls the sphere offset along the z axis and can be used to scale the object.
See 3D plane above for more details on pseudo 3D objects.




23 3D ellipsoid

parameters :
A : Radius (0.12 : 24.)
B : Vertical skew (0. : 8.)
C : Offset z (-32. : 32.)

discussion :
Renders a 3D ellipse on the canvas. Outputs are the XYZ coordinates on the surface of the ellipsoid.
See
3D plane for more details on pseudo 3D objects.




23 3D tube

parameters :
A : Offset x (-16. : 16.)
B : Offset y (-16. : 16.)
C : Radius (0.12 : 24.)

discussion :
Renders a 3D tube whose radius and position can be modified. By default (Offset 0,0) the virtual camera is inside the tube. Cool tunnel effects can be done when animating the z coordinate.
See
3D plane for more details on pseudo 3D objects.

Example: Libraries/Animated Graphics/Techno Tunnel.artm




23 3D cube

parameters :
A : Angle xy (-6.28 : 6.28)
B : Angle zx (-6.28 : 6.28)
C : Offset z (-32. : 32.)

discussion :
Renders a cube which can be rotated in space. Outputs are the 3D XYZ coordinates on the cube faces. Use the parametric version when 2D coordinates are needed. The 'Offset z' parameter controls the cube offset along the view axis and may be used to scale the object.
See
3D plane for more details on pseudo 3D objects.




23 3D box

parameters :
A : Size y (0.25 : 12.57)
B : Size zx (0.25 : 12.57)
C : Offset z (-32. : 32.)

discussion :
Renders a box and outputs the 3D XYZ coordinates of the box faces. The size y parameter controls the size of the box top. The size zx parameter controls the box length. The 'Offset z' parameter controls the box offset along the z axis and can be used to scale the object.
See
3D plane for more details on pseudo 3D objects.




23 3D room

parameters :
A : Offset z (-16. : 16.)
B : Angle oY (xz) (-6.28 : 6.28)
C : Room size (0. : 16.)

discussion :
Renders a pseudo 3D room into ArtMatic canvas and outputs the 3D XYZ coordinates of the 'room'. The z offset controls the distance to the back of the room. The angle zx controls the angle with which the rear walls are joined. The room size controls the size of the virtual room. The room has a finite size. At the maximum offset, you can see the room from the outside.
See
3D plane for more details on pseudo 3D objects.




23 3D parametric face

parameters :
A : Angle oY (xz) (-π2: π2)
B : Angle oX (yz) (-π2: π2)
C : Offset z (-32. : 32.)
D : Height (-3 : 3)

discussion :
Render a single 3D face and returns its parametric 2D coordinates in (x,y) (parametric coordinates are attached to a face and will moves with the object). The z output will contain the 3D z coordinate. Use this object to perform 3D rotation of your movies and pictures. Regions outside the face are assigned infinity and should be transparent under most Artmatic functions. In RGB mode infinities values are shaded with the depth cue color. The 'Offset z' parameter controls the face offset along the view axis and can be used to scale the object. Unlike the
3D plane which is infinite in size the face has boundaries that are by defaut at +/- π. 'Height' can be set to non zero for other aspect ratios than square.
See 3D plane for more details on pseudo 3D objects.

Example: Libraries/Graphic Design/HumanDots Face.artm




23 3D parametric cube

parameters :
A : Angle oY (xz) (-π2: π2)
B : Angle oX (yz) (-π2: π2)
C : Offset z (-32. : 32.)
D : Height (-3. : 3.)

discussion :
Returns the parametric 2D coordinates in (x,y) of a pseudo 3D box. The z output will contain the 3D z coordinate. 'Angle oY' rotates the box around Y axis and 'Angle oX' rotates the box around X axis. 'Height' sets the aspect ratio of the box and you'll get a cube when at zero. Regions outside the box are assigned infinity. The 'Offset z' parameter controls the offset along the view axis and can be used to scale the object. In ArtMatic 8 engine the faces are properly reoriented.
See
3D plane for more details on pseudo 3D objects.

Example: Libraries/Graphic Design/pcube package.artm



23 3D parametric room

parameters :
A : Angle oX (yz) (-π2: π2)
B : Angle oY (xz) (-π2: π2)
C : Room size (0. : 16.)

discussion :
Returns the parametric 2D coordinates of a large room. The z output will contain the 3D z coordinate. Unlike the non-parametric version, this room has infinite walls. So, you can't leave the room.
See
3D plane for more details on pseudo 3D objects.



23 Perlin noise + derivative

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

discussion :
This component sends out Perlin noise from the left output with the true partial derivative (fdx, fdy) sent out the middle and right outputs respectively.
The derivative can be used for improved distance estimation to the function's zero crossing. A good distance estimation provides the correct contour rendering and a better convergence for DFRM objects. To improve the distance estimation use F(v)/(length(0.1,dx,dy)) where length is the euclidian distance and dx,dy are the partial derivatives sent by this component in out 2 and 3.
Example : Libraries/Components demo/Perlin+dv DF contours.artm
Note that this improve the DF field mostly near the zeros. A true solution is mathematically much more complicated and not analytically possible with procedural functions like Perlin noise.

See also the 1D version at
Perlin noise + derivative




23 Looper

parameters :
A : Iterations (0 : 500)
B : Count Multiplier (0. : 4.)

discussion :
Unlike the
Iterations component, the Looper component loops the component(s) connected to its inputs. 'Looper' will evalutate the transform (or transforms) that feed it recursively. After the first time through the loop, the component that directly feeds the looper receives the output from the previous iteration. This process is carried out for each successive iteration until the 'Iterations' count is achieved. When the option "Include Untransformed" is active iteration 0 returns the untransformed space. In mathematical terms if F(v) is the vector transform the 23 looper will compute F(F ...(F(F(v)))) 'Iterations' times.
Output 3 returns the iteration number multiplied by 'Count Multiplier.
In general you will use a 22 Compiled Tree to hold a more complex transform (Compiled trees made up of a few simple space transforms can result in staggeringly complex patterns) but complete Affine transforms like the one provided by 22 Maths tools # can be used directly as well.
As with iterative looped tree a memory component like 11 Memory Logic# or 11 Memory Add is usually needed to accumulate all iterations results. For Fractal transforms you may also use the 21 Orbit Analyzer # tool for various fractal rendering strategies.




23 Shaded plain color #

parameters :
A : Red (0. : 1.)
B : Green (0. : 1.)
C : Blue (0. : 1.)
D : Contrast % (0. : 500.)

discussion :
Generate an RGB color defined by the Red, Green and Blue parameters and shaded by input y. When the algorithm is set to one of the Dual modes the left-input value (x) determines whether the output value is the target color (when x is positive) or its complement (when x is negative).

The right-input value (y) determines the brightness of the output color. Large values of y generate a shade of the color that approaches white. The "Contrast" parameter controls how much shading is applied to the resulting color.

The algorithms are the same as with the
13 Shaded plain color except the brightness shading is using the Y input as well.


algorithms :


23 RGB color shade

parameters :
A : Hue Rotate (0. : 6.28)
B : Saturation (0. : 1.)
C : Luminance Pan x<->y (0. : 1.)

discussion :
Returns a shaded color defined by "Hue Rotate", "Saturation" and "luminance". A mix of x and y inputs modulate the brightness of the result. Use this component to create subtle shadings of a single hue, such as when creating clouds, mist, or earth textures. This component can take input from either a space or two individual inputs.




23 RGB main gradient

parameters :
A : Scale x (0. : 8.)
B : Scale y (0. : 8.)
C : Gradient Offset (-4. : 4.)

discussion :
Create shaded RGB-color output using the colors of the current ArtMatic gradient. Input x sets the position in the gradient while y shades the resulting color.

Simple 3D shading and lighting effects can be easily created with this shader, especially when the second input is fed by the Derivative or 2D Derivative component.

"Scale x" & "Gradient Offset" determines the gradient mapping from input x to the gradient position. "Scale y" controls the amount of shading applied to the resulting color by scaling the incoming input y values.

Just as with the 21 Ax + By + C, you can use either a 2D space (a component with two outputs) as an input or two independent surfaces.


algorithms :


23 Shaded main gradient #

parameters :
A : Gradient Scale X (0. : 8.)
B : Shading amount % (0. : 1.)
C : Gradient Offset (-2. : 2.)

discussion :
Create shaded RGB-color output using the colors of the current ArtMatic gradient. The various algorithms gives a greater flexibility on how inputs are affecting the shading of the RGB main gradient. "Gradient Scale X" & "Gradient Offset" determines the gradient mapping from input x to the gradient position."Shading amount " sets how much shading has applied.

If even greater control on the shading is needed you may just use a 13 Main Gradient to generate the color and sets the shading maths yourself prior to multiply it with the color using the 43 w scale or w multiply. Furthermore the 13 version has more option on how the input is mapped to the gradient.


algorithms :


23 Bezier main gradient

parameters :
A : Input range (0.25 : 64.)
B : Offset (-16. : 16.)
C : Output range (0.25 : 64.)

discussion :
This component is similar to the RGB Main Gradient component but it uses bezier curves rather than straight linear interpolation to map input values to the gradient colors. By using bezier curves to interpolate from the gradient to RGB values, the output values are ArtMatic Voyager friendly since each output curve has a continuous derivative.

As a consequence of the bezier interpolation RGB main gradient can be used to implement 3 parallel filters for surface sculpting. Essentially, this component separates the Red, Green and Blue content of the gradient and outputs them as three independent curves that can be used as different terrains filters that would be blended afterwards to create a rich a various topography.

Note: 13 Indexed Gradient and 13 Main Gradient also uses bezier interpolation. The Output range should be left at 1 for color shaders and the Input range can be used to control the input mapping to gradient. Example: individual RGB curves of the bezier gradient.


algorithms :


23 Indexed gradient

parameters :
A : Gradient Scale X (0. : 2.)
B : Luminance Scale Y (0. : 1.)
C : Gradient Index (0 : 48)

discussion :
This component allows a gradient other than the ‘active' gradient to be used. The behavior is the same as Shaded Main Gradient BUT parameter C (Gradient Index) selects the gradient to use from the gradients available in the Gradient popup. A Gradient Index of 0 selects the first gradient in the popup and the maximum index selects the last gradient in the library.

Warning: When exporting systems for use in ArtMatic Voyager, this component may return different colors unless you make sure that the other application uses the same gradient library. Use the Gradient Editor to open or export gradient libraries.




23 Y indexed gradient

parameters :
A : Scale (0. : 2.)
B : Gradient index mod % (0 : 1)

discussion :
This component is a color shader that maps the x-input to a color of the gradient selected by the y-input. This component is similar to RGB Main Gradient except that the y-input selects the gradient to be used.

Example: Gradient index mod.



The Y-Indexed Gradient component allows a different gradient to be used by each iteration of a looped system when the iteration number is connected to the y-input of Y-Indexed Gradient.

"Scale" is a scaling factor applied to the x-input value. Setting the parameter high makes the component very sensitive to value changes. The y-value picks the gradient from which the color is picked. The current gradient (the one visible above the canvas) is gradient 0. The second gradient in the palette is gradient 1.

"Gradient Index Mod %" determines the mapping of y-input to gradient number. When it is at 1, integer y-values (0, 1, 2, etc.) pick the color from the corresponding gradient in the library.




23 RGB color gradient

parameters :
A : Angle red (-3.14 : 3.14)
B : Angle green (-3.14 : 3.14)
C : Angle blue (-3.14 : 3.14)

discussion :
Returns a procedural RGB color defined by the sum of a red, a green & a blue ramp, each rotated by the corresponding angle parameters. When the angle are the same it will return grey shades.

The brightness intensifies as XY gets far from zero. The angle are defined in radians but you can type 90 then "d" to convert to degree. A wide variety of vibrant color and lighting effects can be achieved with this simple component.

The color shades obtained by setting the angles to 90 degrees 0 and -90 degrees




23 RGB linear hues

parameters :
A : Hue Rotation (-1. : 1.)
B : Saturation (0. : 1.)
C : Frequency (0. : 4.)

discussion :
Returns a procedural RGB color where X input modulates the hue given by "Hue Rotation" . On the Y input axis when Y is negative then the inverse hue is used. It blends the Y+ and Y- colors around the Y=0 axis.




23 RGB radial hues

parameters :
A : Hue Rotation (-1. : 1.)
B : Saturation (0. : 1.)

discussion :
Returns a procedural RGB color by mapping X&Y to a classic color wheel (shown in the component's icon). The two inputs are treated as an x/y coordinate pair. The angular position of the input point (the value pair) determines the hue. Parameter A rotates the color wheel and thus changes the color which corresponds to a particular angle. The Saturation parameter determines the luminance (brightness) of the colors. This component is frequently used to create vibrantly colored surfaces. When this component is used as the color shader, it is as if the original undistorted space (the flat plane) is a sheet of paper with the color wheel printed on it, and the system's space distortions and remapping are really distortions and remapping of the sheet of paper with the color wheel on it. The more chaotic the distortions, the less like a color wheel the image will appear.



Example: RGB radial hues is a great color shader to use with fractal space transform as it will color the fractal according to the direction of the escape orbit.




23 RGB concentric hues

parameters :
A : Hue Rotation (-1. : 1.)
B : Saturation (0. : 1.)
C : Frequency (0. : 2.)

discussion :
Returns a procedural RGB color defined as a range of hues that vary with the distance from the origin. The luminosity decreases in inverse proportion to the point's distance from the origin (0,0). Parameter A defines the "base hue" used for shading, and Parameter B controls the color saturation. Parameter C determines the spacing of the hue variations. Luminosity becomes lower as the distance from zero increases (and then starts increasing again).




23 Max to gradient

parameters :
A : Amplitude X (0. : 2.)
B : Amplitude Y (0. : 2.)

discussion :
This component uses two incoming surfaces to build a color map using their comparaison. Colors are taken from the current
main gradient
The Amplitudes X and Y parameters scales the lower and upper part of the resulting gradient.
ArtMatic Voyager tip: This component is often used in ArtMatic Voyager systems to create colors for a surface based on the maximum values of the two input functions -- similar to the role served by the "21 Min-Max" component. With it, each "winner" will have its own color.




23 RGB Pict/Movie

parameters :
A : Size (0. : 4.)
B : Contrast (0. : 2.)
C : Tiling (0. : 1.)

discussion :
This is the true color version of the Pict/Movie component.




23 RGB Pict/Movie mirror

parameters :
A : Size (0. : 4.)
B : Contrast (0. : 2.)

discussion :
This variant of the color pict/movie component creates mirrored tiles of the picture when the picture is zoomed out.




23 Pict/Movie Overlay

parameters :
A : Size (0. : 4.)
B : Tile X (0. : 1.)
C : Tile Y (0. : 1.)

discussion :
A variation of the basic pict/movie component that provides independent control of horizontal and vertical tiling. Infinity is generated beyond the picture boundaries. This makes it simple to overlay the output and control the background color (the depth-cueing color).




23 RGB Multi Perlin random

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

discussion :
Sums three 2D Perlin noise functions for each RGB channel with doubled frequencies for each added octave (parameter B). The Perlin noise function which is normally balanced (outputs both negative and positive values) is scaled and offset so that only positive values are generated. When the Amplitude is zero, this component produces a uniform 50% (neutral) gray. Negative amplitude values invert the colors so that color-complements are generated. Amplitude can be seen as a saturation or color contrast control.


algorithms :


23 RGB Random Fractal

parameters :
A : Color Saturation (0. : 2.)
B : Phase (-16. : 16.)
C : Frequency (0. : 2.)
D : Roughness (0.30 : 0.90)

discussion :
Randomly-generated 2D color texture which is sensitive to the setting of the Max. Iterations for Fractals preference. The amplitude controls the saturation. A great texture for vibrant color textures.

Roughness added in version 6.0.




23 RGB MultiFractal

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

discussion :
This component is a 2D Multi-Fractal RGB noise component. This can be viewed as 3 independent Multi-Fractal functions for each of the RGB channels. The output values are scaled and offset so that only positive values are generated. When the amplitude is zero, the output is a uniform 50% gray. The Amplitude can be seen as a saturation or color contrast control.




23 Lunar rocks

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

discussion :
Lunar Rocks is a composite 2D color texture providing a color texture reminiscent of random rocky material. The underlying algorithm is similar to the 21 Lunar Rocks component. This primitive is useful for creating natural-looking mineral shading - especially when used in ArtMatic Voyager.




23 Color Bubbles

parameters :
A : Saturation (0. : 1.)
B : Shade (0. : 1.)
C : Frequency (0. : 8.)

discussion :
Color the 2D space with randomly-sized and colored bubbles/facets using a voronoi tiling algorithm.




23 String noise

parameters :
A : Thickness (0. : 2.)
B : Hues (0. : 1.)
C : Frequency (0.06 : 8.)

discussion :
Color the 2D space with random colored "strings".




23 Techno boxes

parameters :
A : Amplitude (0. : 8.)
B : Skew (0. : 2.)
C : Frequency (0. : 4.)

discussion :
Techno boxes is a decorative RGB shader that generally used to provide surface texture.




23 Color Pyramids

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

discussion :
Color the space with randomly-sized and colored pyramids.




23 RGB grass

parameters :
A : Amplitude (0. : 1.)
B : Skew angle (-3.14 : 3.14)
C : Frequency (1. : 32.)

discussion :
RGB Grass is a 2D color texture which evokes - in an impressionistic way - grass seen from afar. This primitive was added primarily for use in ArtMatic Voyager where it is slope dependent (grass tends to appear where the terrain is flat). Within ArtMatic Pro, the "slope values" are derived from the global X input values (since they would be otherwise undefined).

Example: RGB grass as seen in ArtMatic Voyager.




23 RGB foliage

parameters :
A : Contrast (0. : 4.)
B : Hues Offset (0. : 1.)
C : Frequency (0. : 32.)

discussion :
RGB foliage is a 2D color texture that impressionistically evokes foliage as seen from afar. The hues offset parameter slides from summer green shades to autumn red shades.

Example: RGB foliage used to texture an ArtMatic Voyager scene.




23 RGB soft random hues

parameters :
A : Hue Rotation (-1. : 1.)
B : Saturation (0. : 1.)
C : Frequency (0. : 8.)

discussion :
Color the incoming space with random modulations of a narrow range of hues. Naturalistic effects are achieved with a low value for the saturation parameter. At the minimum saturation, only a single hue is left. 'Hue rotation' determines the base color for the variations. "Saturation" determines the average brightness of the resulting colors. 'Frequency' determines the distortion density.


Packed Mixers Family



The group of components whose names include "packed" is used for mixing packed streams - usually from RGB components or branches. When "infinity" is encountered in one of the inputs, it is treated as transparent by these mixing functions. These functions can accept both packed and unpacked inputs.


23 Packed XYA logic #

parameters :
A : Smoothness % (0. : 16.)

discussion :
Useful in 2D geometry applications, this components return a point (x,y,z) based on the z comparison. Pass 2 packed 3D vectors (x,y,z) and (x2,y2,z2).
The returned point may be either of the input depending on the chosen algorithm. 'Smoothness' parameter will blend the transitions between 2D spaces if non zero. 23 Packed XYA logic can be used to create 2D IFS fractals and 2D graphics by splitting the space according to z values.
A 3 input version exist at
33 Packed XYA logic #


algorithms :


23 Packed Vector Maths #

parameters :
A : Amplitude x*y (0. : 2.)
B : Offset y (0. : 2.)
C : Blend % (0. : 1.)

discussion :
Old Packed RGB multiply has become a set with the following function suited for both 3D vector and RGB calculation. Note: Infinity values in Y are treated as transparent. Theses functions are also available in packed output form in
21 S:P Maths



algorithms :


23 Packed RGB Crossfade

parameters :
A : Interpolate (0. : 1.)

discussion :
Mix two RGB color streams into a single image. When the parameter slider is all the way to the left, only the left input's image is visible (with one caveat noted below). When the slider is to the right, only the right input's image is visible (with one caveat). When the parameter is between the maximum and minimum values, a mix of the two images is created.

There is a situation in which portions of both images are visible even though the Interpolate parameter is at its extremes. If either input stream has a 3D object, then any points that have the value infinity (which means that they are outside the object's boundaries) will be transparent regardless of Interpolate's value. This allows you to have opaque 3D objects which appear against a background created by another RGB color stream.

Usage note: The inputs should come from Pack components that are connected to components whose outputs are RGB colors. This component is used by the RGB 2 Channels system found in the structures menu.

Packed RGB crossfade is equivalent to
21 S:P Maths "Blend" algorithm when its passed 2 RGB packed stream.




23 Packed RGB Add

parameters :
A : Amplitude A (-2. : 2.)
B : Amplitude B (-2. : 2.)

discussion :
Mix two images (RGB color streams) by adding the values of the merged streams' pixels. The two parameters control the relative contribution of the two images to the final mix. Packed RGB add is equivalent to
21 S:P Maths "Add" algorithm when its passed 2 RGB packed stream. It can also be used to add two 3D vectors (x,y,z).




23 Packed RGB Max

parameters :
A : Amplitude A (0. : 2.)
B : Amplitude B (0. : 2.)
C : Feather % (0. : 1.)

discussion :
Returns the maximum RGB value for each of the packed inputs. It needs to be fed by packed inputs. The 'Smoothness' parameter will smooth discontinuities if non zero.




23 Packed RGB Min

parameters :
A : Amplitude A (0. : 2.)
B : Amplitude B (0. : 2.)
C : Feather % (0. : 1.)

discussion :
Returns the minimum RGB value for each of the packed inputs. The 'Smoothness' parameter will smooth discontinuities if non zero.




23 Packed Depth sort

parameters :
No parameters.

discussion :
This component mixes two 3D objects into a single set of 3D outputs. It is meant to be used with 3D coordinates and not with RGB colors.

Note: This component should always receive its input from Pack components (that receive their input from 3D object components). The algorithm is such that for each set of points received, the set with the lowest value of z wins; in other words, the coordinates closest to the viewer win.




23 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. 23 CTs are usually used to hold color 2D texturing function but can also be used to output 3 streams of packed datas.
Select a 23 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.
You may iterate the tree by "Iterations" number when the tree contains an
Iterations tile to modify and accumulates various values. "Scale" provide an optionnal scaling of outputs and is set at 1 by default (no scaling).