Shader Node Vocabulary

Shader Node Vocabulary and common usage

Official Names

Example nodeNode Name (2)

This is normally the same as the type of node. In the example shown here, the Node Name is 'Spots'. If you create two nodes of the same type, Poser will automatically number them to avoid confusion.

It is possible to manually edit a material that has been saved to the library to change the node name, so if you look at an existing material you might find unfamiliar names. You will also often find python scripts creating nodes with different names.

Node Values (3)

Most nodes have a series of node values that you can change to alter the output of the node. These are called node values, but are often known as 'attributes' (see below).

Value Input (4)

The value input is where you tell Poser what you want this particular node value to do to the final output.

There are two ways to provide Poser with this information. Every Node Value will have some form of direct input, normally a number, tick box, drop down list or colour (those for Reflection_value and Refraction_value only appear once something is plugged into the related colour value inputs). Our spot node contains examples of all four. In addition, you can plug the output of one node into the value_input of any colour or number node value.

Poser works out the final node value by multiplying the direct input with the output of any node that has been plugged in to the value input. If you just want to use the output from another node, then set the direct input value to either '1' or white, depending on the type of node.

Colours and numbers can be mixed freely. Colours are stored as numbers anyway, so Poser can easily combine the two. Just remember that if you plug the output from a colour node into a number, then the result will be in shades of gray. White will be equal to 1, black to 0 (see below for more on this).

Output (1)

This is where the final result comes out. Click and drag from this onto the value input of the node value on any other node to link them.

Root Node

Every material has a root node. It contains all the basic elements that each type of Poser material begins with. There are several different types of root node, each with a difference set of Node Values. The most common is the PoserSurface root node, found on all materials related to objects. You will also find Light root nodes, Atmosphere root nodes and Background root nodes.

Unofficial names

Attributes

Each combination of a Node Value and Value Input is often known as an "attribute" (at least by me anyway!). Thus a Math_Functions node has three attributes - Math_Argument, Value_1 and Value_2. This gives us an convenient shorthand that we can use to describe connections between different nodes. Instead of saying "plug the output of the noise node into the value input of the blending node value of the blender node", we can say "plug the noise node into the blending attribute of the blender node", much easier to read (and to type!).

If you are told to 'set' an attribute, then this refers to the input box or dropdown list build into the node. Click and type, or select from the list, pick a colour, or tick an option, depending on the type of value required.

Maths Nodes

One addition shorthand will be found when discussing maths nodes. Here, you will often find the node value of the Math_Argument Node Value used instead of the Node Name. If you see an instruction to add an 'add node', this normally means create a Math_Functions node, and set Math_Argument to 'Add'.

A note on the conversion of colours to numbers

As mention in the section on Value Input, if you plug a node that produces colours into a value input that expects numbers, Poser will convert that colour into a number. Black and white are simple enough, producing 0 and 1, but other colours need a bit more explaining.

At least for these purposes, Poser stores colours in Red Green Blue format, with each colour being described as a combination of these primary colours. White is produced by combining all three at maximum strength. When Poser converts a colour to a number, it takes these three numbers, adds them together, and then divides them by three. This means that pure red green or blue each become 0.333

This is because each primary colour is made up of one colour channel set to 1 and two colour channels set to 0. When Poser adds them together, the answer it gets is thus always 1, and 1 divided by 3 is 0.333 (recurring to infinity, but that would really slow down the page loading times). Figure 1 shows this in action.

 


Fig 1: Red and Blue converting to dark gray

Yellow, which is made up of a combination of red and green, becomes 0.666. One result of this is that an apparently dull colour can be converted into a higher number than a bright colour. Figure 2 shows a bright red becoming dark gray, while a darker shade which contains some green and blue produces a brighter result. In this case, 100% red becomes 0.33 (100+0+0=100; 100%/3 = 33%); while the duller shade is made up of 80% red, 20% blue and 20% green. This becomes 0.4 (80+20+20=120; 120/3 =40%).


Fig 1: Colours converted to numbers

It is possible to avoid this in Poser 6 by extracting just the brightness, or 'value', from your colours using a HSV node. Plug the output of your colour node into the colour attribute of the HSV node, leave the value and hue attributes at 1, and change the saturation attribute to 0. Exactly what is going on with the HSV node is beyond the scope of this article, but I will return to it at a later date.


PoserWorld