public static final class R2ShaderParametersMaterial.Builder<M> extends Object
R2ShaderParametersMaterial
.
Initialize attributes and then invoke the build()
method to create an
immutable instance.
Builder
is not thread-safe and generally should not be stored in a field or collection,
but instead used immediately to create instances.
Modifier and Type | Method and Description |
---|---|
R2ShaderParametersMaterial<M> |
build()
Builds a new
R2ShaderParametersMaterial . |
R2ShaderParametersMaterial.Builder<M> |
from(R2ShaderParametersMaterialType<M> instance)
Fill a builder with attribute values from the provided
R2ShaderParametersMaterialType instance. |
R2ShaderParametersMaterial.Builder<M> |
setTextureUnitContext(com.io7m.jcanephora.texture.unit_allocator.JCGLTextureUnitContextMutableType textureUnitContext)
Initializes the value for the
textureUnitContext attribute. |
R2ShaderParametersMaterial.Builder<M> |
setValues(M values)
Initializes the value for the
values attribute. |
public final R2ShaderParametersMaterial.Builder<M> from(R2ShaderParametersMaterialType<M> instance)
R2ShaderParametersMaterialType
instance.
Regular attribute values will be replaced with those from the given instance.
Absent optional values will not replace present values.instance
- The instance from which to copy valuesthis
builder for use in a chained invocationpublic final R2ShaderParametersMaterial.Builder<M> setTextureUnitContext(com.io7m.jcanephora.texture.unit_allocator.JCGLTextureUnitContextMutableType textureUnitContext)
textureUnitContext
attribute.textureUnitContext
- The value for textureUnitContextthis
builder for use in a chained invocationpublic final R2ShaderParametersMaterial.Builder<M> setValues(M values)
values
attribute.values
- The value for valuesthis
builder for use in a chained invocationpublic R2ShaderParametersMaterial<M> build()
R2ShaderParametersMaterial
.IllegalStateException
- if any required attributes are missingCopyright © 2017 <code@io7m.com> http://io7m.com