Skip to content

Kuesa::Qt3D::UnlitProperties

Module: Kuesa Qt 3D API

Kuesa::Qt3D::UnlitProperties hold the properties of a simple material without shading. It implements the KHR_materials_unlit extension from glTF 2.0. More...

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

Inherits from Kuesa::Qt3D::GLTF2MaterialProperties, Qt3DCore::QNode

Public Functions

Name
UnlitProperties(Qt3DCore::QNode * parent =nullptr)
~UnlitProperties()

Friends

Name
class UnlitMaterial

Additional inherited members

Public Types inherited from Kuesa::Qt3D::GLTF2MaterialProperties

Name
enum class ColorSpace { Linear, sRGB}

Public Slots inherited from Kuesa::Qt3D::GLTF2MaterialProperties

Name
void setBaseColorUsesTexCoord1(bool baseColorUsesTexCoord1)
void setBaseColorFactor(const QColor & baseColorFactor)
void setBaseColorMap(Qt3DRender::QAbstractTexture * baseColorMap)
void setAlphaCutoff(float alphaCutoff)
void setOutputColorSpace(ColorSpace colorSpace)
void setReceivesShadows(bool receivesShadows)
void setShadowMapDepthTexture(Qt3DRender::QAbstractTexture * depthTexture)
void setShadowMapCubeDepthTexture(Qt3DRender::QAbstractTexture * cubeMapDepthTexture)

Public Signals inherited from Kuesa::Qt3D::GLTF2MaterialProperties

Name
void baseColorUsesTexCoord1Changed(bool )
void baseColorFactorChanged(const QColor & baseColorFactor)
void baseColorMapChanged(Qt3DRender::QAbstractTexture * baseColorMap)
void alphaCutoffChanged(float alphaCutoff)
void receivesShadowsChanged(bool receivesShadows)
void shadowMapDepthTextureChanged(Qt3DRender::QAbstractTexture * depthTexture)
void shadowMapCubeDepthTextureChanged(Qt3DRender::QAbstractTexture * cubeMapDepthTexture)
void outputColorSpaceChanged(ColorSpace colorSpace)

Public Functions inherited from Kuesa::Qt3D::GLTF2MaterialProperties

Name
GLTF2MaterialProperties(Qt3DCore::QNode * parent =nullptr)
~GLTF2MaterialProperties()
bool isBaseColorUsingTexCoord1() const
QColor baseColorFactor() const
Qt3DRender::QAbstractTexture * baseColorMap() const
float alphaCutoff() const
ColorSpace outputColorSpace() const
void addClientMaterial(Qt3DRender::QMaterial * material)
QVector< Qt3DRender::QMaterial * > clientMaterials() const
bool receivesShadows() const
Qt3DRender::QAbstractTexture * shadowMapDepthTexture() const
Qt3DRender::QAbstractTexture * shadowMapCubeDepthTexture() const

Public Properties inherited from Kuesa::Qt3D::GLTF2MaterialProperties

Name
bool baseColorUsesTexCoord1
QColor baseColorFactor
Qt3DRender::QAbstractTexture * baseColorMap
float alphaCutoff
bool receivesShadows
ColorSpace outputColorSpace

Detailed Description

1
class Kuesa::Qt3D::UnlitProperties;

Kuesa::Qt3D::UnlitProperties hold the properties of a simple material without shading. It implements the KHR_materials_unlit extension from glTF 2.0.

Since: Kuesa 2.0

The UnlitProperties consists of the following properties:

  • baseColorFactor: Base color of the::include material
  • baseColorMap: A texture specifying the base color of the material
  • textureTransform: Allows to transform (scale, translate, rotate) a texture.

For a particular point of an object, the base color is computed as baseColorFactorbaseColorMapvertexColor. The vertexColor is the interpolated value of the vertex color property of the mesh to which the material is applied.

Kuesa::Qt3D::UnlitProperties also supports alpha blending and alpha cutoff. Alpha blending is used to simulate transparent materials, like a glass, while alpha cutoff is used to discard fragment that have an alpha value below a threshold. This is useful to render grass or trees for example.

Kuesa::Qt3D::UnlitProperties supports two texture coordinate sets for each map. To specify the texture coordinate set a map must use, you can set the UsesTexCoord1 property to true or false. If it's false, it will use the 0th coordinate set of the primitive, attached to 'defaultTextureCoordinateAttributeNameattribute. If it's true, it will use the 1st coordinate set of the primitive, attached to 'defaultTextureCoordinate1AttributeName.

A more complete description of the material can be found in https://github.com/KhronosGroup/glTF/tree/master/extensions/2.0/Khronos/KHR_materials_unlit

Public Functions Documentation

function UnlitProperties

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

function ~UnlitProperties

1
~UnlitProperties()

Friends

friend UnlitMaterial

1
2
3
friend class UnlitMaterial(
    UnlitMaterial 
);

Updated on 2023-07-03 at 11:02:09 +0000