![]() |
Qt 6.x
The Qt SDK
|
#include <qssgrendercustommaterial_p.h>
Classes | |
struct | Property |
struct | TextureProperty |
Public Types | |
enum class | Flags : quint8 { Dirty = 0x1 , AlwaysDirty = 0x2 } |
enum class | ShadingMode { Unshaded , Shaded } |
enum class | CustomShaderPresenceFlag { Vertex = 1 << 0 , Fragment = 1 << 1 } |
enum class | RenderFlag { Blending = 1 << 0 , ScreenTexture = 1 << 1 , DepthTexture = 1 << 2 , AoTexture = 1 << 3 , OverridesPosition = 1 << 4 , ProjectionMatrix = 1 << 5 , InverseProjectionMatrix = 1 << 6 , ScreenMipTexture = 1 << 7 , VarColor = 1 << 8 , IblOrientation = 1 << 9 , Lightmap = 1 << 10 , Skinning = 1 << 11 , Morphing = 1 << 12 } |
using | TexturePropertyList = QList< TextureProperty > |
using | PropertyList = QList< Property > |
using | FlagT = std::underlying_type_t< Flags > |
![]() | |
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 | |
QSSGRenderCustomMaterial () | |
~QSSGRenderCustomMaterial () | |
void | markDirty () |
void | clearDirty () |
void | setAlwaysDirty (bool v) |
bool | isDirty () const |
![]() | |
Q_QUICK3D_PROFILE_ID | QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType) |
virtual | ~QSSGRenderGraphObject () |
Public Attributes | |
QByteArray | m_shaderPathKey |
CustomShaderPresence | m_customShaderPresence |
TexturePropertyList | m_textureProperties |
PropertyList | m_properties |
QSSGRenderImage * | m_iblProbe = nullptr |
QSSGRenderImage * | m_emissiveMap = nullptr |
QSSGCullFaceMode | m_cullMode = QSSGCullFaceMode::Back |
QSSGDepthDrawMode | m_depthDrawMode = QSSGDepthDrawMode::OpaqueOnly |
RenderFlags | m_renderFlags |
QRhiGraphicsPipeline::BlendFactor | m_srcBlend |
QRhiGraphicsPipeline::BlendFactor | m_dstBlend |
float | m_lineWidth = 1.0f |
QSSGRenderGraphObject * | m_nextSibling = nullptr |
ShadingMode | m_shadingMode = ShadingMode::Shaded |
FlagT | m_flags { FlagT(Flags::Dirty) } |
bool | incompleteBuildTimeObject = false |
bool | m_usesSharedVariables = false |
QSSGShaderMaterialAdapter * | adapter = nullptr |
QString | debugObjectName |
![]() | |
Type | type |
Additional Inherited Members | |
![]() | |
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) |
Definition at line 32 of file qssgrendercustommaterial_p.h.
using QSSGRenderCustomMaterial::FlagT = std::underlying_type_t<Flags> |
Definition at line 75 of file qssgrendercustommaterial_p.h.
Definition at line 68 of file qssgrendercustommaterial_p.h.
Definition at line 55 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Vertex | |
Fragment |
Definition at line 83 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Dirty | |
AlwaysDirty |
Definition at line 70 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Blending | |
ScreenTexture | |
DepthTexture | |
AoTexture | |
OverridesPosition | |
ProjectionMatrix | |
InverseProjectionMatrix | |
ScreenMipTexture | |
VarColor | |
IblOrientation | |
Lightmap | |
Skinning | |
Morphing |
Definition at line 89 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Unshaded | |
Shaded |
Definition at line 77 of file qssgrendercustommaterial_p.h.
QSSGRenderCustomMaterial::QSSGRenderCustomMaterial | ( | ) |
Definition at line 35 of file qssgrenderdefaultmaterial.cpp.
References adapter, and QSSGShaderMaterialAdapter::create().
QSSGRenderCustomMaterial::~QSSGRenderCustomMaterial | ( | ) |
Definition at line 41 of file qssgrenderdefaultmaterial.cpp.
References adapter.
void QSSGRenderCustomMaterial::clearDirty | ( | ) |
Definition at line 51 of file qssgrenderdefaultmaterial.cpp.
References m_flags.
|
inline |
Definition at line 132 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::prepareForRender().
void QSSGRenderCustomMaterial::markDirty | ( | ) |
Definition at line 46 of file qssgrenderdefaultmaterial.cpp.
References m_flags.
void QSSGRenderCustomMaterial::setAlwaysDirty | ( | bool | v | ) |
Definition at line 56 of file qssgrenderdefaultmaterial.cpp.
References m_flags.
QSSGShaderMaterialAdapter* QSSGRenderCustomMaterial::adapter = nullptr |
Definition at line 134 of file qssgrendercustommaterial_p.h.
Referenced by QSSGRenderCustomMaterial(), ~QSSGRenderCustomMaterial(), and QSSGCustomMaterialSystem::shadersForCustomMaterial().
QString QSSGRenderCustomMaterial::debugObjectName |
Definition at line 136 of file qssgrendercustommaterial_p.h.
bool QSSGRenderCustomMaterial::incompleteBuildTimeObject = false |
Definition at line 126 of file qssgrendercustommaterial_p.h.
Referenced by QQuick3DCustomMaterial::updateSpatialNode().
QSSGCullFaceMode QSSGRenderCustomMaterial::m_cullMode = QSSGCullFaceMode::Back |
Definition at line 114 of file qssgrendercustommaterial_p.h.
Referenced by RenderHelpers::rhiPrepareDepthPass(), QSSGCustomMaterialSystem::rhiPrepareRenderable(), and rhiPrepareResourcesForShadowMap().
CustomShaderPresence QSSGRenderCustomMaterial::m_customShaderPresence |
Definition at line 107 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::hasCustomShaderSnippet(), and QQuick3DCustomMaterial::updateSpatialNode().
QSSGDepthDrawMode QSSGRenderCustomMaterial::m_depthDrawMode = QSSGDepthDrawMode::OpaqueOnly |
Definition at line 115 of file qssgrendercustommaterial_p.h.
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_dstBlend |
Definition at line 118 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
QSSGRenderImage* QSSGRenderCustomMaterial::m_emissiveMap = nullptr |
Definition at line 113 of file qssgrendercustommaterial_p.h.
Definition at line 125 of file qssgrendercustommaterial_p.h.
Referenced by clearDirty(), markDirty(), and setAlwaysDirty().
QSSGRenderImage* QSSGRenderCustomMaterial::m_iblProbe = nullptr |
Definition at line 112 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::iblProbe(), QSSGLayerRenderData::prepareModelsForRender(), and QQuick3DMaterial::updateSpatialNode().
float QSSGRenderCustomMaterial::m_lineWidth = 1.0f |
Definition at line 119 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::lineWidth().
QSSGRenderGraphObject* QSSGRenderCustomMaterial::m_nextSibling = nullptr |
Definition at line 121 of file qssgrendercustommaterial_p.h.
PropertyList QSSGRenderCustomMaterial::m_properties |
Definition at line 110 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::applyRhiShaderPropertyValues(), and QQuick3DCustomMaterial::updateSpatialNode().
RenderFlags QSSGRenderCustomMaterial::m_renderFlags |
Definition at line 116 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::isVertexColorsEnabled(), QSSGCustomMaterialSystem::rhiPrepareRenderable(), setCustomMaterialFlagsFromShader(), QSSGMaterialShaderGenerator::setRhiMaterialProperties(), QQuick3DCustomMaterial::updateSpatialNode(), QSSGShaderCustomMaterialAdapter::usesCustomMorphing(), and QSSGShaderCustomMaterialAdapter::usesCustomSkinning().
QByteArray QSSGRenderCustomMaterial::m_shaderPathKey |
ShadingMode QSSGRenderCustomMaterial::m_shadingMode = ShadingMode::Shaded |
Definition at line 123 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::isUnshaded(), and QQuick3DCustomMaterial::updateSpatialNode().
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_srcBlend |
Definition at line 117 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
TexturePropertyList QSSGRenderCustomMaterial::m_textureProperties |
Definition at line 109 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::applyRhiShaderPropertyValues(), and QQuick3DCustomMaterial::updateSpatialNode().
bool QSSGRenderCustomMaterial::m_usesSharedVariables = false |
Definition at line 127 of file qssgrendercustommaterial_p.h.
Referenced by QQuick3DCustomMaterial::updateSpatialNode(), and QSSGShaderCustomMaterialAdapter::usesSharedVariables().