Alpha Testing | This node tests if a pixel has to be drawn. This depends on the alpha value of this pixel. |
The Alpha Testing Node is an Alias of the Material Node. It changes one of the tests that is performed to decide whether a fragment of an object is rendered or not. The Material Node has other options that are documented on the respective pages (see table below for more information).
The Material Node controls the appearance of the surface of each rendered Object placed as a child in the Hierarchy. It consists of several options that can be added to its list of properties to overwrite the according options. The options are available under Material Node's Tabs that are represented by the button bar on top of the Material Definition in the Property Editor.
Generally these tabs exist:
| Standard | affects the overall transparency | |
---|---|---|---|
changes how light affects the color of a surface | |||
adds textures and material stages that change the shading | |||
| Shadow Options | changes the shadow related behavior | |
| Drawing Style | applies a draw mode for geometries (lines, solid, sprites etc.) | |
| Blending | changes the write mode to specified color channels | |
adjusts the blending of geometries onto the background | |||
| Testing | applies a custom test against the object's alpha | |
defines a custom occlusion test for the geometry |
To show the options of a tab simply click on the according button. You can insert options by clicking on the Property Group's entry and choosing the wanted options from the dropdown.
All options that you do not adjust in a Material node are inherited by the Default Material or the Material node in front.
In general the Icon rendering can be changed by switching between Sphere, Quad and Torus at the bottom of the Properties Editor or via .
Based on the Property Groups that are used inside a Material Node the Icon may change.
| Rendered Preview | if only Property Group's in the Standard or Shadow Options tab are used. |
---|---|---|
| Rendered Preview with light blue decoration | if Property Group's in the Standard or Shadow Options tab are used together with any other Option like a certain Draw Mode or a certain Blending |
| Dedicated Option Icon | every Material Option has it's own dedicated Icon, that is shown whenever no other Property Group in any other tab is used. |
A Material node is a Hierarchy Node by nature. But it can serve as a Material Provider as well. This is useful whenever you want to use the same material in different locations of your hierarchy or once you have Hierarchy Nodes that need more materials than one applied to it (e.g. the Particle System Node). The below image shows both a Material Node and an extracted Material Node Provider together with a receiving Material Node.
You can either place the Material node in the Content Editor to create an unbound Material Provider node. Or you can use the extract button on any node that hosts a Material Definition to extract it to a provider that can be re-used on other nodes.
Since a Material consists of several options sometimes you want to extract some of them to a seperate Hierarchy Node. This way you can apply single Material Options to other parts of the Hierarchy Tree when already added to the Material. Just use the extract buttons next to the Material Options.
Similar to the Z-Testing and Stencil Testing nodes, the alpha value of a fragment can be used to reject it before the respective pixel is drawn.
You can Inherit the Alpha Testing, turn it On or Off or provide a custom Alpha Test (Advanced). When set to On the test will fail if the Alpha is not greater than 0 - this effectively saves performance by not rendering any invisible pixel. If you need all fragments rendered change the alpha test function with the Advanced option or turn the test Off. If turned Off the test will never fail and the current fragment is always rendered.
The Alpha Testing compares the alpha value of the fragment (after it has been lit and textures have been blended) to the value specified in RefAlpha using the operation set in Function: