QSSGRhiGraphicsPipelineState Class

Graphics pipeline state for the spatial scene graph. More...

Header: #include <QSSGRhiGraphicsPipelineState>
Since: Qt 6.7

Public Types

enum class Flag { DepthTestEnabled, DepthWriteEnabled, BlendEnabled, UsesStencilRef, UsesScissor }
flags Flags

Public Variables

int colorAttachmentCount
QRhiGraphicsPipeline::CullMode cullMode
int depthBias
QRhiGraphicsPipeline::CompareOp depthFunc
float lineWidth
QRhiGraphicsPipeline::PolygonMode polygonMode
int samples
QRhiScissor scissor
float slopeScaledDepthBias
QRhiGraphicsPipeline::StencilOpState stencilOpFrontState
quint32 stencilRef
quint32 stencilWriteMask
std::array<QRhiGraphicsPipeline::TargetBlend, 8> targetBlend
QRhiViewport viewport

Detailed Description

This class is a convenience class used by QtQuick3D to wrap relevant pipeline state from the QRhi classes, like QRhiGraphicsPipeline. Most of the types and value used in QSSGRhiGraphicsPipelineState will therefore map directly to an equivalent QRhi type or class.

Member Type Documentation

enum class QSSGRhiGraphicsPipelineState::Flag
flags QSSGRhiGraphicsPipelineState::Flags

ConstantValue
QSSGRhiGraphicsPipelineState::Flag::DepthTestEnabled0x1
QSSGRhiGraphicsPipelineState::Flag::DepthWriteEnabled0x2
QSSGRhiGraphicsPipelineState::Flag::BlendEnabled0x4
QSSGRhiGraphicsPipelineState::Flag::UsesStencilRef0x8
QSSGRhiGraphicsPipelineState::Flag::UsesScissor0x10

The Flags type is a typedef for QFlags<Flag>. It stores an OR combination of Flag values.

Member Variable Documentation

int QSSGRhiGraphicsPipelineState::colorAttachmentCount

The number of color attachments. The default is 1.

See also QRhiTextureRenderTargetDescription::setColorAttachments() and QRhiTextureRenderTargetDescription::colorAttachmentCount().

QRhiGraphicsPipeline::CullMode QSSGRhiGraphicsPipelineState::cullMode

Specifies the culling mode.

See also QRhiGraphicsPipeline::CullMode.

int QSSGRhiGraphicsPipelineState::depthBias

The depth bias. The default value is 0.

See also QRhiGraphicsPipeline::depthBias().

QRhiGraphicsPipeline::CompareOp QSSGRhiGraphicsPipelineState::depthFunc

The depth comparison function.

See also QRhiGraphicsPipeline::CompareOp.

float QSSGRhiGraphicsPipelineState::lineWidth

The line width used. The default is 1.0

Note: For values other than 1.0 it's required that feature QRhi::WideLines is reported as supported at runtime.

QRhiGraphicsPipeline::PolygonMode QSSGRhiGraphicsPipelineState::polygonMode

The polygon mode value. The default is Fill.

See also QRhiGraphicsPipeline::polygonMode().

int QSSGRhiGraphicsPipelineState::samples

The sample count.

Note: A sample count of 1 means no multisample antialiasing.

See also QRhiSwapChain::sampleCount().

QRhiScissor QSSGRhiGraphicsPipelineState::scissor

The scissor rect.

Note: Only used if UsesScissor is set.

See also QRhiCommandBuffer::setScissor().

float QSSGRhiGraphicsPipelineState::slopeScaledDepthBias

The slope scaled depth bias. The default value is 0.

See also QRhiGraphicsPipeline::slopeScaledDepthBias().

QRhiGraphicsPipeline::StencilOpState QSSGRhiGraphicsPipelineState::stencilOpFrontState

Describes the stencil operation state.

See also QRhiGraphicsPipeline::StencilOpState.

quint32 QSSGRhiGraphicsPipelineState::stencilRef

The active stencil reference value.

Note: Only used when UsesStencilRef is set.

See also QRhiCommandBuffer::setStencilRef().

quint32 QSSGRhiGraphicsPipelineState::stencilWriteMask

The stencil write mask value. The default value is 0xFF.

See also QRhiGraphicsPipeline::stencilWriteMask().

std::array<QRhiGraphicsPipeline::TargetBlend, 8> QSSGRhiGraphicsPipelineState::targetBlend

The blend state for one color attachment.

See also QRhiGraphicsPipeline::TargetBlend.

QRhiViewport QSSGRhiGraphicsPipelineState::viewport

The viewport dimensions used for rendering.

© 2024 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.