Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#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 , ViewIndex = 1 << 13 , DepthTextureArray = 1 << 14 , ScreenTextureArray = 1 << 15 , ScreenMipTextureArray = 1 << 16 , AoTextureArray = 1 << 17 } |
enum | { RegularShaderPathKeyIndex = 0 , MultiViewShaderPathKeyIndex = 1 } |
using | TexturePropertyList = QList<TextureProperty> |
using | PropertyList = QList<Property> |
using | FlagT = std::underlying_type_t<Flags> |
Public Types inherited from QSSGRenderGraphObject | |
enum | BaseType : quint32 { Node = 0x1000 , Light = 0x2000 , Camera = 0x4000 , Renderable = 0x8000 , Resource = 0x10000 , Material = 0x20000 , Texture = 0x40000 , Extension = 0x80000 , User = 0x80000000 } |
enum class | Type : quint32 { 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 } |
enum class | Flags : quint32 { HasGraphicsResources = 0x1 } |
using | TypeT = std::underlying_type_t<Type> |
using | FlagT = std::underlying_type_t<Flags> |
Public Member Functions | |
QSSGRenderCustomMaterial () | |
~QSSGRenderCustomMaterial () | |
void | markDirty () |
void | clearDirty () |
void | setAlwaysDirty (bool v) |
bool | isDirty () const |
Public Member Functions inherited from QSSGRenderGraphObject | |
bool | hasGraphicsResources () const noexcept |
virtual Q_QUICK3D_PROFILE_ID_ | ~QSSGRenderGraphObject () |
Public Attributes | |
QByteArray | m_shaderPathKey [2] |
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 |
QRhiGraphicsPipeline::BlendFactor | m_srcAlphaBlend |
QRhiGraphicsPipeline::BlendFactor | m_dstAlphaBlend |
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 |
Public Attributes inherited from QSSGRenderGraphObject | |
const Type | type |
FlagT | flags { 0 } |
Additional Inherited Members | |
Static Public Member Functions inherited from QSSGRenderGraphObject | |
static constexpr bool | isNodeType (Type type) noexcept |
static constexpr bool | isLight (Type type) noexcept |
static constexpr bool | isCamera (Type type) noexcept |
static constexpr bool | isMaterial (Type type) noexcept |
static constexpr bool | isTexture (Type type) noexcept |
static constexpr bool | isRenderable (Type type) noexcept |
static constexpr bool | isResource (Type type) noexcept |
static constexpr bool | isExtension (Type type) noexcept |
static constexpr bool | isUserType (Type type) noexcept |
Protected Member Functions inherited from QSSGRenderGraphObject | |
QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType) | |
QSSGRenderGraphObject (QSSGRenderGraphObject::Type inType, FlagT inFlags) | |
Definition at line 35 of file qssgrendercustommaterial_p.h.
using QSSGRenderCustomMaterial::FlagT = std::underlying_type_t<Flags> |
Definition at line 80 of file qssgrendercustommaterial_p.h.
Definition at line 73 of file qssgrendercustommaterial_p.h.
Definition at line 60 of file qssgrendercustommaterial_p.h.
anonymous enum |
Enumerator | |
---|---|
RegularShaderPathKeyIndex | |
MultiViewShaderPathKeyIndex |
Definition at line 116 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Vertex | |
Fragment |
Definition at line 88 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Dirty | |
AlwaysDirty |
Definition at line 75 of file qssgrendercustommaterial_p.h.
|
strong |
Definition at line 94 of file qssgrendercustommaterial_p.h.
|
strong |
Enumerator | |
---|---|
Unshaded | |
Shaded |
Definition at line 82 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 148 of file qssgrendercustommaterial_p.h.
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 150 of file qssgrendercustommaterial_p.h.
Referenced by QSSGRenderCustomMaterial(), ~QSSGRenderCustomMaterial(), and QSSGCustomMaterialSystem::shadersForCustomMaterial().
QString QSSGRenderCustomMaterial::debugObjectName |
Definition at line 152 of file qssgrendercustommaterial_p.h.
bool QSSGRenderCustomMaterial::incompleteBuildTimeObject = false |
Definition at line 142 of file qssgrendercustommaterial_p.h.
QSSGCullFaceMode QSSGRenderCustomMaterial::m_cullMode = QSSGCullFaceMode::Back |
Definition at line 128 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
CustomShaderPresence QSSGRenderCustomMaterial::m_customShaderPresence |
Definition at line 121 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::hasCustomShaderSnippet().
QSSGDepthDrawMode QSSGRenderCustomMaterial::m_depthDrawMode = QSSGDepthDrawMode::OpaqueOnly |
Definition at line 129 of file qssgrendercustommaterial_p.h.
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_dstAlphaBlend |
Definition at line 134 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_dstBlend |
Definition at line 132 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
QSSGRenderImage* QSSGRenderCustomMaterial::m_emissiveMap = nullptr |
Definition at line 127 of file qssgrendercustommaterial_p.h.
Definition at line 141 of file qssgrendercustommaterial_p.h.
Referenced by clearDirty(), markDirty(), and setAlwaysDirty().
QSSGRenderImage* QSSGRenderCustomMaterial::m_iblProbe = nullptr |
Definition at line 126 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::iblProbe(), RenderHelpers::rhiPrepareRenderable(), and QQuick3DMaterial::updateSpatialNode().
float QSSGRenderCustomMaterial::m_lineWidth = 1.0f |
Definition at line 135 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::lineWidth().
QSSGRenderGraphObject* QSSGRenderCustomMaterial::m_nextSibling = nullptr |
Definition at line 137 of file qssgrendercustommaterial_p.h.
PropertyList QSSGRenderCustomMaterial::m_properties |
Definition at line 124 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::applyRhiShaderPropertyValues().
RenderFlags QSSGRenderCustomMaterial::m_renderFlags |
Definition at line 130 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::isVertexColorsEnabled(), QSSGCustomMaterialSystem::rhiPrepareRenderable(), setCustomMaterialFlagsFromShader(), QSSGMaterialShaderGenerator::setRhiMaterialProperties(), QSSGShaderCustomMaterialAdapter::usesCustomMorphing(), and QSSGShaderCustomMaterialAdapter::usesCustomSkinning().
QByteArray QSSGRenderCustomMaterial::m_shaderPathKey[2] |
Definition at line 120 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::customShaderSnippet(), QSSGShaderCustomMaterialAdapter::hasCustomShaderFunction(), and QSSGCustomMaterialSystem::shadersForCustomMaterial().
ShadingMode QSSGRenderCustomMaterial::m_shadingMode = ShadingMode::Shaded |
Definition at line 139 of file qssgrendercustommaterial_p.h.
Referenced by QSSGShaderCustomMaterialAdapter::isUnshaded().
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_srcAlphaBlend |
Definition at line 133 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
QRhiGraphicsPipeline::BlendFactor QSSGRenderCustomMaterial::m_srcBlend |
Definition at line 131 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::rhiPrepareRenderable().
TexturePropertyList QSSGRenderCustomMaterial::m_textureProperties |
Definition at line 123 of file qssgrendercustommaterial_p.h.
Referenced by QSSGCustomMaterialSystem::applyRhiShaderPropertyValues().
bool QSSGRenderCustomMaterial::m_usesSharedVariables = false |
Definition at line 143 of file qssgrendercustommaterial_p.h.
Referenced by setCustomMaterialFlagsFromShader(), and QSSGShaderCustomMaterialAdapter::usesSharedVariables().