diff options
author | Mike Krus <mike.krus@kdab.com> | 2020-11-18 12:29:48 +0000 |
---|---|---|
committer | Mike Krus <mike.krus@kdab.com> | 2020-11-20 14:58:17 +0000 |
commit | c6aec09f4f6030fa11b9ba911e4c0df2fe7485b2 (patch) | |
tree | 3f2fbc49f76264fefaa8ceccbeacbde1b7ddaae7 /src/render/geometry/qgeometryrenderer.h | |
parent | b0dbd67d7b95cb4c74a502e04b68e3b3f9dc8e6b (diff) |
Introduce QGeometryRenderer::sortIndex
Lets user override the sorting order of entities.
[ChangeLog] Add sortIndex property to QGeometryRenderer to
explicitly control the order in which entities are rendered
Pick-to: 5.15
Change-Id: Iab7fd0d705f7ddcb424a59f86f8c2c28059813d1
Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/geometry/qgeometryrenderer.h')
-rw-r--r-- | src/render/geometry/qgeometryrenderer.h | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/src/render/geometry/qgeometryrenderer.h b/src/render/geometry/qgeometryrenderer.h index 14d8bbccc..c0e14eaaf 100644 --- a/src/render/geometry/qgeometryrenderer.h +++ b/src/render/geometry/qgeometryrenderer.h @@ -65,6 +65,7 @@ class Q_3DRENDERSHARED_EXPORT QGeometryRenderer : public Qt3DCore::QBoundingVolu Q_PROPERTY(bool primitiveRestartEnabled READ primitiveRestartEnabled WRITE setPrimitiveRestartEnabled NOTIFY primitiveRestartEnabledChanged) Q_PROPERTY(Qt3DCore::QGeometry* geometry READ geometry WRITE setGeometry NOTIFY geometryChanged) Q_PROPERTY(PrimitiveType primitiveType READ primitiveType WRITE setPrimitiveType NOTIFY primitiveTypeChanged) + Q_PROPERTY(float sortIndex READ sortIndex WRITE setSortIndex NOTIFY sortIndexChanged) public: explicit QGeometryRenderer(Qt3DCore::QNode *parent = nullptr); ~QGeometryRenderer(); @@ -99,6 +100,7 @@ public: bool primitiveRestartEnabled() const; Qt3DCore::QGeometry *geometry() const; PrimitiveType primitiveType() const; + float sortIndex() const; public Q_SLOTS: void setInstanceCount(int instanceCount); @@ -112,6 +114,7 @@ public Q_SLOTS: void setPrimitiveRestartEnabled(bool enabled); void setGeometry(Qt3DCore::QGeometry *geometry); void setPrimitiveType(PrimitiveType primitiveType); + void setSortIndex(float sortIndex); Q_SIGNALS: void instanceCountChanged(int instanceCount); @@ -126,11 +129,14 @@ Q_SIGNALS: void geometryChanged(Qt3DCore::QGeometry *geometry); void primitiveTypeChanged(PrimitiveType primitiveType); + void sortIndexChanged(float sortIndex); + protected: explicit QGeometryRenderer(QGeometryRendererPrivate &dd, Qt3DCore::QNode *parent = nullptr); private: Q_DECLARE_PRIVATE(QGeometryRenderer) + float m_sortIndex; }; } // namespace Qt3DRender |