## Uses of Interface
com.io7m.r2.core.shaders.types.R2ShaderInstanceSingleUsableType

- Packages that use R2ShaderInstanceSingleUsableType
  Package | Description
  --- | ---
  com.io7m.r2.core | Core types and functions.
  com.io7m.r2.core.shaders.provided | Default provided shaders.
  com.io7m.r2.core.shaders.types | Shader types.

- - ### Uses of R2ShaderInstanceSingleUsableType in com.io7m.r2.core

    Methods in com.io7m.r2.core that return R2ShaderInstanceSingleUsableType
    Modifier and Type | Method and Description
    --- | ---
    `R2ShaderInstanceSingleUsableType<M>` | R2MaterialOpaqueSingleType.`shader()`
    `R2ShaderInstanceSingleUsableType<M>` | R2MaterialOpaqueSingle.`shader()`

    Methods in com.io7m.r2.core with parameters of type R2ShaderInstanceSingleUsableType
    Modifier and Type | Method and Description
    --- | ---
    `static <M> R2MaterialOpaqueSingle<M>` | R2MaterialOpaqueSingle.`of(long materialID, R2ShaderInstanceSingleUsableType<M> shader, M shaderParameters)` Construct a new immutable `R2MaterialOpaqueSingle` instance.
    `<M> void` | R2SceneOpaquesConsumerType.`onInstanceSingleShaderFinish(R2ShaderInstanceSingleUsableType<M> s)` Called when the current shader should be deactivated.
    `<M> void` | R2SceneOpaquesConsumerType.`onInstanceSingleShaderStart(R2ShaderInstanceSingleUsableType<M> s)` Called when a new shader should be activated in order to start rendering single instances.
    `R2MaterialOpaqueSingle.Builder<M>` | R2MaterialOpaqueSingle.Builder.`setShader(R2ShaderInstanceSingleUsableType<M> shader)` Initializes the value for the `shader` attribute.
    `R2MaterialOpaqueSingle<M>` | R2MaterialOpaqueSingle.`withShader(R2ShaderInstanceSingleUsableType<M> value)` Copy the current immutable object by setting a value for the `shader` attribute.

  - ### Uses of R2ShaderInstanceSingleUsableType in com.io7m.r2.core.shaders.provided

    Classes in com.io7m.r2.core.shaders.provided that implement R2ShaderInstanceSingleUsableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2DepthShaderBasicSingle` Basic depth shader for single instances.
    `class` | `R2DepthShaderBasicStippledSingle` Basic depth shader for single instances.
    `class` | `R2MaskShaderSingle` Shader for masking single instances.
    `class` | `R2ShaderDebugVisualSingle` Debug visualization shader for single instances.
    `class` | `R2ShaderLogDepthOnlySingle` A shader that does not output any color data, but does write a logarithmic depth value.
    `class` | `R2StencilShaderSingle` A stencil-only shader implementation.
    `class` | `R2SurfaceShaderBasicReflectiveSingle` Basic deferred surface shader for single instances, with pseudo-reflectivity provided by an environment map.
    `class` | `R2SurfaceShaderBasicSingle` Basic deferred surface shader for single instances.
    `class` | `R2SurfaceShaderBasicStippledSingle` Basic deferred surface shader for single instances with alpha stippling.

  - ### Uses of R2ShaderInstanceSingleUsableType in com.io7m.r2.core.shaders.types

    Subinterfaces of R2ShaderInstanceSingleUsableType in com.io7m.r2.core.shaders.types
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `R2ShaderDepthSingleType<M>` The type of shaders for rendering the depths of single instances.
    `interface` | `R2ShaderDepthSingleUsableType<M>` The type of usable shaders for rendering the depths of single instances.
    `interface` | `R2ShaderInstanceSingleType<M>` The type of shaders for rendering the surfaces of single instances.

    Classes in com.io7m.r2.core.shaders.types that implement R2ShaderInstanceSingleUsableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2ShaderDepthSingleVerifier<M>` A delegating verifier for single-instance depth shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderInstanceSingleVerifier<M>` A delegating verifier for single-instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.

Copyright © 2017 <code@io7m.com> http://io7m.com