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) |
Dokumentation zum Mitgliedstyp
enum class QSSGRenderHelpers::CreateFlag
flags QSSGRenderHelpers::CreateFlags
| Konstante | Wert | Beschreibung |
|---|---|---|
QSSGRenderHelpers::CreateFlag::None | 0 | Der Standardwert. Renderables werden nur für die angegebenen Knoten erstellt. |
QSSGRenderHelpers::CreateFlag::Recurse | 0x1 | Renderables werden für jeden Knoten und dessen untergeordnete Knoten erstellt. |
QSSGRenderHelpers::CreateFlag::Steal | 0x2 | Renderables 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.