public abstract class Shader
extends java.lang.Object
Modifier and Type | Class and Description |
---|---|
static interface |
Shader.DefaultResources |
static class |
Shader.PRECISION
Sets the Shaders precision value.
|
Constructor and Description |
---|
Shader(Shader.DefaultResources resource)
This constructor will create new Shader instance.
|
Shader(java.lang.String vertexShader,
java.lang.String fragmentShader) |
Modifier and Type | Method and Description |
---|---|
void |
addAttributes(java.lang.String id,
Attribute attribute) |
void |
addUniform(java.lang.String id,
Uniform uniform) |
boolean |
areCustomAttributesDirty() |
static Float32Array |
buildKernel(double sigma) |
Shader |
buildProgram(WebGLRenderingContext gl) |
Shader |
buildProgram(WebGLRenderingContext gl,
boolean useVertexTexture,
int maxMorphTargets,
int maxMorphNormals) |
void |
clearCustomAttributes() |
java.util.Map<java.lang.String,Attribute> |
getAttributes() |
java.util.Map<java.lang.String,java.lang.Integer> |
getAttributesLocations()
Deprecated.
|
java.lang.String |
getFragmentSource()
Gets source of the Fragment shader.
|
int |
getId()
Gets program ID
|
WebGLProgram |
getProgram()
Gets the shader program.
|
java.util.Map<java.lang.String,Uniform> |
getUniforms()
Gets shader's uniforms.
|
java.lang.String |
getVertexSource()
Gets source of the Vertex shader.
|
void |
setAttributes(java.util.Map<java.lang.String,Attribute> attributes) |
void |
setFragmentSource(java.lang.String src) |
void |
setPrecision(Shader.PRECISION precision) |
void |
setUniforms(java.util.Map<java.lang.String,Uniform> uniforms) |
void |
setVertexSource(java.lang.String src) |
java.lang.String |
toString() |
static java.lang.String |
updateShaderSource(java.lang.String src,
java.util.List<java.lang.String>... allMods) |
static java.lang.String |
updateShaderSource(java.lang.String src,
java.lang.String... allMods) |
public Shader(Shader.DefaultResources resource)
resource
- the Shader.DefaultResources
instance.public Shader(java.lang.String vertexShader, java.lang.String fragmentShader)
public int getId()
public WebGLProgram getProgram()
public Shader buildProgram(WebGLRenderingContext gl)
public Shader buildProgram(WebGLRenderingContext gl, boolean useVertexTexture, int maxMorphTargets, int maxMorphNormals)
public void setPrecision(Shader.PRECISION precision)
public java.lang.String getVertexSource()
public void setVertexSource(java.lang.String src)
public java.lang.String getFragmentSource()
public void setFragmentSource(java.lang.String src)
public java.util.Map<java.lang.String,Uniform> getUniforms()
public void setUniforms(java.util.Map<java.lang.String,Uniform> uniforms)
public void addUniform(java.lang.String id, Uniform uniform)
@Deprecated public java.util.Map<java.lang.String,java.lang.Integer> getAttributesLocations()
public java.util.Map<java.lang.String,Attribute> getAttributes()
public void setAttributes(java.util.Map<java.lang.String,Attribute> attributes)
public void addAttributes(java.lang.String id, Attribute attribute)
public boolean areCustomAttributesDirty()
public void clearCustomAttributes()
public java.lang.String toString()
toString
in class java.lang.Object
public static java.lang.String updateShaderSource(java.lang.String src, java.util.List<java.lang.String>... allMods)
public static java.lang.String updateShaderSource(java.lang.String src, java.lang.String... allMods)
public static Float32Array buildKernel(double sigma)