Package javax.media.j3d
Class ShaderAppearance
- java.lang.Object
-
- javax.media.j3d.SceneGraphObject
-
- javax.media.j3d.NodeComponent
-
- javax.media.j3d.Appearance
-
- javax.media.j3d.ShaderAppearance
-
public class ShaderAppearance extends Appearance
The ShaderAppearance object defines programmable shading attributes that can be set as a component object of a Shape3D node. The ShaderAppearance rendering state adds the following attributes in addition to those defined by Appearance:
- Shader program - specifies the shader program...
- Shader attribute set - specifies the shader parameters, both as explicit attributes and as implicit bindings to Java 3D state...
The ShaderAppearance object modifies the definition of some of the attributes in Appearance:
- Coloring attributes - XXXXX
- Line attributes - XXXXX
- Point attributes - XXXXX
- Polygon attributes - XXXXX
- Rendering attributes - XXXXX
- Transparency attributes - XXXXX
- Material - XXXXX
- Texture - XXXXX
- Texture attributes - XXXXX
- Texture coordinate generation - XXXXX
- Texture unit state - XXXXX
- Since:
- Java 3D 1.4
- See Also:
ShaderProgram
,ShaderAttributeSet
-
-
Field Summary
Fields Modifier and Type Field Description static int
ALLOW_SHADER_ATTRIBUTE_SET_READ
Specifies that this ShaderAppearance object allows reading its ShaderAttributeSet component information.static int
ALLOW_SHADER_ATTRIBUTE_SET_WRITE
Specifies that this ShaderAppearance object allows writing its ShaderAttributeSet component information.static int
ALLOW_SHADER_PROGRAM_READ
Specifies that this ShaderAppearance object allows reading its ShaderProgram component information.static int
ALLOW_SHADER_PROGRAM_WRITE
Specifies that this ShaderAppearance object allows writing its ShaderProgram component information.-
Fields inherited from class javax.media.j3d.Appearance
ALLOW_COLORING_ATTRIBUTES_READ, ALLOW_COLORING_ATTRIBUTES_WRITE, ALLOW_LINE_ATTRIBUTES_READ, ALLOW_LINE_ATTRIBUTES_WRITE, ALLOW_MATERIAL_READ, ALLOW_MATERIAL_WRITE, ALLOW_POINT_ATTRIBUTES_READ, ALLOW_POINT_ATTRIBUTES_WRITE, ALLOW_POLYGON_ATTRIBUTES_READ, ALLOW_POLYGON_ATTRIBUTES_WRITE, ALLOW_RENDERING_ATTRIBUTES_READ, ALLOW_RENDERING_ATTRIBUTES_WRITE, ALLOW_TEXGEN_READ, ALLOW_TEXGEN_WRITE, ALLOW_TEXTURE_ATTRIBUTES_READ, ALLOW_TEXTURE_ATTRIBUTES_WRITE, ALLOW_TEXTURE_READ, ALLOW_TEXTURE_UNIT_STATE_READ, ALLOW_TEXTURE_UNIT_STATE_WRITE, ALLOW_TEXTURE_WRITE, ALLOW_TRANSPARENCY_ATTRIBUTES_READ, ALLOW_TRANSPARENCY_ATTRIBUTES_WRITE
-
-
Constructor Summary
Constructors Constructor Description ShaderAppearance()
Constructs a ShaderAppearance component object using defaults for all state variables.
-
Method Summary
All Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description NodeComponent
cloneNodeComponent()
Deprecated.replaced with cloneNodeComponent(boolean forceDuplicate)void
duplicateNodeComponent(NodeComponent originalNodeComponent)
Deprecated.replaced with duplicateNodeComponent( NodeComponent originalNodeComponent, boolean forceDuplicate)ShaderAttributeSet
getShaderAttributeSet()
Retrieves the current ShaderAttributeSet object.ShaderProgram
getShaderProgram()
Retrieves the current ShaderProgram object.void
setShaderAttributeSet(ShaderAttributeSet shaderAttributeSet)
Sets the ShaderAttributeSet object to the specified object.void
setShaderProgram(ShaderProgram shaderProgram)
Sets the ShaderProgram object to the specified object.-
Methods inherited from class javax.media.j3d.Appearance
getColoringAttributes, getLineAttributes, getMaterial, getPointAttributes, getPolygonAttributes, getRenderingAttributes, getTexCoordGeneration, getTexture, getTextureAttributes, getTextureUnitCount, getTextureUnitState, getTextureUnitState, getTransparencyAttributes, setColoringAttributes, setLineAttributes, setMaterial, setPointAttributes, setPolygonAttributes, setRenderingAttributes, setTexCoordGeneration, setTexture, setTextureAttributes, setTextureUnitState, setTextureUnitState, setTransparencyAttributes
-
Methods inherited from class javax.media.j3d.NodeComponent
cloneNodeComponent, duplicateNodeComponent, getDuplicateOnCloneTree, setDuplicateOnCloneTree
-
Methods inherited from class javax.media.j3d.SceneGraphObject
clearCapability, clearCapabilityIsFrequent, duplicateSceneGraphObject, getCapability, getCapabilityIsFrequent, getName, getUserData, isCompiled, isLive, setCapability, setCapabilityIsFrequent, setName, setUserData, toString, updateNodeReferences
-
-
-
-
Field Detail
-
ALLOW_SHADER_PROGRAM_READ
public static final int ALLOW_SHADER_PROGRAM_READ
Specifies that this ShaderAppearance object allows reading its ShaderProgram component information.- See Also:
- Constant Field Values
-
ALLOW_SHADER_PROGRAM_WRITE
public static final int ALLOW_SHADER_PROGRAM_WRITE
Specifies that this ShaderAppearance object allows writing its ShaderProgram component information.- See Also:
- Constant Field Values
-
ALLOW_SHADER_ATTRIBUTE_SET_READ
public static final int ALLOW_SHADER_ATTRIBUTE_SET_READ
Specifies that this ShaderAppearance object allows reading its ShaderAttributeSet component information.- See Also:
- Constant Field Values
-
ALLOW_SHADER_ATTRIBUTE_SET_WRITE
public static final int ALLOW_SHADER_ATTRIBUTE_SET_WRITE
Specifies that this ShaderAppearance object allows writing its ShaderAttributeSet component information.- See Also:
- Constant Field Values
-
-
Method Detail
-
setShaderProgram
public void setShaderProgram(ShaderProgram shaderProgram)
Sets the ShaderProgram object to the specified object. Setting it to null causes a default pass-through shader to be used ???- Parameters:
shaderProgram
- object that specifies the desired shader program- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
getShaderProgram
public ShaderProgram getShaderProgram()
Retrieves the current ShaderProgram object.- Returns:
- the ShaderProgram object
- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
setShaderAttributeSet
public void setShaderAttributeSet(ShaderAttributeSet shaderAttributeSet)
Sets the ShaderAttributeSet object to the specified object. Setting it to null is equivalent to specifying an empty set of attributes.- Parameters:
shaderAttributeSet
- object that specifies the desired shader attributes- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
getShaderAttributeSet
public ShaderAttributeSet getShaderAttributeSet()
Retrieves the current ShaderAttributeSet object.- Returns:
- the ShaderAttributeSet object
- Throws:
CapabilityNotSetException
- if appropriate capability is not set and this object is part of live or compiled scene graph
-
cloneNodeComponent
public NodeComponent cloneNodeComponent()
Deprecated.replaced with cloneNodeComponent(boolean forceDuplicate)- Overrides:
cloneNodeComponent
in classAppearance
-
duplicateNodeComponent
public void duplicateNodeComponent(NodeComponent originalNodeComponent)
Deprecated.replaced with duplicateNodeComponent( NodeComponent originalNodeComponent, boolean forceDuplicate)NOTE: Applications should not call this method directly. It should only be called by the cloneNode method.- Overrides:
duplicateNodeComponent
in classAppearance
-
-