Skip to content

Kuesa::Qt3D::MetallicRoughnessMaterial

Module: Kuesa Qt 3D API

Kuesa::Qt3D::MetallicRoughnessMaterial is a ready to use physically based rendering (PBR) material based on the glTF 2.0 material description. More...

#include <Kuesa/Qt3D/api/materials/metallicroughnessmaterial.h>

Inherits from Kuesa::Qt3D::GLTF2Material, Qt3DRender::QMaterial

Public Slots

Name
void setMaterialProperties(Kuesa::Qt3D::MetallicRoughnessProperties * materialProperties)

Public Signals

Name
void materialPropertiesChanged(Kuesa::Qt3D::MetallicRoughnessProperties * materialProperties)

Public Functions

Name
MetallicRoughnessMaterial(Qt3DCore::QNode * parent =nullptr)
~MetallicRoughnessMaterial()
MetallicRoughnessProperties * materialProperties() const

Public Properties

Name
MetallicRoughnessProperties * materialProperties

Additional inherited members

Public Slots inherited from Kuesa::Qt3D::GLTF2Material

Name
void setMorphController(Kuesa::Qt3D::MorphController * morphController)

Public Signals inherited from Kuesa::Qt3D::GLTF2Material

Name
void morphControllerChanged(Kuesa::Qt3D::MorphController * morphController)

Public Functions inherited from Kuesa::Qt3D::GLTF2Material

Name
~GLTF2Material()
MorphController * morphController() const

Protected Functions inherited from Kuesa::Qt3D::GLTF2Material

Name
GLTF2Material(Qt3DCore::QNode * parent =nullptr)
void setShadowMapDepthTexture(Qt3DRender::QAbstractTexture * depthTexture)
void setShadowMapCubeDepthTexture(Qt3DRender::QAbstractTexture * cubeDepthTexture)

Public Properties inherited from Kuesa::Qt3D::GLTF2Material

Name
Kuesa::Qt3D::MorphController * morphController

Protected Attributes inherited from Kuesa::Qt3D::GLTF2Material

Name
Qt3DRender::QParameter * m_morphControllerParameter
Qt3DRender::QParameter * m_textureTransformParameter
Qt3DRender::QParameter * m_shadowMapDepthTextureParameter
Qt3DRender::QParameter * m_shadowMapCubeDepthTextureParameter

Detailed Description

1
class Kuesa::Qt3D::MetallicRoughnessMaterial;

Kuesa::Qt3D::MetallicRoughnessMaterial is a ready to use physically based rendering (PBR) material based on the glTF 2.0 material description.

See: Kuesa::Qt3D::MetallicRoughnessProperties

Since: Kuesa 2.0

Note:

  • Kuesa::Qt3D::MetallicRoughnessMaterial is implemented using a custom shader graph. Some changes in the properties will activate or deactivate some nodes of the shader graph and will trigger a recompilation of the shader. It is recommended to create the variations of the material that you need once up front at application initialisation time.
  • The effect behind this material needs a brdfLut texture. If the brdfLut texture in the effect is not set and the material is added to a subtree of a Kuesa::Qt3D::SceneEntity, it will look for the Kuesa::Qt3D::SceneEntity and will use the brdfLut texture in the texture collection.

It is configured through the set of properties held on the MetallicRoughnessProperties instance it can receive.

Public Slots Documentation

slot setMaterialProperties

1
2
3
void setMaterialProperties(
    Kuesa::Qt3D::MetallicRoughnessProperties * materialProperties
)

Public Signals Documentation

signal materialPropertiesChanged

1
2
3
void materialPropertiesChanged(
    Kuesa::Qt3D::MetallicRoughnessProperties * materialProperties
)

Public Functions Documentation

function MetallicRoughnessMaterial

1
2
3
explicit MetallicRoughnessMaterial(
    Qt3DCore::QNode * parent =nullptr
)

function ~MetallicRoughnessMaterial

1
~MetallicRoughnessMaterial()

function materialProperties

1
MetallicRoughnessProperties * materialProperties() const

Public Property Documentation

property materialProperties

1
MetallicRoughnessProperties * materialProperties;

Since: Kuesa 2.0

The properties defining the appearance of the material.


Updated on 2022-10-18 at 11:12:52 +0200