Difference between revisions of "Add Multiplied Scalar"

From Terragen Documentation from Planetside Software
Jump to: navigation, search
(Changed wording of conversion based on luminance.)
m (Added additional description and example images to Overview section, to illustrate the math behind the Add Multiply family of nodes.)
 
Line 21: Line 21:
 
For vector data, the node converts the data to scalar based on the length of the vector from the zero origin. The math for this is: square_root(x*x + y*y + z*z).
 
For vector data, the node converts the data to scalar based on the length of the vector from the zero origin. The math for this is: square_root(x*x + y*y + z*z).
 
</ul>
 
</ul>
 +
 +
 +
In the image below, you can see the mathematical effect of the Add Mulitplied family of nodes on a given value from the Main Input.  When the value assigned to Input 2 is:
 +
* -2.0, the value of the node’s output is the inverse of the Main Input values. <br /n>
 +
* -1.0, the value of the node’s output is zero. <br /n>
 +
* 0.0, the value of the nodes output is the same as the Main Input values. <br /n>
 +
* 1.0, the value of the node’s output is double that of the Main Input values. <br /n>
 +
<ul>
 +
[[File:AddMultipliedFamily_01_CurveComparision.jpg|none|800px|A comparison of Add Multiplied family of node’s output to that of the Main Input, as the value from Input 2 is changed.]]
 +
</ul>
 +
 +
 +
The Add Multiplied family of nodes can be applied to terrain, clouds, and textures, etc.  Here, the same values as above are applied to the displacement of a surface..
 +
<ul>
 +
[[File:AddMultipliedFamily_02_DisplacedSurfaceComparision.jpg|none|800px|A comparison of the effect on surface displacement from the Add Multiplied family of node’s output, as the value from Input 2 is changed.]]
 +
</ul>
 +
 +
 +
The following image illustrates how the Add Multiplied family of nodes might be used to manipulate the Density fractal assigned to a cloud layer’s Density shader input.
 +
<ul>
 +
[[File:AddMultipliedFamily_03_Cloudsv3_Density.jpg|none|800px|A comparison of the effect from the Add Multiplied family of nodes on a cloud layer’s Density setting, as the value from Input 2 is changed.]]
 +
</ul>
 +
 +
 +
In this example, the Add Multiplied Colour node was used to modify the colour values applied to a surface. Visually speaking, colour values below 0 show up as black, and values above 1 will be white; however if you examine the RGB values listed in the small pixel indicator in the bottom right of each section, which sampled a pixel value of (0.5,0.5,0.5) you’ll see that the output value is precisely that of the above examples.
 +
<ul>
 +
[[File:AddMultipliedFamily_04_AddColour_Textures.jpg|none|800px|A comparison of the effect from an Add Multiplied Colour node on a surface texture.  The small pixel indicator in the bottom right corner of each section indicates the precise pixel value of a sampled pixel of 0.5, 0,5,0.5.
 +
]]
 +
</ul>
 +
  
  

Latest revision as of 00:46, 2 February 2022

Add Multiplied Colour



Overview[edit]

The Add Multiplied family of nodes will multiply the Main Input with Input 2 and add that result with the Main Input.


Mathematically it looks like this:

    (Main Input * Input 2) + Main Input


When the incoming data is not scalar data, the node first converts the data to scalar as follows:

    For colour data, the node converts the data to scalar based on the luminance of the colour. The math for this is: 0.2125 * r + 0.7152 *g + 0.0724 * b.
    For vector data, the node converts the data to scalar based on the length of the vector from the zero origin. The math for this is: square_root(x*x + y*y + z*z).


In the image below, you can see the mathematical effect of the Add Mulitplied family of nodes on a given value from the Main Input. When the value assigned to Input 2 is:

  • -2.0, the value of the node’s output is the inverse of the Main Input values.
  • -1.0, the value of the node’s output is zero.
  • 0.0, the value of the nodes output is the same as the Main Input values.
  • 1.0, the value of the node’s output is double that of the Main Input values.
    A comparison of Add Multiplied family of node’s output to that of the Main Input, as the value from Input 2 is changed.


The Add Multiplied family of nodes can be applied to terrain, clouds, and textures, etc. Here, the same values as above are applied to the displacement of a surface..

    A comparison of the effect on surface displacement from the Add Multiplied family of node’s output, as the value from Input 2 is changed.


The following image illustrates how the Add Multiplied family of nodes might be used to manipulate the Density fractal assigned to a cloud layer’s Density shader input.

    A comparison of the effect from the Add Multiplied family of nodes on a cloud layer’s Density setting, as the value from Input 2 is changed.


In this example, the Add Multiplied Colour node was used to modify the colour values applied to a surface. Visually speaking, colour values below 0 show up as black, and values above 1 will be white; however if you examine the RGB values listed in the small pixel indicator in the bottom right of each section, which sampled a pixel value of (0.5,0.5,0.5) you’ll see that the output value is precisely that of the above examples.

    A comparison of the effect from an Add Multiplied Colour node on a surface texture.  The small pixel indicator in the bottom right corner of each section indicates the precise pixel value of a sampled pixel of 0.5, 0,5,0.5.


In the example images below, a proxy box labeled Add Multiplied Scalar Output is used for illustration to see the numerical output values.


In this example, the source data is scalar.

    When the source data is scalar, the Main input value is multiplied by the Input 2 value, and the result is added to the Main Input value.


When the source data is colour, it is first converted to scalar data. Note that the node ignores the displacement data.

    When the source data is colour, it is first converted to scalar. Note that the displacement data is ignored.
    When the source data is colour, it is first converted to scalar. Note that the displacement data is ignored.


If a shader or function nodes are not connected to Input 2, the Main Input passes through to the Output.

    When Input 2 is disconnected, the Main Input is passed through.


If a shader or function nodes are not connected to the Main Input, nothing passes through the node.

    When the Main Input is disconnected, nothing is passed through the node.


All nodes in this family have just one setting, which lets you assign a shader or function nodes to Input 2.


Settings:


  • Name: This setting allows you to apply a descriptive name to the node, which can be helpful when using multiple Add Multiplied Scalar nodes in a project.
  • Enable: When checked, the node is active and the Main Input value is first multiplied by Input 2 value, and the result is added to the Main Input value. When unchecked, only the Main Input value is passed through the node.
  • Input 2: The values from the shader or function nodes assigned to this setting are multiplied with the values of the Main Input. The result of that is added to the Main Input value.


Fun with Add Multiplied Scalar[edit]

The Add Multiplied Scalar node can be used to exaggerate the high or low values from the Main Input.


In this example, the displacement of the mound increases as the value of the Constant Scalar is raised. Note how the values in the Add multiplied scalar preview window are brighter than those of the Transform input shader preview window.

    The Add multiplied scalar node can be used to increase the steepness of a terrain feature.
    Another landscape example using the Add multiplied scalar node and Constant scalar node to increase the steepness of a terrain features.
    The brightness of the power fractal noise values increase as the Constant scalar value is raised.


In the example below, the steepness of a river gorge or canyon can be controlled by increasing the value of the Constant Scalar.

    The Add multiplied scalar node can be used to increase the steepness of a terrain feature.
    The Simple shape shader’s beveled edge values become brighter as the Constant scalar value is raised.



A scalar is a single number. 1, 200.45, -45, -0.2 are all examples of scalar values.

This is essentially the brightness of the colour. Terragen converts RGB colours to greyscale by taking the luminance of the colour.

A vector is a set of three scalars, normally representing X, Y and Z coordinates. It also commonly represents rotation, where the values are pitch, heading and bank.

A single object or device in the node network which generates or modifies data and may accept input data or create output data or both, depending on its function. Nodes usually have their own settings which control the data they create or how they modify data passing through them. Nodes are connected together in a network to perform work in a network-based user interface. In Terragen 2 nodes are connected together to describe a scene.

Literally, to change the position of something. In graphics terminology to displace a surface is to modify its geometric (3D) structure using reference data of some kind. For example, a grayscale image might be taken as input, with black areas indicating no displacement of the surface, and white indicating maximum displacement. In Terragen 2 displacement is used to create all terrain by taking heightfield or procedural data as input and using it to displace the normally flat sphere of the planet.

A shader is a program or set of instructions used in 3D computer graphics to determine the final surface properties of an object or image. This can include arbitrarily complex descriptions of light absorption and diffusion, texture mapping, reflection and refraction, shadowing, surface displacement and post-processing effects. In Terragen 2 shaders are used to construct and modify almost every element of a scene.

A single element of an image which describes values for color and/or intensity, depending on the color system which the image uses. Groups of ordered pixels together form a raster image.