Auf dieser Seite

QSSGRhiContext Class

QSSGRhiContext. Mehr...

Header: #include <qssgrhicontext.h>
Since: Qt 6.7

Öffentliche Funktionen

void checkAndAdjustForNPoT(QRhiTexture *texture, QSSGRhiSamplerDescription *samplerDescription)
QRhiCommandBuffer *commandBuffer() const
QRhiCommandBuffer::BeginPassFlags commonPassFlags() const
QRhiTexture *dummyTexture(QRhiTexture::Flags flags, QRhiResourceUpdateBatch *rub, const QSize &size = QSize(64, 64), const QColor &fillColor = Qt::black, int arraySize = 0)
bool isValid() const
int mainPassSampleCount() const
int mainPassViewCount() const
QRhiRenderPassDescriptor *mainRenderPassDescriptor() const
QRhiRenderTarget *renderTarget() const
QRhi *rhi() const
QRhiSampler *sampler(const QSSGRhiSamplerDescription &samplerDescription)

Ausführliche Beschreibung

Dokumentation zu den Mitgliedsfunktionen

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

Passt die Kachelungs- und Filtermodi von „ samplerDescription “ basierend auf der Pixelgröße von „ texture “ an.

In den meisten Fällen wird „ samplerDescription “ nicht geändert. Bei der Verwendung älterer, veralteter 3D-APIs besteht jedoch die Möglichkeit, dass Kachelungsmodi wie „ QRhiSampler::Repeat “ für Texturen mit einer Breite oder Höhe, die keine Zweierpotenz ist, nicht unterstützt werden.

Diese Komfortfunktion hilft dabei, robuste Anwendungen zu erstellen, die auch dann noch funktionieren, wenn Funktionen wie „ QRhi::NPOTTextureRepeat “ von einer OpenGL ES 2.0- oder WebGL 1-Implementierung zur Laufzeit nicht unterstützt werden.

QRhiCommandBuffer *QSSGRhiContext::commandBuffer() const

Gibt den Befehlspuffer des aktuellen Frames zurück, der vom „ Qt Quick 3D “-Renderer verwendet wird.

QRhiCommandBuffer::BeginPassFlags QSSGRhiContext::commonPassFlags() const

Gibt die empfohlenen Flags beim Aufruf von ` QRhiCommandBuffer::beginPass()` zurück.

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

Gibt eine Textur zurück, die die angegebene flags und die Pixel size aufweist.

Dies dient dazu, effizient auf eine „Dummy“-Textur zuzugreifen, die mit einem bestimmten „ fillColor “ gefüllt ist und an verschiedenen Stellen im Rendering-Stack wiederverwendet wird.

rub QRhiResourceUpdateBatch muss gültig sein, da diese Funktion eine neue Textur erstellt und Inhalte dafür generiert, falls kein passendes Objekt im Cache gefunden wird. Die erforderlichen Upload-Operationen werden dann in den angegebenen Aktualisierungsstapel eingereiht.

Wenn arraySize den Wert 2 oder mehr hat, wird ein 2D-Textur-Array zurückgegeben.

Die Eigentumsrechte an der zurückgegebenen Textur verbleiben bei ` Qt Quick 3D`.

bool QSSGRhiContext::isValid() const

Gibt „true“ zurück, wenn der Renderer erfolgreich initialisiert wurde.

int QSSGRhiContext::mainPassSampleCount() const

Gibt die Anzahl der Samples zurück, die im Haupt-Render-Durchgang verwendet wurden.

int QSSGRhiContext::mainPassViewCount() const

Gibt die Anzahl der Multiview-Ansichten zurück, die im Haupt-Render-Durchgang verwendet wird. Diese beträgt entweder 2, wenn Multiview-Rendering verwendet wird, oder 1 (kein Multiview).

QRhiRenderPassDescriptor *QSSGRhiContext::mainRenderPassDescriptor() const

Gibt das „ QRhiRenderPassDescriptor “ zurück, das vom Hauptrenderdurchlauf des „ Qt Quick 3D “-Renderers verwendet wird.

QRhiRenderTarget *QSSGRhiContext::renderTarget() const

Gibt das Renderziel zurück, das der „ Qt Quick 3D “-Renderer für seinen Hauptrenderdurchlauf im aktuellen Frame verwendet.

Dies kann effektiv ein Renderziel aus einer Swapchain sein, wenn der „ View3D “ einen anderen „renderMode“ als „Offscreen“ verwendet. Häufiger bezieht sich das Renderziel jedoch auf eine Textur (d. h., es handelt sich um ein „ QRhiTextureRenderTarget “), z. B. weil der „renderMode“ standardmäßig auf „Offscreen“ gesetzt ist oder weil Nachbearbeitungseffekte verwendet werden.

QRhi *QSSGRhiContext::rhi() const

Gibt das „ QRhi “-Objekt zurück, das vom „ Qt Quick 3D “-Renderer verwendet wird.

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

Gibt einen Sampler zurück, dessen Filter- und Kachelungsmodi in ` samplerDescription` festgelegt sind.

Die generierten „ QRhiSampler “-Objekte werden zwischengespeichert und wiederverwendet. Somit ist dies eine bequeme Möglichkeit, auf einen „ QRhiSampler “ mit den angegebenen Einstellungen zuzugreifen, ohne jedes Mal ein neues, eigens dafür vorgesehenes Objekt erstellen zu müssen.

Die Eigentumsrechte an dem zurückgegebenen ` QRhiSampler ` verbleiben bei ` Qt Quick 3D`.

© 2026 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.