com.io7m.r2.core

## Interface R2MaterialType<M>

- Type Parameters:
    `M` - The type of shader parameters
  All Known Subinterfaces:
    R2MaterialDepthBatchedType<M>, R2MaterialDepthSingleType<M>, R2MaterialOpaqueBatchedType<M>, R2MaterialOpaqueBillboardedType<M>, R2MaterialOpaqueSingleType<M>
  All Known Implementing Classes:
    R2MaterialDepthBatched, R2MaterialDepthSingle, R2MaterialOpaqueBatched, R2MaterialOpaqueBillboarded, R2MaterialOpaqueSingle

      public interface R2MaterialType<M>

  The base type of materials. A material associates a shader with a set of shader parameters.

- - ### Method Summary

    All Methods Instance Methods Abstract Methods
    Modifier and Type | Method and Description
    --- | ---
    `long` | `materialID()`
    `R2ShaderUsableType<M>` | `shader()`
    `M` | `shaderParameters()`

- - ### Method Detail

    - #### materialID

          long materialID()

      Returns:
        The material ID

    - #### shaderParameters

          M shaderParameters()

      Returns:
        The shader parameters

    - #### shader

          R2ShaderUsableType<M> shader()

      Returns:
        The material shader

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