QQuick3DRenderExtension Class

Abstrakte Klasse zur Implementierung von benutzerseitigen Rendererweiterungen. Mehr...

Header: #include <QQuick3DRenderExtension>
Since: Qt 6.7
In QML: RenderExtension
Inherits: QQuick3DObject

Reimplementierte öffentliche Funktionen

virtual QSSGRenderGraphObject *updateSpatialNode(QSSGRenderGraphObject *node) override

Detaillierte Beschreibung

Dies ist die Front-End-Seite einer Render-Erweiterung. Die Backend-Seite ist in QSSGRenderExtension implementiert. Die Klasse QQuick3DRenderExtension wird verwendet, um eine benutzerdefinierte Rendererweiterung zu erstellen, die im Szenegraphen QtQuick3D verwendet werden kann, indem sie zur Liste der Erweiterungen hinzugefügt wird, die mit einer View3D verwendet werden sollen. Der Erweiterungscode wird dann als Teil der Ausführung der Rendering-Pipeline von QtQuick3D ausgeführt.

Die Klasse QQuick3DRenderExtension ist eine abstrakte Klasse, die als Unterklasse angelegt und in QML offengelegt werden sollte. Die Unterklasse sollte die Funktion QQuick3DRenderExtension::updateSpatialNode() implementieren und eine Instanz QSSGRenderExtension zurückgeben, die den auszuführenden Code enthält.

Siehe auch QSSGRenderExtension.

Dokumentation der Mitgliedsfunktionen

[override virtual] QSSGRenderGraphObject *QQuick3DRenderExtension::updateSpatialNode(QSSGRenderGraphObject *node)

Diese Funktion wird während der Synchronisierung des QtQuick3D Szenengraphen aufgerufen, wenn ein Element erstellt wird oder wenn eine Aktualisierung angefordert wird, in der Regel als Ergebnis einer Änderung der Eigenschaften des Elements. Die Funktion sollte eine Instanz QSSGRenderExtension zurückgeben, die den Code enthält, der während der Ausführung der Rendering-Pipeline von QtQuick3D ausgeführt werden soll.

Hinweis: Die Instanz QSSGRenderExtension ist ein Ressourcenobjekt und gehört dem QtQuick3D Szenengraph. Wenn eine andere Instanz oder null zurückgegeben wird, wird die vorherige Instanz zum Löschen durch den Renderer in die Warteschlange gestellt.

Siehe auch QSSGRenderExtension.

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