QRenderStateSet Class
class Qt3DRender::QRenderStateSetDer Knoten QRenderStateSet FrameGraph bietet eine Möglichkeit, einen Satz von QRenderState Objekten zu spezifizieren, die während der Ausführung einer Framegraph-Verzweigung angewendet werden sollen. Mehr...
Kopfzeile: | #include <QRenderStateSet> |
CMake: | find_package(Qt6 REQUIRED COMPONENTS 3drender) target_link_libraries(mytarget PRIVATE Qt6::3drender) |
qmake: | QT += 3drender |
In QML: | RenderStateSet |
Vererbt: | Qt3DRender::QFrameGraphNode |
Status: | Veraltet |
Öffentliche Funktionen
void | addRenderState(Qt3DRender::QRenderState *state) |
void | removeRenderState(Qt3DRender::QRenderState *state) |
QList<Qt3DRender::QRenderState *> | renderStates() const |
Detaillierte Beschreibung
Zustände, die in einem QRenderStateSet gesetzt werden, werden global gesetzt, im Gegensatz zu den Zuständen pro Material, die in einem QRenderPass gesetzt werden können. Standardmäßig führt ein leeres QRenderStateSet dazu, dass alle Renderzustände bei der Ausführung deaktiviert werden. Durch Hinzufügen eines QRenderState -Status wird dieser Rendering-Status zur Laufzeit explizit aktiviert.
Der RenderStateSet wird aktiviert, wenn er dem aktiven Framegraphen hinzugefügt wird:
// using namespace Qt3DRender; Qt3DCore::QEntity *rootEntity = new Qt3DCore::QEntity(); QRenderSettings *renderSettings = new QRenderSettings(); QViewport *viewport = new QViewport(); QCameraSelector *cameraSelector = new QCameraSelector(viewport); QClearBuffers *clearBuffers = new QClearBuffers(cameraSelector); clearBuffers->setBuffers(QClearBuffers::ColorDepthBuffer); QRenderStateSet *renderStateSet = new QRenderStateSet(cameraSelector); QCullFace *cullFace = new QCullFace(renderStateSet); cullFace->setMode(QCullFace::Front); renderStateSet->addRenderState(cullFace); renderSettings->setActiveFrameGraph(viewport); rootEntity->addComponent(renderSettings);
Siehe auch QRenderState und QRenderPass.
Dokumentation der Mitgliedsfunktionen
void QRenderStateSet::addRenderState(Qt3DRender::QRenderState *state)
Fügt eine neue QRenderState state zur QRenderStateSet Instanz hinzu.
Hinweis: Wenn kein QRenderState Status auf einer QRenderStateSet Instanz gesetzt wird, bedeutet dies, dass alle Render-Status zur Renderzeit deaktiviert werden.
void QRenderStateSet::removeRenderState(Qt3DRender::QRenderState *state)
Entfernt die QRenderState state aus der Instanz QRenderStateSet.
QList<Qt3DRender::QRenderState *> QRenderStateSet::renderStates() const
Gibt die Liste der QRenderState Objekte zurück, aus denen die QRenderStateSet Instanz besteht.
© 2025 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.