# IMaterial

class `IMaterial`()

  An interface describing a material. The input and output of material operations

  ## Index

  Properties

  - `ambientColor`
  - `colorMap`
  - `emissiveColor`
  - `emissiveMap`
  - `faceColor`
  - `isPbr`
  - `lineColor`
  - `linePattern`
  - `linePatternLength`
  - `linePatternLengthUnit`
  - `metallic`
  - `metallicRoughnessMap`
  - `normalMap`
  - `occlusionMap`
  - `opacity`
  - `pointColor`
  - `roughness`
  - `specularColor`
  - `specularIntensity`
  - `textureFlags`
  - `textureMatrix`

## Properties

`IMaterial.``ambientColor`

  optional

  ambientColor: `Color`

  Ambient light color contribution

`IMaterial.``colorMap`

  optional

  colorMap: `ImageId`

  Base color texture map

`IMaterial.``emissiveColor`

  optional

  emissiveColor: `Color`

  Color emitted by the material

`IMaterial.``emissiveMap`

  optional

  emissiveMap: `ImageId`

  Emissive texture map

`IMaterial.``faceColor`

  optional

  faceColor: `Color`

  Color applied to face geometry

`IMaterial.``isPbr`

  optional

  isPbr: boolean

  Whether this material uses physically-based rendering (PBR)

`IMaterial.``lineColor`

  optional

  lineColor: `Color`

  Color applied to line geometry

`IMaterial.``linePattern`

  optional

  linePattern: number[]

  Array of dash/gap lengths defining line pattern

`IMaterial.``linePatternLength`

  optional

  linePatternLength: number

  Total length of the line pattern

`IMaterial.``linePatternLengthUnit`

  optional

  linePatternLengthUnit: `LinePatternLengthUnit`

  Unit of measurement for line pattern length

`IMaterial.``metallic`

  optional

  metallic: number

  Metallic factor for PBR materials (0.0 = dielectric, 1.0 = metallic)

`IMaterial.``metallicRoughnessMap`

  optional

  metallicRoughnessMap: `ImageId`

  Metallic and roughness values texture map

`IMaterial.``normalMap`

  optional

  normalMap: `ImageId`

  Normal map for surface detail

`IMaterial.``occlusionMap`

  optional

  occlusionMap: `ImageId`

  Ambient occlusion texture map

`IMaterial.``opacity`

  optional

  opacity: number

  Material opacity (0.0 = transparent, 1.0 = opaque)

`IMaterial.``pointColor`

  optional

  pointColor: `Color`

  Color applied to point geometry

`IMaterial.``roughness`

  optional

  roughness: number

  Surface roughness for PBR materials (0.0 = mirror, 1.0 = completely rough)

`IMaterial.``specularColor`

  optional

  specularColor: `Color`

  Color of specular highlights

`IMaterial.``specularIntensity`

  optional

  specularIntensity: number

  Intensity of specular reflections

`IMaterial.``textureFlags`

  optional

  textureFlags: `TextureFlags`

`IMaterial.``textureMatrix`

  optional

  textureMatrix: `Matrix`

Conversation saved
HOOPSY BETA

### Hello! I'm HOOPSY

Your Docs generative AI assistant. Ask me anything about HOOPS Visualize Web or choose a sample question below to start a conversation:

What is HOOPS Visualize Web?
What are the latest release notes for HOOPS Visualize Web?
How do I start evaluating HOOPS Visualize Web?
How do I write my first sample application?
How can I get assistance?

HOOPSY may store conversations according to OpenAI's policy. Responses may not always be accurate.

HOOPSY is thinking...