8.2 Material schema
8.2.1 Overview
This is the documentation about the JSON schema file. The actual file is located in the ASAM OpenMATERIAL 3D GitHub repository.
The following diagram shows the hierarchy of the fields defined in this schema. Fields marked with (R) are required. A field can be optional while some of its children are required. In that case, the required children only have to be filled in if the optional parent field is present.
8.2.2 metadata
The key meta information about the material properties.
Type: object
Required: Yes
8.2.2.1 name
The display name of the material, such as 'Red brick' or 'Dark asphalt'.
Type: string
Required: Yes
8.2.2.2 description
Short description of the material in two to three sentences.
Type: string
Required: No
8.2.2.3 uuid
Universally unique identifier for the material in 8-4-4-4-12 format, see [12]. The uuid stays the same, even if version is updated.
Type: string
Pattern: \b[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}\b$
Required: Yes
8.2.2.4 materialVersion
The version number of the material, following semantic versioning (for example, '1.0.0').
Type: string
Pattern: ^\d+\.\d+\.\d+$
Required: Yes
8.2.2.5 openMaterial3dVersion
The version of the ASAM OpenMATERIAL 3D specification used, adhering to semantic versioning (for example, '1.0.0').
Type: string
Pattern: ^\d+\.\d+\.\d+$
Required: Yes
8.2.2.6 copyrights
Indicates copyright details, including the year and copyright holder (for example, '© 2024 ACME Inc.').
Type: array
Item count: at least 1
Item type: string
Required: Yes
8.2.2.7 license
Describes the license for material distribution. Use an SPDX identifier for open-source licenses (for example, 'MIT'), or provide a URL or filename for proprietary licenses.
Type: string
Required: Yes
8.2.2.8 authors
Lists the author(s) of the material as a name, email, or company.
Type: array
Item count: at least 1
Item type: string
Required: Yes
8.2.2.9 creationDate
The date and time of material creation, formatted as YYYYMMDDTHHMMSSZ according to ISO 8601 [8] (for example, '20240703T101728Z').
Type: string
Pattern: ^\d{8}T\d{6}Z$
Required: No
8.2.3 materialProperties
Properties related to the material.
Type: object
Required: Yes
8.2.3.1 surfaceRoughness
Information about the surface roughness of the material.
Type: object
Required: No
8.2.3.1.1 surfaceHeightRms
Root mean square of the surface height deviations, also called RMS roughness. This is a vertical measure of roughness. Unit: meter (m).
Type: number
Range: [0, inf[
Required: Yes
8.2.3.2 emissivityData
Emissivity data of the material.
Type: object
Required: No
8.2.3.2.1 emissivityCoefficient
Emissivity describes the ability to emit energy as thermal radiation. It is given as the fraction of thermal radiation emitted by a surface relative to the radiation emitted by an ideal black body at the same temperature. The hemispherical total emissivity is used here, which considers the full emission over all wavelengths, directions, and polarizations at one particular temperature: ε(T).
Type: number
Range: [0, 1]
Required: Yes
8.2.3.3 elasticityData
Information about the elasticity of the material.
Type: object
Required: No
8.2.3.3.1 youngsModulus
Young’s modulus of the material. Unit: pascal (Pa). The upper limit corresponds to the Young’s modulus of a diamond.
Type: number
Range: [0, 1500000000000]
Required: Yes
8.2.3.4 densityData
Information about the density of the material.
Type: object
Required: No
8.2.3.5 retroreflectivityData
Information about the retroreflective properties of the material in the visible light spectrum.
Type: object
Required: No
8.2.3.6 electromagneticPropertiesUri
Relative or absolute file path to a property look-up table file with electromagnetic material properties. For cross-platform compatibility, Unix-style paths are recommended.
Type: string
Pattern: .*_emp\.xompt$
Required: No
8.2.3.7 opticalPropertiesUri
Relative or absolute file path to a property look-up table file with optical material properties. For cross-platform compatibility, Unix-style paths are recommended.
Type: string
Pattern: .*_optical\.xompt$
Required: No
8.2.3.8 brdfUris
Relative or absolute file paths to one or multiple property look-up table files with wavelength-dependent bidirectional reflectance distribution functions. For cross-platform compatibility, Unix-style paths are recommended.
Type: array
Item type: string
Item pattern: .*_brdf\.xompt$
Required: No
8.2.3.9 reflectionCoefficientUris
Relative or absolute file paths to one or multiple property look-up table files with wavelength-dependent reflection coefficient values. For cross-platform compatibility, Unix-style paths are recommended.
Type: array
Item type: string
Item pattern: .*_reflCoeff\.xompt$
Required: No