#include <qssgrhicontext_p.h>
|
| QSSGRhiShaderPipeline (QSSGRhiContext &context) |
|
QSSGRhiContext & | context () const |
|
bool | isNull () const |
|
void | addStage (const QRhiShaderStage &stage, StageFlags flags={}) |
|
const QRhiShaderStage * | cbeginStages () const |
|
const QRhiShaderStage * | cendStages () const |
|
const QRhiShaderStage * | vertexStage () const |
|
const QRhiShaderStage * | fragmentStage () const |
|
int | ub0Size () const |
|
int | ub0LightDataOffset () const |
|
int | ub0LightDataSize () const |
|
const QHash< QSSGRhiInputAssemblerState::InputSemantic, QShaderDescription::InOutVariable > & | vertexInputs () const |
|
void | setUniformValue (char *ubufData, const char *name, const QVariant &value, QSSGRenderShaderValue::Type type) |
|
void | setUniform (char *ubufData, const char *name, const void *data, size_t size, int *storeIndex=nullptr, UniformFlags flags={}) |
|
void | setUniformArray (char *ubufData, const char *name, const void *data, size_t itemCount, QSSGRenderShaderValue::Type type, int *storeIndex=nullptr) |
|
int | bindingForTexture (const char *name, int hint=-1) |
|
void | setLightsEnabled (bool enable) |
|
bool | isLightingEnabled () const |
|
void | resetShadowMaps () |
|
QSSGRhiShadowMapProperties & | addShadowMap () |
|
int | shadowMapCount () const |
|
const QSSGRhiShadowMapProperties & | shadowMapAt (int index) const |
|
QSSGRhiShadowMapProperties & | shadowMapAt (int index) |
|
void | ensureCombinedMainLightsUniformBuffer (QRhiBuffer **ubuf) |
|
void | ensureUniformBuffer (QRhiBuffer **ubuf) |
|
void | setLightProbeTexture (QRhiTexture *texture, QSSGRenderTextureCoordOp hTile=QSSGRenderTextureCoordOp::ClampToEdge, QSSGRenderTextureCoordOp vTile=QSSGRenderTextureCoordOp::ClampToEdge) |
|
QRhiTexture * | lightProbeTexture () const |
|
QPair< QSSGRenderTextureCoordOp, QSSGRenderTextureCoordOp > | lightProbeTiling () const |
|
void | setScreenTexture (QRhiTexture *texture) |
|
QRhiTexture * | screenTexture () const |
|
void | setDepthTexture (QRhiTexture *texture) |
|
QRhiTexture * | depthTexture () const |
|
void | setSsaoTexture (QRhiTexture *texture) |
|
QRhiTexture * | ssaoTexture () const |
|
void | setLightmapTexture (QRhiTexture *texture) |
|
QRhiTexture * | lightmapTexture () const |
|
void | resetExtraTextures () |
|
void | addExtraTexture (const QSSGRhiTexture &t) |
|
int | extraTextureCount () const |
|
const QSSGRhiTexture & | extraTextureAt (int index) const |
|
QSSGRhiTexture & | extraTextureAt (int index) |
|
QSSGShaderLightsUniformData & | lightsUniformData () |
|
InstanceLocations | instanceBufferLocations () const |
|
int | offsetOfUniform (const QByteArray &name) |
|
Definition at line 308 of file qssgrhicontext_p.h.
◆ StageFlag
◆ UniformFlag
◆ QSSGRhiShaderPipeline()
QSSGRhiShaderPipeline::QSSGRhiShaderPipeline |
( |
QSSGRhiContext & | context | ) |
|
|
inlineexplicit |
◆ addExtraTexture()
◆ addShadowMap()
◆ addStage()
Definition at line 379 of file qssgrhicontext.cpp.
References QVarLengthArray< T, Prealloc >::append(), BindingMapSize, QShaderDescription::combinedImageSamplers(), QVariant::constData(), QShader::description(), QSSGMesh::MeshInternal::getColorAttrName(), QSSGMesh::MeshInternal::getJointAttrName(), QSSGMesh::MeshInternal::getLightmapUVAttrName(), QSSGMesh::MeshInternal::getNormalAttrName(), QSSGMesh::MeshInternal::getPositionAttrName(), QSSGMesh::MeshInternal::getTexBinormalAttrName(), QSSGMesh::MeshInternal::getTexTanAttrName(), QSSGMesh::MeshInternal::getUV0AttrName(), QSSGMesh::MeshInternal::getUV1AttrName(), QSSGMesh::MeshInternal::getWeightAttrName(), QShaderDescription::inputVariables(), instanceLocations, qWarning, QSSGRhiContext::rhi(), QRhiShaderStage::shader(), QRhiShaderStage::type(), QRhi::ubufAligned(), QShaderDescription::uniformBlocks(), UsedWithoutIa, var, and QRhiShaderStage::Vertex.
◆ bindingForTexture()
int QSSGRhiShaderPipeline::bindingForTexture |
( |
const char * | name, |
|
|
int | hint = -1 ) |
◆ cbeginStages()
◆ cendStages()
◆ context()
◆ depthTexture()
QRhiTexture * QSSGRhiShaderPipeline::depthTexture |
( |
| ) |
const |
|
inline |
◆ ensureCombinedMainLightsUniformBuffer()
void QSSGRhiShaderPipeline::ensureCombinedMainLightsUniformBuffer |
( |
QRhiBuffer ** | ubuf | ) |
|
◆ ensureUniformBuffer()
◆ extraTextureAt() [1/2]
◆ extraTextureAt() [2/2]
const QSSGRhiTexture & QSSGRhiShaderPipeline::extraTextureAt |
( |
int | index | ) |
const |
|
inline |
◆ extraTextureCount()
int QSSGRhiShaderPipeline::extraTextureCount |
( |
| ) |
const |
|
inline |
◆ fragmentStage()
◆ instanceBufferLocations()
◆ isLightingEnabled()
bool QSSGRhiShaderPipeline::isLightingEnabled |
( |
| ) |
const |
|
inline |
◆ isNull()
bool QSSGRhiShaderPipeline::isNull |
( |
| ) |
const |
|
inline |
◆ lightmapTexture()
QRhiTexture * QSSGRhiShaderPipeline::lightmapTexture |
( |
| ) |
const |
|
inline |
◆ lightProbeTexture()
QRhiTexture * QSSGRhiShaderPipeline::lightProbeTexture |
( |
| ) |
const |
|
inline |
◆ lightProbeTiling()
◆ lightsUniformData()
◆ offsetOfUniform()
int QSSGRhiShaderPipeline::offsetOfUniform |
( |
const QByteArray & | name | ) |
|
◆ resetExtraTextures()
void QSSGRhiShaderPipeline::resetExtraTextures |
( |
| ) |
|
|
inline |
◆ resetShadowMaps()
void QSSGRhiShaderPipeline::resetShadowMaps |
( |
| ) |
|
|
inline |
◆ screenTexture()
QRhiTexture * QSSGRhiShaderPipeline::screenTexture |
( |
| ) |
const |
|
inline |
◆ setDepthTexture()
◆ setLightmapTexture()
◆ setLightProbeTexture()
◆ setLightsEnabled()
void QSSGRhiShaderPipeline::setLightsEnabled |
( |
bool | enable | ) |
|
|
inline |
◆ setScreenTexture()
◆ setSsaoTexture()
◆ setUniform()
void QSSGRhiShaderPipeline::setUniform |
( |
char * | ubufData, |
|
|
const char * | name, |
|
|
const void * | data, |
|
|
size_t | size, |
|
|
int * | storeIndex = nullptr, |
|
|
UniformFlags | flags = {} ) |
Definition at line 641 of file qssgrhicontext.cpp.
References ba, QHash< Key, T >::cend(), QHash< Key, T >::constEnd(), QHash< Key, T >::constFind(), QByteArray::fromRawData(), getUBMemberSizeWarning(), it, Mat3, QSSGRhiShaderUniform::name, QVarLengthArray< T, Prealloc >::push_back(), Q_ASSERT, qPrintable, QSSG_ASSERT_X, QSSG_DEBUG_COND, qWarning, QSet< T >::size(), QByteArray::size(), QVLABaseBase::size(), and QSSGRhiShaderUniform::size.
Referenced by setUniformValue(), and QSSGParticleRenderer::updateUniformsForParticleModel().
◆ setUniformArray()
Definition at line 703 of file qssgrhicontext.cpp.
References ba, QSSGRenderShaderValue::Boolean, QSSGRenderShaderValue::BooleanVec2, QSSGRenderShaderValue::BooleanVec3, QSSGRenderShaderValue::BooleanVec4, QHash< Key, T >::cend(), QHash< Key, T >::constEnd(), QHash< Key, T >::constFind(), QSSGRenderShaderValue::Float, QByteArray::fromRawData(), getUBMemberSizeWarning(), i, QSSGRenderShaderValue::Integer, QSSGRenderShaderValue::IntegerVec2, QSSGRenderShaderValue::IntegerVec3, QSSGRenderShaderValue::IntegerVec4, it, QVarLengthArray< T, Prealloc >::last(), QSSGRenderShaderValue::Matrix3x3, QSSGRenderShaderValue::Matrix4x4, QSSGRhiShaderUniformArray::name, QSSGRenderShaderValue::Point, QSSGRenderShaderValue::PointF, QVarLengthArray< T, Prealloc >::push_back(), Q_UNUSED, qPrintable, QSSG_ASSERT, QSSG_ASSERT_X, QSSG_DEBUG_COND, QSSGRenderShaderValue::Quaternion, qWarning, QSSGRenderShaderValue::Rect, QSSGRenderShaderValue::RectF, QSSGRenderShaderValue::Rgba, QSet< T >::size(), QByteArray::size(), QLatin1StringView::size(), QVLABaseBase::size(), QSSGRenderShaderValue::Size, QSSGRenderShaderValue::SizeF, QSSGRenderShaderValue::UnsignedInteger, QSSGRenderShaderValue::UnsignedIntegerVec2, QSSGRenderShaderValue::UnsignedIntegerVec3, QSSGRenderShaderValue::UnsignedIntegerVec4, QSSGRenderShaderValue::Vec2, QSSGRenderShaderValue::Vec3, and QSSGRenderShaderValue::Vec4.
◆ setUniformValue()
Definition at line 450 of file qssgrhicontext.cpp.
References QSSGRenderShaderValue::Boolean, QSSGRenderShaderValue::BooleanVec2, QSSGRenderShaderValue::BooleanVec3, QSSGRenderShaderValue::BooleanVec4, QSSGRenderShaderValue::Float, QSSGRenderShaderValue::Integer, QSSGRenderShaderValue::IntegerVec2, QSSGRenderShaderValue::IntegerVec3, QSSGRenderShaderValue::IntegerVec4, Mat3, QSSGRenderShaderValue::Matrix3x3, QSSGRenderShaderValue::Matrix4x4, QSSGRenderShaderValue::Point, QSSGRenderShaderValue::PointF, QSSGRenderShaderValue::Quaternion, qWarning, QSSGRenderShaderValue::Rect, QSSGRenderShaderValue::RectF, QSSGRenderShaderValue::Rgba, setUniform(), QSSGRenderShaderValue::Size, QSSGRenderShaderValue::SizeF, QSSGRenderShaderValue::UnsignedInteger, QSSGRenderShaderValue::UnsignedIntegerVec2, QSSGRenderShaderValue::UnsignedIntegerVec3, QSSGRenderShaderValue::UnsignedIntegerVec4, QSSGRenderShaderValue::Vec2, QSSGRenderShaderValue::Vec3, and QSSGRenderShaderValue::Vec4.
◆ shadowMapAt() [1/2]
◆ shadowMapAt() [2/2]
◆ shadowMapCount()
int QSSGRhiShaderPipeline::shadowMapCount |
( |
| ) |
const |
|
inline |
◆ ssaoTexture()
QRhiTexture * QSSGRhiShaderPipeline::ssaoTexture |
( |
| ) |
const |
|
inline |
◆ ub0LightDataOffset()
int QSSGRhiShaderPipeline::ub0LightDataOffset |
( |
| ) |
const |
|
inline |
◆ ub0LightDataSize()
int QSSGRhiShaderPipeline::ub0LightDataSize |
( |
| ) |
const |
|
inline |
◆ ub0Size()
int QSSGRhiShaderPipeline::ub0Size |
( |
| ) |
const |
|
inline |
◆ vertexInputs()
◆ vertexStage()
◆ commonUniformIndices
◆ instanceLocations
The documentation for this class was generated from the following files: