Auf dieser Seite

QSSGRenderHelpers Class

Klasse mit Hilfsfunktionen zum Einrichten und Rendern von „ QtQuick3D “-Renderables. Mehr...

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

Öffentliche Typen

enum class CreateFlag { None, Recurse, Steal }
flags CreateFlags

Statische öffentliche Mitglieder

QSSGPrepResultId commit(const QSSGFrameData &frameData, QSSGPrepContextId prepId, QSSGRenderablesId renderablesId, float lodThreshold = 1.0f)
QSSGRenderablesId createRenderables(const QSSGFrameData &frameData, QSSGPrepContextId prepId, const QSSGNodeIdList &nodes, QSSGRenderHelpers::CreateFlags flags = CreateFlag::None)
QSSGPrepContextId prepareForRender(const QSSGFrameData &frameData, const QSSGRenderExtension &ext, QSSGCameraId cameraId, quint32 slot = 0)
void prepareRenderables(const QSSGFrameData &frameData, QSSGPrepResultId prepId, QRhiRenderPassDescriptor *renderPassDescriptor, QSSGRhiGraphicsPipelineState &ps, QSSGRenderablesFilters filter = QSSGRenderablesFilter::All)
void renderRenderables(const QSSGFrameData &frameData, QSSGPrepResultId prepId)

Ausführliche Beschreibung

Dokumentation zum Mitgliedstyp

enum class QSSGRenderHelpers::CreateFlag
flags QSSGRenderHelpers::CreateFlags

KonstanteWertBeschreibung
QSSGRenderHelpers::CreateFlag::None0Der Standardwert. Renderables werden nur für die angegebenen Knoten erstellt.
QSSGRenderHelpers::CreateFlag::Recurse0x1Renderables werden für jeden Knoten und dessen untergeordnete Knoten erstellt.
QSSGRenderHelpers::CreateFlag::Steal0x2Renderables werden aus der Engine übernommen und nicht von ` QtQuick3D` gerendert.

Hinweis: Der Aufruf von ` QSSGRenderHelpers::createRenderables()` ohne das gesetztes `{QSSGRenderHelpers::CreateFlag::Steal}`-Flag führt dazu, dass Knoten dupliziert werden und ` QtQuick3D ` seine Kopie der Knoten wie gewohnt rendert.

Der Typ „CreateFlags“ ist ein typedef für „QFlags<CreateFlag>“. Er speichert eine OR-Verknüpfung von CreateFlag-Werten.

Dokumentation der Mitgliedsfunktionen

[static] QSSGPrepResultId QSSGRenderHelpers::commit(const QSSGFrameData &frameData, QSSGPrepContextId prepId, QSSGRenderablesId renderablesId, float lodThreshold = 1.0f)

Sobald die erforderlichen Änderungen an den Renderables vorgenommen wurden, können die Daten für den Renderer als bereit markiert werden.

Gibt eine ID für das Ergebnis der Vorbereitung zurück.

frameData, prepId, renderablesId, lodThreshold

Siehe auch prepareRenderables() und renderRenderables().

[static] QSSGRenderablesId QSSGRenderHelpers::createRenderables(const QSSGFrameData &frameData, QSSGPrepContextId prepId, const QSSGNodeIdList &nodes, QSSGRenderHelpers::CreateFlags flags = CreateFlag::None)

Nimmt eine Liste von Knoten-IDs entgegen und erstellt renderbare Elemente, die vom Renderer weiterverarbeitet werden können. Wenn keine Knoten oder keine renderbaren Knoten in der Liste vorhanden sind, ist die zurückgegebene ID ungültig.

Standardmäßig führt die Funktion keine Rekursion durch und nimmt keine untergeordneten Elemente des „ nodes “ in die Liste auf. Die Rekursion kann aktiviert werden, indem das Flag „ Recurse “ im Argument „ flags “ übergeben wird.

Gibt eine ID für die erstellten Renderables zurück.

frameData, prepId

Siehe auch „ CreateFlags “ und „ prepareForRender()“.

[static] QSSGPrepContextId QSSGRenderHelpers::prepareForRender(const QSSGFrameData &frameData, const QSSGRenderExtension &ext, QSSGCameraId cameraId, quint32 slot = 0)

prepareForRender() erstellt einen Kontext zum Sammeln und Speichern von Informationen über die mit dieser Render-Erweiterung verbundenen Renderdaten.

Wenn dieselben Knoten mehrmals gerendert werden sollen, jedoch mit unterschiedlichen Eigenschaften, beispielsweise einem anderen Material oder einer anderen Kamera, wird ein neuer Kontext benötigt. Um mehrere Kontexte für eine Erweiterung zu erstellen, kann das Argument „ slot “ verwendet werden. Der Standardkontext wird in Slot 0 erstellt.

Gibt eine ID für den Vorbereitungs-Kontext zurück.

frameData, ext, cameraId

Siehe auch commit().

[static] void QSSGRenderHelpers::prepareRenderables(const QSSGFrameData &frameData, QSSGPrepResultId prepId, QRhiRenderPassDescriptor *renderPassDescriptor, QSSGRhiGraphicsPipelineState &ps, QSSGRenderablesFilters filter = QSSGRenderablesFilter::All)

Bereiten Sie die für die Renderables benötigten Draw-Call-Daten vor, bevor Sie „ renderRenderables “ aufrufen.

Gibt eine ID für das Ergebnis der Vorbereitung zurück.

frameData, ` renderPassDescriptor`, ` ps`, ` prepId`, filter

Siehe auch ` renderRenderables()`.

[static] void QSSGRenderHelpers::renderRenderables(const QSSGFrameData &frameData, QSSGPrepResultId prepId)

Rendere die renderbaren Elemente.

frameData, prepId

Siehe auch prepareRenderables().

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