M - See R2ShaderInstanceSingleTypepublic final class R2ShaderTranslucentInstanceBillboardedVerifier<M> extends Object implements R2ShaderTranslucentInstanceBillboardedType<M>
| Modifier and Type | Method and Description |
|---|---|
void |
delete(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
Delete the current object.
|
boolean |
isDeleted() |
static <M> R2ShaderTranslucentInstanceBillboardedType<M> |
newVerifier(R2ShaderTranslucentInstanceBillboardedType<M> s)
Construct a new verifier for the given shader.
|
void |
onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
Activate the shader for rendering.
|
void |
onDeactivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
Deactivate the shader.
|
void |
onReceiveMaterialValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersMaterialType<M> mat_parameters)
Set material values.
|
void |
onReceiveViewValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersViewType view_parameters)
Set shader values that are derived from the current view.
|
void |
onValidate()
Validate the shader prior to executing a draw call.
|
long |
shaderID() |
Class<M> |
shaderParametersType() |
com.io7m.jcanephora.core.JCGLProgramShaderUsableType |
shaderProgram() |
Optional<com.io7m.jcanephora.renderstate.JCGLBlendState> |
suggestedBlendState()
A specification of the blending state with which this shader is intended to
be used.
|
public static <M> R2ShaderTranslucentInstanceBillboardedType<M> newVerifier(R2ShaderTranslucentInstanceBillboardedType<M> s)
M - See R2ShaderInstanceBillboardedTypes - The shaderpublic void delete(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
throws R2Exception
R2DeletableTypedelete in interface R2DeletableTypeg - An OpenGL interfaceR2Exception - On errorspublic boolean isDeleted()
isDeleted in interface com.io7m.jcanephora.core.JCGLResourceUsableTypepublic long shaderID()
shaderID in interface R2ShaderUsableType<M>public Class<M> shaderParametersType()
shaderParametersType in interface R2ShaderUsableType<M>public com.io7m.jcanephora.core.JCGLProgramShaderUsableType shaderProgram()
shaderProgram in interface R2ShaderUsableType<M>public void onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
R2ShaderUsableTypeonActivate in interface R2ShaderUsableType<M>g - A GL interfacepublic void onValidate()
throws R2ExceptionShaderValidationFailed
R2ShaderUsableTypeonValidate in interface R2ShaderUsableType<M>R2ExceptionShaderValidationFailed - If validation failspublic void onDeactivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
R2ShaderUsableTypeonDeactivate in interface R2ShaderUsableType<M>g - A GL interfacepublic void onReceiveViewValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersViewType view_parameters)
R2ShaderTranslucentInstanceBillboardedUsableTypeSet shader values that are derived from the current view.
This method will be called exactly once between calls to R2ShaderUsableType.onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type)
and R2ShaderUsableType.onValidate().
onReceiveViewValues in interface R2ShaderTranslucentInstanceBillboardedUsableType<M>g - An OpenGL interfaceview_parameters - The view parameterspublic void onReceiveMaterialValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersMaterialType<M> mat_parameters)
R2ShaderTranslucentInstanceBillboardedUsableTypeSet material values.
This method will be called once for each group of instances that use the
material M.
This method will be called after a call to R2ShaderUsableType.onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type)
and before a call to R2ShaderUsableType.onValidate().
onReceiveMaterialValues in interface R2ShaderTranslucentInstanceBillboardedUsableType<M>g - A texture interfacemat_parameters - The material parameterspublic Optional<com.io7m.jcanephora.renderstate.JCGLBlendState> suggestedBlendState()
R2ShaderTranslucentUsableTypesuggestedBlendState in interface R2ShaderTranslucentUsableType<M>Copyright © 2017 <code@io7m.com> http://io7m.com