com.io7m.r2.filters

## Class R2FilterSSAOParameters

- java.lang.Object
- - com.io7m.r2.filters.R2FilterSSAOParameters

- All Implemented Interfaces:
    R2FilterSSAOParametersType

      @Generated(value={"Immutables.generator","R2FilterSSAOParametersType"})
      public final class R2FilterSSAOParameters
      extends Object
      implements R2FilterSSAOParametersType

  The type of parameters for filters that calculate ambient occlusion in screen-space.

- - ### Nested Class Summary

    Nested Classes
    Modifier and Type | Class and Description
    --- | ---
    `static class` | `R2FilterSSAOParameters.Builder` Builds instances of type `R2FilterSSAOParameters`.

  - ### Method Summary

    All Methods Static Methods Instance Methods Concrete Methods
    Modifier and Type | Method and Description
    --- | ---
    `static R2FilterSSAOParameters.Builder` | `builder()` Creates a builder for `R2FilterSSAOParameters`.
    `static R2FilterSSAOParameters` | `copyOf(R2FilterSSAOParametersType instance)` Creates an immutable copy of a `R2FilterSSAOParametersType` value.
    `boolean` | `equals(Object another)` This instance is equal to all instances of `R2FilterSSAOParameters` that have equal attribute values.
    `float` | `exponent()`
    `R2GeometryBufferUsableType` | `geometryBuffer()`
    `int` | `hashCode()` Computes a hash code from attributes: `exponent`, `noiseTexture`, `kernel`, `sampleRadius`, `geometryBuffer`, `outputBuffer`, `sceneObserverValues`.
    `R2SSAOKernelType` | `kernel()`
    `R2Texture2DUsableType` | `noiseTexture()`
    `static R2FilterSSAOParameters` | `of(float exponent, R2Texture2DUsableType noiseTexture, R2SSAOKernelType kernel, float sampleRadius, R2GeometryBufferUsableType geometryBuffer, R2AmbientOcclusionBufferUsableType outputBuffer, R2MatricesObserverValuesType sceneObserverValues)` Construct a new immutable `R2FilterSSAOParameters` instance.
    `R2AmbientOcclusionBufferUsableType` | `outputBuffer()`
    `float` | `sampleRadius()`
    `R2MatricesObserverValuesType` | `sceneObserverValues()`
    `String` | `toString()` Prints the immutable value `R2FilterSSAOParameters` with attribute values.
    `R2FilterSSAOParameters` | `withExponent(float value)` Copy the current immutable object by setting a value for the `exponent` attribute.
    `R2FilterSSAOParameters` | `withGeometryBuffer(R2GeometryBufferUsableType value)` Copy the current immutable object by setting a value for the `geometryBuffer` attribute.
    `R2FilterSSAOParameters` | `withKernel(R2SSAOKernelType value)` Copy the current immutable object by setting a value for the `kernel` attribute.
    `R2FilterSSAOParameters` | `withNoiseTexture(R2Texture2DUsableType value)` Copy the current immutable object by setting a value for the `noiseTexture` attribute.
    `R2FilterSSAOParameters` | `withOutputBuffer(R2AmbientOcclusionBufferUsableType value)` Copy the current immutable object by setting a value for the `outputBuffer` attribute.
    `R2FilterSSAOParameters` | `withSampleRadius(float value)` Copy the current immutable object by setting a value for the `sampleRadius` attribute.
    `R2FilterSSAOParameters` | `withSceneObserverValues(R2MatricesObserverValuesType value)` Copy the current immutable object by setting a value for the `sceneObserverValues` attribute.

    - ### Methods inherited from class java.lang.Object

      `clone, finalize, getClass, notify, notifyAll, wait, wait, wait`

- - ### Method Detail

    - #### exponent

          public float exponent()

      Specified by:
        `exponent` in interface `R2FilterSSAOParametersType`
      Returns:
        The exponent that will be used to scale the final occlusion term

    - #### noiseTexture

          public R2Texture2DUsableType noiseTexture()

      Specified by:
        `noiseTexture` in interface `R2FilterSSAOParametersType`
      Returns:
        The noise texture that will be used to peturb sampling when calculating the occlusion term

    - #### kernel

          public R2SSAOKernelType kernel()

      Specified by:
        `kernel` in interface `R2FilterSSAOParametersType`
      Returns:
        The sampling kernel

    - #### sampleRadius

          public float sampleRadius()

      Specified by:
        `sampleRadius` in interface `R2FilterSSAOParametersType`
      Returns:
        The maximum distance, in eye-space units, from which samples will be taken around each sampling point

    - #### geometryBuffer

          public R2GeometryBufferUsableType geometryBuffer()

      Specified by:
        `geometryBuffer` in interface `R2FilterSSAOParametersType`
      Returns:
        The geometry buffer that will be sampled

    - #### outputBuffer

          public R2AmbientOcclusionBufferUsableType outputBuffer()

      Specified by:
        `outputBuffer` in interface `R2FilterSSAOParametersType`
      Returns:
        The ambient occlusion buffer that will contain the results of the filter operation

    - #### sceneObserverValues

          public R2MatricesObserverValuesType sceneObserverValues()

      Specified by:
        `sceneObserverValues` in interface `R2FilterSSAOParametersType`
      Returns:
        The observer values that were used to produce the original scene

    - #### withExponent

          public final R2FilterSSAOParameters withExponent(float value)

      Copy the current immutable object by setting a value for the `exponent` attribute. A value strict bits equality used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for exponent
      Returns:
        A modified copy of the `this` object

    - #### withNoiseTexture

          public final R2FilterSSAOParameters withNoiseTexture(R2Texture2DUsableType value)

      Copy the current immutable object by setting a value for the `noiseTexture` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for noiseTexture
      Returns:
        A modified copy of the `this` object

    - #### withKernel

          public final R2FilterSSAOParameters withKernel(R2SSAOKernelType value)

      Copy the current immutable object by setting a value for the `kernel` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for kernel
      Returns:
        A modified copy of the `this` object

    - #### withSampleRadius

          public final R2FilterSSAOParameters withSampleRadius(float value)

      Copy the current immutable object by setting a value for the `sampleRadius` attribute. A value strict bits equality used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for sampleRadius
      Returns:
        A modified copy of the `this` object

    - #### withGeometryBuffer

          public final R2FilterSSAOParameters withGeometryBuffer(R2GeometryBufferUsableType value)

      Copy the current immutable object by setting a value for the `geometryBuffer` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for geometryBuffer
      Returns:
        A modified copy of the `this` object

    - #### withOutputBuffer

          public final R2FilterSSAOParameters withOutputBuffer(R2AmbientOcclusionBufferUsableType value)

      Copy the current immutable object by setting a value for the `outputBuffer` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for outputBuffer
      Returns:
        A modified copy of the `this` object

    - #### withSceneObserverValues

          public final R2FilterSSAOParameters withSceneObserverValues(R2MatricesObserverValuesType value)

      Copy the current immutable object by setting a value for the `sceneObserverValues` attribute. A shallow reference equality check is used to prevent copying of the same value by returning `this`.
      Parameters:
        `value` - A new value for sceneObserverValues
      Returns:
        A modified copy of the `this` object

    - #### equals

          public boolean equals(Object another)

      This instance is equal to all instances of `R2FilterSSAOParameters` that have equal attribute values.
      Overrides:
        `equals` in class `Object`
      Returns:
        `true` if `this` is equal to `another` instance

    - #### hashCode

          public int hashCode()

      Computes a hash code from attributes: `exponent`, `noiseTexture`, `kernel`, `sampleRadius`, `geometryBuffer`, `outputBuffer`, `sceneObserverValues`.
      Overrides:
        `hashCode` in class `Object`
      Returns:
        hashCode value

    - #### toString

          public String toString()

      Prints the immutable value `R2FilterSSAOParameters` with attribute values.
      Overrides:
        `toString` in class `Object`
      Returns:
        A string representation of the value

    - #### of

          public static R2FilterSSAOParameters of(float exponent,
                                                  R2Texture2DUsableType noiseTexture,
                                                  R2SSAOKernelType kernel,
                                                  float sampleRadius,
                                                  R2GeometryBufferUsableType geometryBuffer,
                                                  R2AmbientOcclusionBufferUsableType outputBuffer,
                                                  R2MatricesObserverValuesType sceneObserverValues)

      Construct a new immutable `R2FilterSSAOParameters` instance.
      Parameters:
        `exponent` - The value for the `exponent` attribute
        `noiseTexture` - The value for the `noiseTexture` attribute
        `kernel` - The value for the `kernel` attribute
        `sampleRadius` - The value for the `sampleRadius` attribute
        `geometryBuffer` - The value for the `geometryBuffer` attribute
        `outputBuffer` - The value for the `outputBuffer` attribute
        `sceneObserverValues` - The value for the `sceneObserverValues` attribute
      Returns:
        An immutable R2FilterSSAOParameters instance

    - #### copyOf

          public static R2FilterSSAOParameters copyOf(R2FilterSSAOParametersType instance)

      Creates an immutable copy of a `R2FilterSSAOParametersType` value. Uses accessors to get values to initialize the new immutable instance. If an instance is already immutable, it is returned as is.
      Parameters:
        `instance` - The instance to copy
      Returns:
        A copied immutable R2FilterSSAOParameters instance

    - #### builder

          public static R2FilterSSAOParameters.Builder builder()

      Creates a builder for `R2FilterSSAOParameters`.
      Returns:
        A new R2FilterSSAOParameters builder

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