M - See R2ShaderLightSingleTypepublic final class R2ShaderLightScreenSingleVerifier<M extends R2LightScreenSingleType> extends Object implements R2ShaderLightScreenSingleType<M>
| Modifier and Type | Method and Description |
|---|---|
void |
delete(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
Delete the current object.
|
boolean |
isDeleted() |
static <M extends R2LightScreenSingleType> |
newVerifier(R2ShaderLightScreenSingleType<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 |
onReceiveBoundGeometryBufferTextures(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2GeometryBufferUsableType gbuffer,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_albedo,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_specular,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_depth,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_normals)
Set the bound geometry buffer textures for the current shader.
|
void |
onReceiveValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersLightType<M> light_parameters)
Set light values.
|
void |
onValidate()
Validate the shader prior to executing a draw call.
|
long |
shaderID() |
Class<M> |
shaderParametersType() |
com.io7m.jcanephora.core.JCGLProgramShaderUsableType |
shaderProgram() |
public static <M extends R2LightScreenSingleType> R2ShaderLightScreenSingleType<M> newVerifier(R2ShaderLightScreenSingleType<M> s)
M - See R2ShaderLightVolumeSingleTypes - 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 extends R2LightScreenSingleType>public Class<M> shaderParametersType()
shaderParametersType in interface R2ShaderUsableType<M extends R2LightScreenSingleType>public com.io7m.jcanephora.core.JCGLProgramShaderUsableType shaderProgram()
shaderProgram in interface R2ShaderUsableType<M extends R2LightScreenSingleType>public void onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
R2ShaderUsableTypeonActivate in interface R2ShaderUsableType<M extends R2LightScreenSingleType>g - A GL interfacepublic void onValidate()
throws R2ExceptionShaderValidationFailed
R2ShaderUsableTypeonValidate in interface R2ShaderUsableType<M extends R2LightScreenSingleType>R2ExceptionShaderValidationFailed - If validation failspublic void onDeactivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g)
R2ShaderUsableTypeonDeactivate in interface R2ShaderUsableType<M extends R2LightScreenSingleType>g - A GL interfacepublic void onReceiveBoundGeometryBufferTextures(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2GeometryBufferUsableType gbuffer,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_albedo,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_specular,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_depth,
com.io7m.jcanephora.core.JCGLTextureUnitType unit_normals)
R2ShaderLightSingleUsableTypeSet the bound geometry buffer textures for the current shader.
This method will be called exactly once between calls to R2ShaderUsableType.onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type)
and R2ShaderUsableType.onValidate().
onReceiveBoundGeometryBufferTextures in interface R2ShaderLightSingleUsableType<M extends R2LightScreenSingleType>g - An OpenGL interfacegbuffer - The geometry bufferunit_albedo - The texture unit to which the geometry buffer's
albedo/emissive texture is boundunit_specular - The texture unit to which the geometry buffer's
specular texture is boundunit_depth - The texture unit to which the geometry buffer's
depth/stencil texture is boundunit_normals - The texture unit to which the geometry buffer's
normalpublic void onReceiveValues(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type g,
R2ShaderParametersLightType<M> light_parameters)
R2ShaderLightSingleUsableTypeSet light values.
This method will be called once for each light that uses the current shader.
This method will be called after a call to R2ShaderUsableType.onActivate(com.io7m.jcanephora.core.api.JCGLInterfaceGL33Type)
and before a call to R2ShaderUsableType.onValidate().
onReceiveValues in interface R2ShaderLightSingleUsableType<M extends R2LightScreenSingleType>g - An OpenGL interfacelight_parameters - The light parametersCopyright © 2017 <code@io7m.com> http://io7m.com