| 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
See Also: ShaderAttributeSet See Also: ShaderProgram since: Java 3D 1.4 |