Qt 6.x
The Qt SDK
Loading...
Searching...
No Matches
QSSGRenderDefaultMaterial Struct Reference

#include <qssgrenderdefaultmaterial_p.h>

+ Inheritance diagram for QSSGRenderDefaultMaterial:
+ Collaboration diagram for QSSGRenderDefaultMaterial:

Public Types

enum class  MaterialLighting : quint8 { NoLighting = 0 , FragmentLighting }
 
enum class  MaterialBlendMode : quint8 { SourceOver = 0 , Screen , Multiply }
 
enum class  MaterialSpecularModel : quint8 { Default = 0 , KGGX }
 
enum  MaterialAlphaMode : quint8 { Default = 0 , Mask , Blend , Opaque }
 
enum  TextureChannelMapping : quint8 { R = 0 , G , B , A }
 
- Public Types inherited from QSSGRenderGraphObject
enum  BaseType : quint16 {
  Node = 0x10 , Light = 0x20 , Camera = 0x40 , Renderable = 0x80 ,
  Resource = 0x100 , Material = 0x200 , Texture = 0x400 , Extension = 0x800
}
 
enum class  Type : quint16 {
  Unknown = 0 , Node = BaseType::Node , Layer , Joint ,
  Skeleton , ImportScene , ReflectionProbe , DirectionalLight = BaseType::Light | BaseType::Node ,
  PointLight , SpotLight , OrthographicCamera = BaseType::Camera | BaseType::Node , PerspectiveCamera ,
  CustomFrustumCamera , CustomCamera , Model = BaseType::Renderable | BaseType::Node , Item2D ,
  Particles , SceneEnvironment = BaseType::Resource , Effect , Geometry ,
  TextureData , MorphTarget , ModelInstance , ModelBlendParticle ,
  ResourceLoader , DefaultMaterial = BaseType::Material | BaseType::Resource , PrincipledMaterial , CustomMaterial ,
  SpecularGlossyMaterial , Skin , Image2D = BaseType::Texture | BaseType::Resource , ImageCube ,
  RenderExtension = BaseType::Extension
}
 

Public Member Functions

 QSSGRenderDefaultMaterial (Type type=Type::DefaultMaterial)
 
 ~QSSGRenderDefaultMaterial ()
 
bool isSpecularEnabled () const
 
bool isMetalnessEnabled () const
 
bool isFresnelEnabled () const
 
bool isVertexColorsEnabled () const
 
bool hasLighting () const
 
bool isClearcoatEnabled () const
 
bool isTransmissionEnabled () const
 
bool isDirty () const
 
void clearDirty ()
 
- Public Member Functions inherited from QSSGRenderGraphObject
Q_QUICK3D_PROFILE_ID QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType)
 
virtual ~QSSGRenderGraphObject ()
 

Public Attributes

QSSGRenderImagecolorMap = nullptr
 
QSSGRenderImageiblProbe = nullptr
 
QSSGRenderImageemissiveMap = nullptr
 
QSSGRenderImagespecularReflection = nullptr
 
QSSGRenderImagespecularMap = nullptr
 
QSSGRenderImageroughnessMap = nullptr
 
QSSGRenderImageopacityMap = nullptr
 
QSSGRenderImagebumpMap = nullptr
 
QSSGRenderImagenormalMap = nullptr
 
QSSGRenderImagetranslucencyMap = nullptr
 
QSSGRenderImagemetalnessMap = nullptr
 
QSSGRenderImageocclusionMap = nullptr
 
QSSGRenderImageheightMap = nullptr
 
QSSGRenderImageclearcoatMap = nullptr
 
QSSGRenderImageclearcoatRoughnessMap = nullptr
 
QSSGRenderImageclearcoatNormalMap = nullptr
 
QSSGRenderImagetransmissionMap = nullptr
 
QSSGRenderImagethicknessMap = nullptr
 
QVector3D specularTint { 1.0f, 1.0f, 1.0f }
 
float ior = 1.45f
 
QVector3D emissiveColor = { 1.0f, 1.0f, 1.0f }
 
QVector4D color { 1.0f, 1.0f, 1.0f, 1.0f }
 
float diffuseLightWrap = 0.0f
 
float fresnelPower = 0.0f
 
float specularAmount = 1.0f
 
float specularRoughness = 0.0f
 
float metalnessAmount = 0.0f
 
float opacity = 1.0f
 
float bumpAmount = 0.0f
 
float translucentFalloff = 0.0f
 
float occlusionAmount = 1.0f
 
float alphaCutoff = 0.5f
 
float heightAmount = 0.0f
 
int minHeightSamples = 8
 
int maxHeightSamples = 32
 
float clearcoatAmount = 0.0f
 
float clearcoatRoughnessAmount = 0.0f
 
float transmissionFactor = 0.0f
 
float thicknessFactor = 0.0f
 
float attenuationDistance = std::numeric_limits<float>::infinity()
 
QVector3D attenuationColor { 1.0f, 1.0f, 1.0f }
 
MaterialLighting lighting = MaterialLighting::FragmentLighting
 
QSSGRenderDefaultMaterial::MaterialBlendMode blendMode = QSSGRenderDefaultMaterial::MaterialBlendMode::SourceOver
 
QSSGRenderDefaultMaterial::MaterialSpecularModel specularModel = QSSGRenderDefaultMaterial::MaterialSpecularModel::Default
 
QSSGRenderDefaultMaterial::MaterialAlphaMode alphaMode = QSSGRenderDefaultMaterial::Default
 
QSSGCullFaceMode cullMode = QSSGCullFaceMode::Back
 
QSSGDepthDrawMode depthDrawMode = QSSGDepthDrawMode::OpaqueOnly
 
bool vertexColorsEnabled = false
 
bool dirty = true
 
TextureChannelMapping roughnessChannel = TextureChannelMapping::R
 
TextureChannelMapping opacityChannel = TextureChannelMapping::A
 
TextureChannelMapping translucencyChannel = TextureChannelMapping::A
 
TextureChannelMapping metalnessChannel = TextureChannelMapping::R
 
TextureChannelMapping occlusionChannel = TextureChannelMapping::R
 
TextureChannelMapping heightChannel = TextureChannelMapping::R
 
TextureChannelMapping clearcoatChannel = TextureChannelMapping::R
 
TextureChannelMapping clearcoatRoughnessChannel = TextureChannelMapping::G
 
TextureChannelMapping transmissionChannel = TextureChannelMapping::R
 
TextureChannelMapping thicknessChannel = TextureChannelMapping::G
 
float pointSize = 1.0f
 
float lineWidth = 1.0f
 
QSSGShaderMaterialAdapteradapter = nullptr
 
QString debugObjectName
 
- Public Attributes inherited from QSSGRenderGraphObject
Type type
 

Additional Inherited Members

- Static Public Member Functions inherited from QSSGRenderGraphObject
static Q_REQUIRED_RESULT constexpr bool isNodeType (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isLight (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isCamera (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isMaterial (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isTexture (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isRenderable (Type type) Q_DECL_NOTHROW
 
static Q_REQUIRED_RESULT constexpr bool isResource (Type type) Q_DECL_NOTHROW
 
static constexpr bool isExtension (Type type) noexcept
 
static Q_REQUIRED_RESULT constexpr bool hasGraphicsResources (Type type) Q_DECL_NOTHROW
 
static const char * asString (QSSGRenderGraphObject::Type type)
 
static QDebug debugPrintImpl (QDebug stream, QSSGRenderGraphObject::Type type)
 

Detailed Description

Definition at line 31 of file qssgrenderdefaultmaterial_p.h.

Member Enumeration Documentation

◆ MaterialAlphaMode

Enumerator
Default 
Mask 
Blend 
Opaque 

Definition at line 49 of file qssgrenderdefaultmaterial_p.h.

◆ MaterialBlendMode

Enumerator
SourceOver 
Screen 
Multiply 

Definition at line 38 of file qssgrenderdefaultmaterial_p.h.

◆ MaterialLighting

Enumerator
NoLighting 
FragmentLighting 

Definition at line 33 of file qssgrenderdefaultmaterial_p.h.

◆ MaterialSpecularModel

Enumerator
Default 
KGGX 

Definition at line 44 of file qssgrenderdefaultmaterial_p.h.

◆ TextureChannelMapping

Enumerator

Definition at line 56 of file qssgrenderdefaultmaterial_p.h.

Constructor & Destructor Documentation

◆ QSSGRenderDefaultMaterial()

QT_BEGIN_NAMESPACE QSSGRenderDefaultMaterial::QSSGRenderDefaultMaterial ( Type  type = Type::DefaultMaterial)

Definition at line 10 of file qssgrenderdefaultmaterial.cpp.

References adapter, B, QSSGShaderMaterialAdapter::create(), G, metalnessChannel, occlusionChannel, Q_ASSERT, R, and roughnessChannel.

+ Here is the call graph for this function:

◆ ~QSSGRenderDefaultMaterial()

QSSGRenderDefaultMaterial::~QSSGRenderDefaultMaterial ( )

Definition at line 25 of file qssgrenderdefaultmaterial.cpp.

References adapter.

Member Function Documentation

◆ clearDirty()

void QSSGRenderDefaultMaterial::clearDirty ( )

Definition at line 30 of file qssgrenderdefaultmaterial.cpp.

References dirty.

◆ hasLighting()

bool QSSGRenderDefaultMaterial::hasLighting ( ) const
inline

Definition at line 139 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::hasLighting().

+ Here is the caller graph for this function:

◆ isClearcoatEnabled()

bool QSSGRenderDefaultMaterial::isClearcoatEnabled ( ) const
inline

Definition at line 140 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::isClearcoatEnabled().

+ Here is the caller graph for this function:

◆ isDirty()

bool QSSGRenderDefaultMaterial::isDirty ( ) const
inline

Definition at line 143 of file qssgrenderdefaultmaterial_p.h.

◆ isFresnelEnabled()

bool QSSGRenderDefaultMaterial::isFresnelEnabled ( ) const
inline

Definition at line 137 of file qssgrenderdefaultmaterial_p.h.

◆ isMetalnessEnabled()

bool QSSGRenderDefaultMaterial::isMetalnessEnabled ( ) const
inline

Definition at line 136 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::isMetalnessEnabled().

+ Here is the caller graph for this function:

◆ isSpecularEnabled()

bool QSSGRenderDefaultMaterial::isSpecularEnabled ( ) const
inline

Definition at line 135 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::isSpecularEnabled().

+ Here is the caller graph for this function:

◆ isTransmissionEnabled()

bool QSSGRenderDefaultMaterial::isTransmissionEnabled ( ) const
inline

Definition at line 141 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::isTransmissionEnabled().

+ Here is the caller graph for this function:

◆ isVertexColorsEnabled()

bool QSSGRenderDefaultMaterial::isVertexColorsEnabled ( ) const
inline

Definition at line 138 of file qssgrenderdefaultmaterial_p.h.

Referenced by QSSGShaderDefaultMaterialAdapter::isVertexColorsEnabled().

+ Here is the caller graph for this function:

Member Data Documentation

◆ adapter

◆ alphaCutoff

◆ alphaMode

◆ attenuationColor

◆ attenuationDistance

float QSSGRenderDefaultMaterial::attenuationDistance = std::numeric_limits<float>::infinity()

◆ blendMode

◆ bumpAmount

◆ bumpMap

QSSGRenderImage* QSSGRenderDefaultMaterial::bumpMap = nullptr

◆ clearcoatAmount

◆ clearcoatChannel

◆ clearcoatMap

◆ clearcoatNormalMap

QSSGRenderImage* QSSGRenderDefaultMaterial::clearcoatNormalMap = nullptr

◆ clearcoatRoughnessAmount

◆ clearcoatRoughnessChannel

◆ clearcoatRoughnessMap

QSSGRenderImage* QSSGRenderDefaultMaterial::clearcoatRoughnessMap = nullptr

◆ color

◆ colorMap

◆ cullMode

◆ debugObjectName

QString QSSGRenderDefaultMaterial::debugObjectName

Definition at line 148 of file qssgrenderdefaultmaterial_p.h.

◆ depthDrawMode

QSSGDepthDrawMode QSSGRenderDefaultMaterial::depthDrawMode = QSSGDepthDrawMode::OpaqueOnly

Definition at line 116 of file qssgrenderdefaultmaterial_p.h.

◆ diffuseLightWrap

float QSSGRenderDefaultMaterial::diffuseLightWrap = 0.0f

◆ dirty

bool QSSGRenderDefaultMaterial::dirty = true

Definition at line 118 of file qssgrenderdefaultmaterial_p.h.

Referenced by clearDirty().

◆ emissiveColor

◆ emissiveMap

◆ fresnelPower

◆ heightAmount

◆ heightChannel

◆ heightMap

◆ iblProbe

QSSGRenderImage* QSSGRenderDefaultMaterial::iblProbe = nullptr

◆ ior

◆ lighting

◆ lineWidth

◆ maxHeightSamples

◆ metalnessAmount

float QSSGRenderDefaultMaterial::metalnessAmount = 0.0f

◆ metalnessChannel

◆ metalnessMap

QSSGRenderImage* QSSGRenderDefaultMaterial::metalnessMap = nullptr

◆ minHeightSamples

◆ normalMap

◆ occlusionAmount

◆ occlusionChannel

◆ occlusionMap

◆ opacity

◆ opacityChannel

◆ opacityMap

◆ pointSize

◆ roughnessChannel

◆ roughnessMap

◆ specularAmount

◆ specularMap

◆ specularModel

◆ specularReflection

QSSGRenderImage* QSSGRenderDefaultMaterial::specularReflection = nullptr

◆ specularRoughness

◆ specularTint

◆ thicknessChannel

◆ thicknessFactor

◆ thicknessMap

◆ translucencyChannel

◆ translucencyMap

QSSGRenderImage* QSSGRenderDefaultMaterial::translucencyMap = nullptr

◆ translucentFalloff

float QSSGRenderDefaultMaterial::translucentFalloff = 0.0f

◆ transmissionChannel

◆ transmissionFactor

◆ transmissionMap

QSSGRenderImage* QSSGRenderDefaultMaterial::transmissionMap = nullptr

◆ vertexColorsEnabled


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