QSSGRhiContext 类

QSSGRhiContext. 更多...

头文件 #include <QSSGRhiContext>
Qt 6.7

公共函数

voidcheckAndAdjustForNPoT(QRhiTexture *texture, QSSGRhiSamplerDescription *samplerDescription)
QRhiCommandBuffer *commandBuffer() const
QRhiCommandBuffer::BeginPassFlagscommonPassFlags() const
QRhiTexture *dummyTexture(QRhiTexture::Flags flags, QRhiResourceUpdateBatch *rub, const QSize &size = QSize(64, 64), const QColor &fillColor = Qt::black)
boolisValid() const
intmainPassSampleCount() const
QRhiRenderPassDescriptor *mainRenderPassDescriptor() const
QRhiRenderTarget *renderTarget() const
QRhi *rhi() const
QRhiSampler *sampler(const QSSGRhiSamplerDescription &samplerDescription)

详细描述

成员函数文档

void QSSGRhiContext::checkAndAdjustForNPoT(QRhiTexture *texture, QSSGRhiSamplerDescription *samplerDescription)

根据 texture 的像素大小调整 samplerDescription 的平铺和过滤模式。

在大多数情况下,samplerDescription 不会被更改。但是,在使用较旧的、旧的 3D API 时,如果纹理宽度或高度不是 2 的幂,则可能不支持像 QRhiSampler::Repeat 这样的平铺模式。

这个便捷函数有助于创建健壮的应用程序,即使在运行时无法支持像 QRhi::NPOTTextureRepeat 这样的功能时,应用程序仍能正常运行。

QRhiCommandBuffer *QSSGRhiContext::commandBuffer() const

返回由 Qt Quick 3D 渲染器使用的当前帧的命令缓冲区。

QRhiCommandBuffer::BeginPassFlags QSSGRhiContext::commonPassFlags() const

返回调用QRhiCommandBuffer::beginPass()时推荐的标志。

QRhiTexture *QSSGRhiContext::dummyTexture(QRhiTexture::Flags flags, QRhiResourceUpdateBatch *rub, const QSize &size = QSize(64, 64), const QColor &fillColor = Qt::black)

返回具有指定flags和像素size的纹理。

此方法旨在有效地访问一个填充了指定fillColor的“虚拟”纹理,并在渲染堆栈的各个地方重复使用。

rub必须是一个有效的QRhiResourceUpdateBatch,因为这个函数将创建一个新的纹理并为它生成内容,如果找不到合适的缓存对象。然后将在给定的更新批次上排队必要的上传操作。

返回的纹理的所有权属于Qt Quick 3D。

bool QSSGRhiContext::isValid() const

如果渲染器初始化成功,则返回true。

int QSSGRhiContext::mainPassSampleCount() const

返回主渲染通道使用的样本数。

QRhiRenderPassDescriptor *QSSGRhiContext::mainRenderPassDescriptor() const

返回Qt Quick 3D渲染器主渲染通道使用的QRhiRenderPassDescriptor

QRhiRenderTarget *QSSGRhiContext::renderTarget() const

返回Qt Quick 3D渲染器当前帧用于其主渲染通道的渲染目标。

这可以是一个swapchain的渲染目标,如果View3D使用除Offscreen之外的渲染模式。更常见的是,渲染目标是纹理(即,是一个QRhiTextureRenderTarget),例如,如果渲染模式是默认的Offscreen,或者因为使用了后处理效果。

QRhi *QSSGRhiContext::rhi() const

返回Qt Quick 3D渲染器使用的QRhi对象。

QRhiSampler *QSSGRhiContext::sampler(const QSSGRhiSamplerDescription &samplerDescription)

返回一个采样器,其过滤和平铺模式由samplerDescription指定。

生成的QRhiSampler对象被缓存并重复使用。因此,这是一个方便的方式,可以访问具有给定设置的QRhiSampler,而不必每次都创建一个新的、专用的对象。

返回的QRhiSampler的所有权属于Qt Quick 3D。

© 2024 The Qt Company Ltd. 本文档中的文档贡献是各自所有者的版权。本提供的文档是根据自由软件基金会出版的GNU自由文档许可证版本1.3许可的。Qt和相关标志是The Qt Company Ltd.在芬兰和其他国家的商标。所有其他商标均为其各自所有者的财产。