Class ShaderAttribute

Direct Known Subclasses:
ShaderAttributeBinding, ShaderAttributeObject

public abstract class ShaderAttribute extends NodeComponent
The ShaderAttribute object encapsulates a uniform attribute for a shader programs. Uniform attributes (variables) are those attributes whose values are constant during the rendering of a primitive. Their values may change from primitive to primitive, but are constant for each vertex (for vertex shaders) or fragment (for fragment shaders) of a single primitive. Examples of uniform attributes include a transformation matrix, a texture map, lights, lookup tables, etc.

There are two ways in which values can be specified for uniform attributes: explicitly, by providing a value; and implicitly, by defining a binding between a Java 3D system attribute and a uniform attribute. This functionality is provided by two subclasses of ShaderAttribute as follows:

  • ShaderAttributeObject, in which attributes are expressed as (attrName, value) pairs, is used for explicitly defined attributes
  • ShaderAttributeBinding, in which attributes are expressed as (attrName, j3dAttrName) pairs, is used for implicitly defined, automatically tracked attributes
Since:
Java 3D 1.4
See Also:
  • Method Details

    • getAttributeName

      public String getAttributeName()
      Retrieves the name of this shader attribute.
      Returns:
      the name of this shader attribute