VisuTwin Canvas
C++ 3D Engine — Metal Backend
Loading...
Searching...
No Matches
visutwin::canvas::MaterialUniforms Struct Reference

#include <scene/materials/material.h>

Public Attributes

float alphaCutoff = 0.5f
float anisotropy = 0.0f
float baseColor [4] = {1.0f, 1.0f, 1.0f, 1.0f}
float baseColorTransform0 [4] = {1, 0, 0, 0}
float baseColorTransform1 [4] = {0, 1, 0, 0}
float clearCoatBumpiness = 1.0f
float clearCoatFactor = 0.0f
float clearCoatRoughness = 0.0f
float detailDisplacementParams [4] = {1, 0, 0.5f, 0}
float detailNormalTransform0 [4] = {1, 0, 0, 0}
float detailNormalTransform1 [4] = {0, 1, 0, 0}
float emissiveColor [4] = {0.0f, 0.0f, 0.0f, 1.0f}
float emissiveTransform0 [4] = {1, 0, 0, 0}
float emissiveTransform1 [4] = {0, 1, 0, 0}
uint32_t flags = 0u
float heightMapFactor = 0.0f
float iridescenceParams [4] = {0, 1.3f, 100.0f, 400.0f}
float metallicFactor = 0.0f
float metalRoughTransform0 [4] = {1, 0, 0, 0}
float metalRoughTransform1 [4] = {0, 1, 0, 0}
float normalScale = 1.0f
float normalTransform0 [4] = {1, 0, 0, 0}
float normalTransform1 [4] = {0, 1, 0, 0}
float occludeSpecularIntensity = 1.0f
uint32_t occludeSpecularMode = SPECOCC_AO
float occlusionStrength = 1.0f
float occlusionTransform0 [4] = {1, 0, 0, 0}
float occlusionTransform1 [4] = {0, 1, 0, 0}
float refractionIndex = 1.5f
float roughnessFactor = 1.0f
float sheenColor [4] = {0, 0, 0, 0}
float specGlossParams [4] = {1, 1, 1, 1}
float thickness = 0.0f
float transmissionFactor = 0.0f

Detailed Description

GPU-side material uniform buffer layout. Must match MaterialData in common.metal exactly.

Definition at line 61 of file material.h.

Member Data Documentation

◆ alphaCutoff

float visutwin::canvas::MaterialUniforms::alphaCutoff = 0.5f

Definition at line 67 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ anisotropy

float visutwin::canvas::MaterialUniforms::anisotropy = 0.0f

◆ baseColor

float visutwin::canvas::MaterialUniforms::baseColor[4] = {1.0f, 1.0f, 1.0f, 1.0f}

◆ baseColorTransform0

float visutwin::canvas::MaterialUniforms::baseColorTransform0[4] = {1, 0, 0, 0}

Definition at line 80 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ baseColorTransform1

float visutwin::canvas::MaterialUniforms::baseColorTransform1[4] = {0, 1, 0, 0}

Definition at line 81 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ clearCoatBumpiness

float visutwin::canvas::MaterialUniforms::clearCoatBumpiness = 1.0f

Definition at line 95 of file material.h.

Referenced by visutwin::canvas::StandardMaterial::updateUniforms().

◆ clearCoatFactor

float visutwin::canvas::MaterialUniforms::clearCoatFactor = 0.0f

Definition at line 93 of file material.h.

Referenced by visutwin::canvas::StandardMaterial::updateUniforms().

◆ clearCoatRoughness

float visutwin::canvas::MaterialUniforms::clearCoatRoughness = 0.0f

Definition at line 94 of file material.h.

Referenced by visutwin::canvas::StandardMaterial::updateUniforms().

◆ detailDisplacementParams

float visutwin::canvas::MaterialUniforms::detailDisplacementParams[4] = {1, 0, 0.5f, 0}

◆ detailNormalTransform0

float visutwin::canvas::MaterialUniforms::detailNormalTransform0[4] = {1, 0, 0, 0}

Definition at line 120 of file material.h.

Referenced by visutwin::canvas::StandardMaterial::updateUniforms().

◆ detailNormalTransform1

float visutwin::canvas::MaterialUniforms::detailNormalTransform1[4] = {0, 1, 0, 0}

Definition at line 121 of file material.h.

Referenced by visutwin::canvas::StandardMaterial::updateUniforms().

◆ emissiveColor

float visutwin::canvas::MaterialUniforms::emissiveColor[4] = {0.0f, 0.0f, 0.0f, 1.0f}

◆ emissiveTransform0

float visutwin::canvas::MaterialUniforms::emissiveTransform0[4] = {1, 0, 0, 0}

Definition at line 88 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ emissiveTransform1

float visutwin::canvas::MaterialUniforms::emissiveTransform1[4] = {0, 1, 0, 0}

Definition at line 89 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ flags

uint32_t visutwin::canvas::MaterialUniforms::flags = 0u

◆ heightMapFactor

float visutwin::canvas::MaterialUniforms::heightMapFactor = 0.0f

◆ iridescenceParams

float visutwin::canvas::MaterialUniforms::iridescenceParams[4] = {0, 1.3f, 100.0f, 400.0f}

◆ metallicFactor

float visutwin::canvas::MaterialUniforms::metallicFactor = 0.0f

◆ metalRoughTransform0

float visutwin::canvas::MaterialUniforms::metalRoughTransform0[4] = {1, 0, 0, 0}

Definition at line 84 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ metalRoughTransform1

float visutwin::canvas::MaterialUniforms::metalRoughTransform1[4] = {0, 1, 0, 0}

Definition at line 85 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ normalScale

float visutwin::canvas::MaterialUniforms::normalScale = 1.0f

◆ normalTransform0

float visutwin::canvas::MaterialUniforms::normalTransform0[4] = {1, 0, 0, 0}

Definition at line 82 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ normalTransform1

float visutwin::canvas::MaterialUniforms::normalTransform1[4] = {0, 1, 0, 0}

Definition at line 83 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ occludeSpecularIntensity

float visutwin::canvas::MaterialUniforms::occludeSpecularIntensity = 1.0f

Definition at line 72 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ occludeSpecularMode

uint32_t visutwin::canvas::MaterialUniforms::occludeSpecularMode = SPECOCC_AO

Definition at line 66 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ occlusionStrength

float visutwin::canvas::MaterialUniforms::occlusionStrength = 1.0f

Definition at line 71 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ occlusionTransform0

float visutwin::canvas::MaterialUniforms::occlusionTransform0[4] = {1, 0, 0, 0}

Definition at line 86 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ occlusionTransform1

float visutwin::canvas::MaterialUniforms::occlusionTransform1[4] = {0, 1, 0, 0}

Definition at line 87 of file material.h.

Referenced by visutwin::canvas::Material::updateUniforms().

◆ refractionIndex

float visutwin::canvas::MaterialUniforms::refractionIndex = 1.5f

◆ roughnessFactor

float visutwin::canvas::MaterialUniforms::roughnessFactor = 1.0f

◆ sheenColor

float visutwin::canvas::MaterialUniforms::sheenColor[4] = {0, 0, 0, 0}

◆ specGlossParams

float visutwin::canvas::MaterialUniforms::specGlossParams[4] = {1, 1, 1, 1}

◆ thickness

float visutwin::canvas::MaterialUniforms::thickness = 0.0f

◆ transmissionFactor

float visutwin::canvas::MaterialUniforms::transmissionFactor = 0.0f

The documentation for this struct was generated from the following file: