![]() |
Qt 6.x
The Qt SDK
|
Collaboration diagram for QMetalGraphicsPipelineData::Tessellation:Public Member Functions | |
| quint32 | vsCompOutputBufferSize (quint32 vertexOrIndexCount, quint32 instanceCount) const |
| quint32 | tescCompOutputBufferSize (quint32 patchCount) const |
| quint32 | tescCompPatchOutputBufferSize (quint32 patchCount) const |
| quint32 | patchCountForDrawCall (quint32 vertexOrIndexCount, quint32 instanceCount) const |
| id< MTLComputePipelineState > | vsCompPipeline (QRhiMetal *rhiD, QShader::Variant vertexCompVariant) |
| id< MTLComputePipelineState > | tescCompPipeline (QRhiMetal *rhiD) |
| id< MTLRenderPipelineState > | teseFragRenderPipeline (QRhiMetal *rhiD, QMetalGraphicsPipeline *pipeline) |
Static Public Member Functions | |
| static int | vsCompVariantToIndex (QShader::Variant vertexCompVariant) |
Public Attributes | |
| QMetalGraphicsPipelineData * | q = nullptr |
| bool | enabled = false |
| bool | failed = false |
| uint | inControlPointCount |
| uint | outControlPointCount |
| QMetalShader | compVs [3] |
| std::array< id< MTLComputePipelineState >, 3 > | vertexComputeState = {} |
| id< MTLComputePipelineState > | tessControlComputeState = nil |
| QMetalShader | compTesc |
| QMetalShader | vertTese |
Definition at line 389 of file qrhimetal.mm.
|
inline |
Definition at line 414 of file qrhimetal.mm.
References inControlPointCount, and instanceCount.
Referenced by QRhiMetal::tessellatedDraw().
Here is the caller graph for this function:
|
inline |
Definition at line 405 of file qrhimetal.mm.
References outControlPointCount.
Referenced by QRhiMetal::tessellatedDraw().
Here is the caller graph for this function:
|
inline |
Definition at line 409 of file qrhimetal.mm.
Referenced by QRhiMetal::tessellatedDraw().
Here is the caller graph for this function:| id< MTLComputePipelineState > QMetalGraphicsPipelineData::Tessellation::tescCompPipeline | ( | QRhiMetal * | rhiD | ) |
Definition at line 5116 of file qrhimetal.mm.
References QRhiMetalData::addComputePipelineToBinaryArchive(), QRhiMetal::d, QRhiMetalData::dev, QRhi::EnablePipelineCacheDataSave, error, QMetalGraphicsPipelineData::ps, qPrintable, qWarning, release(), QRhiMetal::rhiFlags, and QRhiMetalData::trySeedingComputePipelineFromBinaryArchive().
Referenced by QRhiMetal::tessellatedDraw().
Here is the call graph for this function:
Here is the caller graph for this function:| id< MTLRenderPipelineState > QMetalGraphicsPipelineData::Tessellation::teseFragRenderPipeline | ( | QRhiMetal * | rhiD, |
| QMetalGraphicsPipeline * | pipeline | ||
| ) |
Definition at line 5315 of file qrhimetal.mm.
References QRhiMetalData::addRenderPipelineToBinaryArchive(), addUnusedVertexAttribute(), addVertexAttribute(), aligned(), alignment, QShaderDescription::ClipDistanceBuiltin, QMap< Key, T >::contains(), QSet< T >::contains(), QMetalGraphicsPipeline::d, QRhiMetal::d, QRhiMetalData::dev, QRhi::EnablePipelineCacheDataSave, error, QShaderDescription::Float, QMetalGraphicsPipelineData::fs, QMetalShader::func, QShaderDescription::Half2, QShaderDescription::Half4, init(), matches(), QShaderPrivate::MslTessTescPatchOutputBufferBinding, QShaderPrivate::MslTessTescTessLevelBufferBinding, QShaderPrivate::MslTessVertTescOutputBufferBinding, nextAttributeIndex(), QShaderDescription::PointSizeBuiltin, QShaderDescription::PositionBuiltin, QMetalGraphicsPipelineData::ps, qPrintable, QRHI_RES, qWarning, release(), QMap< Key, T >::remove(), QRhiGraphicsPipeline::renderPassDescriptor(), QRhiMetal::rhiFlags, QMetalGraphicsPipeline::setupAttachmentsInMetalRenderPassDescriptor(), QShaderDescription::TessLevelInnerBuiltin, QShaderDescription::TessLevelOuterBuiltin, toMetalTessellationPartitionMode(), toMetalTessellationWindingOrder(), QShaderDescription::TrianglesTessellationMode, QRhiMetalData::trySeedingRenderPipelineFromBinaryArchive(), QMap< Key, T >::value(), and QShaderDescription::Vec4.
Here is the call graph for this function:
|
inline |
Definition at line 400 of file qrhimetal.mm.
References instanceCount.
Referenced by QRhiMetal::tessellatedDraw().
Here is the caller graph for this function:| id< MTLComputePipelineState > QMetalGraphicsPipelineData::Tessellation::vsCompPipeline | ( | QRhiMetal * | rhiD, |
| QShader::Variant | vertexCompVariant | ||
| ) |
Definition at line 5062 of file qrhimetal.mm.
References QRhiMetalData::addComputePipelineToBinaryArchive(), QRhiMetal::d, QRhiMetalData::dev, QRhi::EnablePipelineCacheDataSave, error, QShaderPrivate::MslTessVertIndicesBufferBinding, QMetalGraphicsPipelineData::ps, qPrintable, qWarning, release(), QRhiMetal::rhiFlags, QRhiMetalData::trySeedingComputePipelineFromBinaryArchive(), QShader::UInt16IndexedVertexAsComputeShader, QShader::UInt32IndexedVertexAsComputeShader, and QMap< Key, T >::value().
Referenced by QRhiMetal::tessellatedDraw().
Here is the call graph for this function:
Here is the caller graph for this function:
|
static |
Definition at line 5047 of file qrhimetal.mm.
References QShader::NonIndexedVertexAsComputeShader, QShader::UInt16IndexedVertexAsComputeShader, and QShader::UInt32IndexedVertexAsComputeShader.
Referenced by QRhiMetal::tessellatedDraw().
Here is the caller graph for this function:| QMetalShader QMetalGraphicsPipelineData::Tessellation::compTesc |
Definition at line 398 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::destroy(), QRhiMetal::setShaderResources(), and QRhiMetal::tessellatedDraw().
| QMetalShader QMetalGraphicsPipelineData::Tessellation::compVs[3] |
Definition at line 395 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::destroy(), QRhiMetal::setShaderResources(), and QRhiMetal::tessellatedDraw().
| bool QMetalGraphicsPipelineData::Tessellation::enabled = false |
Definition at line 391 of file qrhimetal.mm.
Referenced by QRhiMetal::draw(), QRhiMetal::drawIndexed(), QRhiMetal::setGraphicsPipeline(), and QRhiMetal::setShaderResources().
| bool QMetalGraphicsPipelineData::Tessellation::failed = false |
Definition at line 392 of file qrhimetal.mm.
Referenced by QRhiMetal::setGraphicsPipeline(), and QRhiMetal::tessellatedDraw().
| uint QMetalGraphicsPipelineData::Tessellation::inControlPointCount |
Definition at line 393 of file qrhimetal.mm.
Referenced by patchCountForDrawCall(), and QRhiMetal::tessellatedDraw().
| uint QMetalGraphicsPipelineData::Tessellation::outControlPointCount |
Definition at line 394 of file qrhimetal.mm.
Referenced by tescCompOutputBufferSize(), and QRhiMetal::tessellatedDraw().
| QMetalGraphicsPipelineData* QMetalGraphicsPipelineData::Tessellation::q = nullptr |
Definition at line 390 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::QMetalGraphicsPipeline().
| id<MTLComputePipelineState> QMetalGraphicsPipelineData::Tessellation::tessControlComputeState = nil |
Definition at line 397 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::destroy().
| std::array<id<MTLComputePipelineState>, 3> QMetalGraphicsPipelineData::Tessellation::vertexComputeState = {} |
Definition at line 396 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::destroy().
| QMetalShader QMetalGraphicsPipelineData::Tessellation::vertTese |
Definition at line 399 of file qrhimetal.mm.
Referenced by QMetalGraphicsPipeline::destroy(), and QRhiMetal::setShaderResources().