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 intALLOW_SHADER_ATTRIBUTE_SET_READSpecifies that this ShaderAppearance object allows reading its ShaderAttributeSet component information.static intALLOW_SHADER_ATTRIBUTE_SET_WRITESpecifies that this ShaderAppearance object allows writing its ShaderAttributeSet component information.static intALLOW_SHADER_PROGRAM_READSpecifies that this ShaderAppearance object allows reading its ShaderProgram component information.static intALLOW_SHADER_PROGRAM_WRITESpecifies 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 NodeComponentcloneNodeComponent()Deprecated.replaced with cloneNodeComponent(boolean forceDuplicate)voidduplicateNodeComponent(NodeComponent originalNodeComponent)Deprecated.replaced with duplicateNodeComponent( NodeComponent originalNodeComponent, boolean forceDuplicate)ShaderAttributeSetgetShaderAttributeSet()Retrieves the current ShaderAttributeSet object.ShaderProgramgetShaderProgram()Retrieves the current ShaderProgram object.voidsetShaderAttributeSet(ShaderAttributeSet shaderAttributeSet)Sets the ShaderAttributeSet object to the specified object.voidsetShaderProgram(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:
cloneNodeComponentin 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:
duplicateNodeComponentin classAppearance
-
-