## Uses of Interface
com.io7m.r2.core.R2DeletableType

- Packages that use R2DeletableType
  Package | Description
  --- | ---
  com.io7m.r2.core | Core types and functions.
  com.io7m.r2.core.debug | Types and functions associated with debugging.
  com.io7m.r2.core.shaders.provided | Default provided shaders.
  com.io7m.r2.core.shaders.types | Shader types.
  com.io7m.r2.filters | Default provided filters.
  com.io7m.r2.meshes.defaults | Default mesh instances.

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

    Subinterfaces of R2DeletableType in com.io7m.r2.core
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `R2AmbientOcclusionBufferType` The type of ambient occlusion buffers.
    `interface` | `R2DepthOnlyBufferType` The type of depth-only buffers.
    `interface` | `R2DepthRendererType` The type of renderers that populate depth-only buffers.
    `interface` | `R2DepthVarianceBufferType` The type of depth variance buffers.
    `interface` | `R2DepthVarianceRendererType` The type of renderers that populate depth variance buffers.
    `interface` | `R2FilterType<P>` The type of image filters.
    `interface` | `R2GeometryBufferType` The type of geometry buffers.
    `interface` | `R2GeometryRendererType` The type of renderers that populate geometry buffers.
    `interface` | `R2ImageBufferType` The type of image buffers.
    `interface` | `R2InstanceBatchedDynamicType` The type of batched instances that are expected to change often, both in the number of instances, and the transforms of individual instances.
    `interface` | `R2InstanceBillboardedDynamicType` The type of billboarded instances that are expected to change often, both in the number of instances, and the values of individual instances.
    `interface` | `R2LightBufferType` The type of light buffers.
    `interface` | `R2LightRendererType` The type of renderers that populate light buffers.
    `interface` | `R2MaskBufferType` The type of mask buffers.
    `interface` | `R2MaskRendererType` The type of renderers that populate mask images.
    `interface` | `R2ProjectionMeshType` The type of projection meshes.
    `interface` | `R2RenderTargetType<D extends R2RenderTargetDescriptionType>` The type of render targets.
    `interface` | `R2ShadowMapRendererType` The type of renderers that populate shadow maps.
    `interface` | `R2StencilRendererType` The type of stencil renderers.
    `interface` | `R2Texture2DStaticType` A simple static 2D texture.
    `interface` | `R2Texture2DType` The type of 2D textures.
    `interface` | `R2TextureCubeStaticType` A simple static cube texture.
    `interface` | `R2TextureCubeType` The type of cube textures.
    `interface` | `R2TextureDefaultsType` Access to default textures for materials.
    `interface` | `R2TranslucentRendererType` The type of translucent renderers.
    `interface` | `R2UnitCubeType` The type of unit cubes with edge length 1.
    `interface` | `R2UnitQuadType` The type of unit quads, from `(-1, -1, -1)` to `(1, 1, -1)`, oriented towards `+Z`.
    `interface` | `R2UnitSphereType` The type of unit spheres with radius 1.

    Classes in com.io7m.r2.core that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2AmbientOcclusionBuffer` Default implementation of the `R2AmbientOcclusionBufferType` interface.
    `class` | `R2DepthOnlyBuffer` Default implementation of the `R2DepthOnlyBufferType` interface.
    `class` | `R2DepthOnlyRenderer` The default implementation of the `R2DepthRendererType` interface.
    `class` | `R2DepthVarianceBuffer` Default implementation of the `R2DepthVarianceBufferType` interface.
    `class` | `R2DepthVarianceRenderer` The default implementation of the `R2DepthRendererType` interface.
    `class` | `R2GeometryBuffer` Default implementation of the `R2GeometryBufferType` interface.
    `class` | `R2GeometryRenderer` The default implementation of the `R2GeometryRendererType` interface.
    `class` | `R2ImageBuffer` Default implementation of the `R2ImageBufferType` interface.
    `class` | `R2InstanceBatchedDynamic` The default implementation of the `R2InstanceBatchedDynamicType` interface.
    `class` | `R2InstanceBillboardedDynamic` The default implementation of the `R2InstanceBatchedDynamicType` interface.
    `class` | `R2LightRenderer` The default implementation of the `R2LightRendererType` interface.
    `class` | `R2MaskBuffer` Default implementation of the `R2MaskBufferType` interface.
    `class` | `R2MaskRenderer` The default implementation of the `R2MaskRendererType` interface.
    `class` | `R2ProjectionMesh` A mesh representing the convex hull for a given projection.
    `class` | `R2ShadowMapRenderer` The default implementation of the `R2ShadowMapRendererType` interface.
    `class` | `R2StencilRenderer` The default implementation of the `R2StencilRendererType` interface.
    `class` | `R2Texture2DStatic` A simple static 2D texture.
    `class` | `R2TextureCubeStatic` A simple static cube texture.
    `class` | `R2TextureDefaults` The default implementation of the `R2TextureDefaultsType` interface.
    `class` | `R2TranslucentRenderer` The default implementation of the `R2TranslucentRendererType` interface.
    `class` | `R2UnitQuad` The default implementation of the `R2UnitQuadType` interface.

  - ### Uses of R2DeletableType in com.io7m.r2.core.debug

    Subinterfaces of R2DeletableType in com.io7m.r2.core.debug
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `R2DebugCubeType` The type of debug cubes, from `(-0.5, -0.5, -0.5)` to `(0.5, 0.5, 0.5)`.
    `interface` | `R2DebugVisualizerRendererType` A renderer for producing various debug visualizations.

    Classes in com.io7m.r2.core.debug that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2DebugCube` The default implementation of the `R2DebugCubeType` interface.
    `class` | `R2DebugLineSegmentsBatch` A batcher for line segments.
    `class` | `R2DebugShaderLightDirectionalConstantSingle` Directional light shader that ignores the surface and applies a constant color.
    `class` | `R2DebugShaderLightSphericalAttenuationSingle` Spherical light shader that mostly ignores the surface and applies the light color multiplied by the light attenuation over distance.
    `class` | `R2DebugShaderLightSphericalConstantSingle` Spherical light shader that ignores the surface and applies a constant color.
    `class` | `R2DebugVisualizerRenderer` The default implementation of the `R2DebugVisualizerRendererType` interface.

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

    Classes in com.io7m.r2.core.shaders.provided that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2AbstractShader<M>` An abstract shader implementation.
    `class` | `R2DepthShaderBasicBatched` Basic depth shader for single instances.
    `class` | `R2DepthShaderBasicSingle` Basic depth shader for single instances.
    `class` | `R2DepthShaderBasicStippledSingle` Basic depth shader for single instances.
    `class` | `R2LightShaderAmbientSingle` Ambient light shader for single lights.
    `class` | `R2LightShaderDirectionalSpecularSingle` Directional light shader for single lights.
    `class` | `R2LightShaderProjectiveLambertBlinnPhongShadowVarianceSingle` Projective light shader for single lights.
    `class` | `R2LightShaderProjectiveLambertBlinnPhongSingle` Projective light shader for single lights.
    `class` | `R2LightShaderProjectiveLambertShadowVarianceSingle` Projective light shader for single lights.
    `class` | `R2LightShaderProjectiveLambertSingle` Projective light shader for single lights.
    `class` | `R2LightShaderSphericalLambertBlinnPhongSingle` Spherical light shader for single lights.
    `class` | `R2LightShaderSphericalLambertPhongSingle` Spherical light shader for single lights.
    `class` | `R2LightShaderSphericalLambertSingle` Spherical light shader for single lights.
    `class` | `R2MaskShaderBatched` Shader for masking single instances.
    `class` | `R2MaskShaderSingle` Shader for masking single instances.
    `class` | `R2RefractionMaskedDeltaShaderBatched` Shader for refracting batched instances.
    `class` | `R2RefractionMaskedDeltaShaderBillboarded` Shader for refracting billboarded instances.
    `class` | `R2RefractionMaskedDeltaShaderSingle` Shader for refracting single instances.
    `class` | `R2ShaderDebugColorVerticesWorldPosition` Debug visualization shader for printing a set of line segments specified in world space.
    `class` | `R2ShaderDebugVisualBatched` Debug visualization shader for batched instances.
    `class` | `R2ShaderDebugVisualBillboarded` Debug visualization shader for billboarded instances.
    `class` | `R2ShaderDebugVisualScreen` Debug visualization shader for 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` | `R2StencilShaderScreen` A stencil-only shader implementation.
    `class` | `R2StencilShaderSingle` A stencil-only shader implementation.
    `class` | `R2SurfaceShaderBasicBatched` Basic deferred surface shader for batched instances.
    `class` | `R2SurfaceShaderBasicBillboarded` Basic deferred surface shader for billboarded instances.
    `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.
    `class` | `R2TranslucentShaderBasicPremultipliedBatched` Simple translucent shader for batched instances.
    `class` | `R2TranslucentShaderBasicPremultipliedBillboarded` Simple translucent shader for billboarded instances.
    `class` | `R2TranslucentShaderBasicPremultipliedSingle` Simple translucent shader for single instances.

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

    Subinterfaces of R2DeletableType in com.io7m.r2.core.shaders.types
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `R2ShaderDepthBatchedType<M>` The type of shaders for rendering the depths of batched instances.
    `interface` | `R2ShaderDepthSingleType<M>` The type of shaders for rendering the depths of single instances.
    `interface` | `R2ShaderFilterType<M>` The type of shaders for implementing full-screen filters.
    `interface` | `R2ShaderInstanceBatchedType<M>` The type of shaders for rendering the surfaces of batched instances into a geometry buffer.
    `interface` | `R2ShaderInstanceBillboardedType<M>` The type of shaders for rendering the surfaces of billboarded instances into a geometry buffer.
    `interface` | `R2ShaderInstanceSingleScreenType<M>` The type of shaders for rendering the surfaces of single full-screen instances.
    `interface` | `R2ShaderInstanceSingleType<M>` The type of shaders for rendering the surfaces of single instances.
    `interface` | `R2ShaderLightProjectiveType<M extends R2LightProjectiveReadableType>` The type of single-instance projective light shaders.
    `interface` | `R2ShaderLightProjectiveWithShadowType<M extends R2LightProjectiveWithShadowReadableType>` The type of single-instance projective light shaders with shadows.
    `interface` | `R2ShaderLightScreenSingleType<M extends R2LightSingleReadableType>` The type of single-instance light shaders that operate on full-screen quads.
    `interface` | `R2ShaderLightSingleType<M extends R2LightSingleReadableType>` The type of single-instance light shaders.
    `interface` | `R2ShaderLightVolumeSingleType<M extends R2LightVolumeSingleReadableType>` The type of single-instance light shaders.
    `interface` | `R2ShaderScreenType<M>` The type of shaders for rendering screen-sized quads.
    `interface` | `R2ShaderTranslucentInstanceBatchedType<M>` The type of shaders for rendering the surfaces of translucent batched instances.
    `interface` | `R2ShaderTranslucentInstanceBillboardedType<M>` The type of shaders for rendering the surfaces of translucent billboarded instances.
    `interface` | `R2ShaderTranslucentInstanceSingleType<M>` The type of shaders for rendering the surfaces of translucent single instances.
    `interface` | `R2ShaderTranslucentType<M>` The type of translucent shaders.
    `interface` | `R2ShaderType<M>` The type of shaders.

    Classes in com.io7m.r2.core.shaders.types that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2ShaderDepthBatchedVerifier<M>` A verifier for batched instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `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` | `R2ShaderFilterVerifier<M>` A verifier for filter shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderInstanceBatchedVerifier<M>` A verifier for batched instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderInstanceBillboardedVerifier<M>` A verifier for billboarded instance 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.
    `class` | `R2ShaderLightProjectiveVerifier<M extends R2LightProjectiveReadableType>` A verifier for projective light shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderLightProjectiveWithShadowVerifier<M extends R2LightProjectiveWithShadowReadableType>` A verifier for projective light shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderLightScreenSingleVerifier<M extends R2LightScreenSingleType>` A verifier for single-instance volume light shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderLightVolumeSingleVerifier<M extends R2LightVolumeSingleReadableType>` A verifier for single-instance volume light shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderTranslucentInstanceBatchedVerifier<M>` A verifier for batched translucent instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderTranslucentInstanceBillboardedVerifier<M>` A verifier for billboarded translucent instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.
    `class` | `R2ShaderTranslucentInstanceSingleVerifier<M>` A delegating verifier for translucent single-instance shaders; a type that verifies that a renderer has called all of the required methods in the correct order.

  - ### Uses of R2DeletableType in com.io7m.r2.filters

    Subinterfaces of R2DeletableType in com.io7m.r2.filters
    Modifier and Type | Interface and Description
    --- | ---
    `interface` | `R2EyePositionBufferType` The type of eye-position buffers.
    `interface` | `R2EyeZBufferType` The type of eye-Z buffers.

    Classes in com.io7m.r2.filters that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2EyePositionBuffer` Default implementation of the `R2EyePositionBuffer` interface.
    `class` | `R2EyeZBuffer` Default implementation of the `R2EyeZBufferType` interface.
    `class` | `R2FilterBilateralBlurDepthAware<SD extends R2RenderTargetDescriptionType,S extends R2RenderTargetUsableType<SD>,DD extends R2RenderTargetDescriptionType,D extends R2RenderTargetUsableType<DD>>` A generic box blur filter.
    `class` | `R2FilterBoxBlur<SD extends R2RenderTargetDescriptionType,S extends R2RenderTargetUsableType<SD>,DD extends R2RenderTargetDescriptionType,D extends R2RenderTargetUsableType<DD>>` A generic box blur filter.
    `class` | `R2FilterCompositor` A compositor filter that combines textures.
    `class` | `R2FilterDebugEyePosition` A filter that recovers the eye-space position of the pixels in the given geometry buffer.
    `class` | `R2FilterDebugEyeZ` A filter that recovers the eye-space Z position of the pixels in the given geometry buffer.
    `class` | `R2FilterEmission` The default implementation of the emission/glow filter.
    `class` | `R2FilterFogDepth` A depth-based fog filter.
    `class` | `R2FilterFXAA` An FXAA filter.
    `class` | `R2FilterLightApplicator` A trivial filter that combines a geometry buffer and a light buffer into a lit image.
    `class` | `R2FilterOcclusionApplicator` A filter that applies ambient occlusion to a light buffer.
    `class` | `R2FilterSSAO` A filter that calculates an ambient occlusion term from a given geometry buffer.
    `class` | `R2ShaderFilterBilateralBlurDepthAwareHorizontal4f` A bilateral depth-aware blur horizontal RGBA shader.
    `class` | `R2ShaderFilterBilateralBlurDepthAwareVertical4f` A bilateral depth-aware blur vertical RGBA shader.
    `class` | `R2ShaderFilterBoxBlurHorizontal4f` A horizontal RGBA box blur shader.
    `class` | `R2ShaderFilterBoxBlurVertical4f` A vertical RGBA box blur shader.
    `class` | `R2ShaderFilterDebugEyePosition` A shader that recovers the eye-space position of the g-buffer surface.
    `class` | `R2ShaderFilterDebugEyeZ` A shader that recovers the eye-space Z value of the g-buffer surface.
    `class` | `R2ShaderFilterEmission` An emission shader that copies the emissive parts of an image.
    `class` | `R2ShaderFilterFogDepth` A shader that renders fog based on depth.
    `class` | `R2ShaderFilterFogDepthLinear` A shader that renders linear fog based on depth.
    `class` | `R2ShaderFilterFogDepthQuadratic` A shader that renders quadratic fog based on depth.
    `class` | `R2ShaderFilterFogDepthQuadraticInverse` A shader that renders inverse quadratic fog based on depth.
    `class` | `R2ShaderFilterFXAAA` An FXAA shader.
    `class` | `R2ShaderFilterLightApplicator` A light applicator shader.
    `class` | `R2ShaderFilterOcclusionApplicator` An occlusion applicator shader.
    `class` | `R2ShaderFilterTextureShow` An image sink shader that copies a texture to the first output.
    `class` | `R2ShaderSSAO` An SSAO shader.

  - ### Uses of R2DeletableType in com.io7m.r2.meshes.defaults

    Classes in com.io7m.r2.meshes.defaults that implement R2DeletableType
    Modifier and Type | Class and Description
    --- | ---
    `class` | `R2UnitCube` The default implementation of the `R2UnitCubeType` interface.
    `class` | `R2UnitSphere` The default implementation of the `R2UnitSphereType` interface.

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