ARKitMaterial class
An ARKitMaterial determines how a geometry is rendered. It encapsulates the colors and textures that define the appearance of 3d geometries.
- Annotations
-
- @JsonSerializable()
Constructors
- ARKitMaterial({ARKitMaterialProperty? diffuse, ARKitMaterialProperty? ambient, ARKitMaterialProperty? specular, ARKitMaterialProperty? emission, ARKitMaterialProperty? transparent, ARKitMaterialProperty? reflective, ARKitMaterialProperty? multiply, ARKitMaterialProperty? normal, ARKitMaterialProperty? displacement, ARKitMaterialProperty? ambientOcclusion, ARKitMaterialProperty? selfIllumination, ARKitMaterialProperty? metalness, ARKitMaterialProperty? roughness, double? shininess = 1.0, double? transparency = 1.0, ARKitLightingModel? lightingModelName = ARKitLightingModel.blinn, ARKitFillMode? fillMode = ARKitFillMode.fill, ARKitCullMode? cullMode = ARKitCullMode.back, ARKitTransparencyMode? transparencyMode = ARKitTransparencyMode.aOne, bool? locksAmbientWithDiffuse = true, bool? writesToDepthBuffer = true, ARKitColorMask? colorBufferWriteMask = ARKitColorMask.all, bool? doubleSided = false, ARKitBlendMode? blendMode = ARKitBlendMode.alpha})
Properties
- ambient → ARKitMaterialProperty?
-
Specifies the receiver's ambient property.
The ambient property specifies the amount of ambient light to reflect.
This property has no visual impact on scenes that have no ambient light.
Setting the ambient has no effect if locksAmbientWithDiffuse is set to YES.
final
- ambientOcclusion → ARKitMaterialProperty?
-
The ambientOcclusion property specifies the ambient occlusion of the surface.
The ambient occlusion is multiplied with the ambient light, then the result is added to the lighting contribution.
This property has no visual impact on scenes that have no ambient light.
When an ambient occlusion map is set, the ambient property is ignored.
final
- blendMode → ARKitBlendMode?
-
Specifies the receiver's blend mode. Defaults to ARKitBlendMode.alpha.
final
- colorBufferWriteMask → ARKitColorMask?
-
Determines whether the receiver writes to the color buffer when rendered. Defaults to ARKitColorMask.all.
final
- cullMode → ARKitCullMode?
-
Determines the culling mode of the receiver. Defaults to ARKitCullMode.back;
final
- diffuse → ARKitMaterialProperty?
-
Specifies the receiver's diffuse property.
The diffuse property specifies the amount of light diffusely reflected
from the surface. The diffuse light is reflected equally in all directions and is
therefore independent of the point of view.
final
- displacement → ARKitMaterialProperty?
-
The displacement property specifies how vertex are translated in tangent space.
Pass a grayscale image for a simple 'elevation' or rgb image for a vector displacement.
final
- doubleSided → bool?
-
Determines whether the receiver is double sided. Defaults to false.
final
- emission → ARKitMaterialProperty?
-
The emission property specifies the amount of light the material emits.
This emission does not light up other surfaces in the scene.
final
- fillMode → ARKitFillMode?
-
Determines of to how to rasterize the receiver's primitives. Defaults to ARKitFillMode.fill.
final
- hashCode → int
-
The hash code for this object.
no setterinherited
- lightingModelName → ARKitLightingModel?
-
Determines the receiver's lighting model.
Defaults to ARKitLightingModel.blinn.
final
- locksAmbientWithDiffuse → bool?
-
Makes the ambient property automatically match the diffuse property. Defaults to true.
final
- metalness → ARKitMaterialProperty?
-
The metalness property specifies how metallic the material's surface appears.
Lower values (darker colors) cause the material to appear more like a dielectric surface.
Higher values (brighter colors) cause the surface to appear more metallic.
This property is only used when 'lightingModelName' is 'SCNLightingModelPhysicallyBased'.
final
- multiply → ARKitMaterialProperty?
-
The multiply property specifies a color or an image used to multiply the output fragments with.
The computed fragments are multiplied with the multiply value to produce the final fragments.
This property may be used for shadow maps, to fade out or tint 3d objects.
final
- normal → ARKitMaterialProperty?
-
The normal property specifies the surface orientation.
When an image is set on the normal property the material is automatically lit per pixel.
Setting a color has no effect.
final
- reflective → ARKitMaterialProperty?
-
The reflective property specifies the reflectivity of the surface.
The surface will not actually reflect other objects in the scene.
This property may be used as a sphere mapping to reflect a precomputed environment.
final
- roughness → ARKitMaterialProperty?
-
The roughness property specifies the apparent smoothness of the surface.
Lower values (darker colors) cause the material to appear shiny, with well-defined specular highlights.
Higher values (brighter colors) cause specular highlights to spread out and the diffuse property of the material to become more retroreflective.
This property is only used when 'lightingModelName' is 'SCNLightingModelPhysicallyBased'.
final
- runtimeType → Type
-
A representation of the runtime type of the object.
no setterinherited
- selfIllumination → ARKitMaterialProperty?
-
The selfIllumination property specifies a texture or a color that is added to the lighting contribution of the surface.
When a selfIllumination is set, the emission property is ignored.
final
- shininess → double?
-
Specifies the receiver's shininess value. Defaults to 1.0.
final
- specular → ARKitMaterialProperty?
-
Specifies the receiver's specular property.
The specular property specifies the amount of light to reflect in a mirror-like manner.
The specular intensity increases when the point of view lines up with the direction of the reflected light.
final
- transparency → double?
-
Specifies the receiver's transparency value. Defaults to 1.0.
The color of the transparent property is multiplied by this property.
The result is then used to produce the final transparency according to the rule defined by the transparencyMode property.
final
- transparencyMode → ARKitTransparencyMode?
-
Determines the transparency mode of the receiver. Defaults to ARKitTransparencyMode.aOne.
final
- transparent → ARKitMaterialProperty?
-
The transparent property specifies the transparent areas of the material.
final
- writesToDepthBuffer → bool?
-
Determines whether the receiver writes to the depth buffer when rendered. Defaults to true.
final
Methods
-
noSuchMethod(
Invocation invocation) → dynamic -
Invoked when a nonexistent method or property is accessed.
inherited
-
toJson(
) → Map< String, dynamic> -
toString(
) → String -
A string representation of this object.
inherited
Operators
-
operator ==(
Object other) → bool -
The equality operator.
inherited
Static Methods
-
fromJson(
Map json) → ARKitMaterial