summaryrefslogtreecommitdiffstats
path: root/src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp
diff options
context:
space:
mode:
authorAntti Määttä <antti.maatta@qt.io>2019-12-17 18:22:59 +0200
committerAntti Määttä <antti.maatta@qt.io>2020-01-13 13:27:28 +0200
commit49fba62dfff3166e44a4b85f99180c27f2bba69e (patch)
treeb7d1d2efb96115e30b44354f0f2e2eaa494aef60 /src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp
parent9f9c5497ac52b40ef336a0931cbac6068f6035e9 (diff)
Implement ordered group
Add ordered property to group, which disables automatic depth sorting for that group and all it's children. The group as a whole gets sorted with other objects as if it was one object. Task-number: QT3DS-3820 Change-Id: Iea71917fc78f4c543aa944d851c77b6794bd7d80 Reviewed-by: Miikka Heikkinen <miikka.heikkinen@qt.io> Reviewed-by: Tomi Korpipää <tomi.korpipaa@qt.io>
Diffstat (limited to 'src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp')
-rw-r--r--src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp b/src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp
index 712214a..2705b18 100644
--- a/src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp
+++ b/src/runtimerender/rendererimpl/Qt3DSRenderableObjects.cpp
@@ -600,5 +600,14 @@ namespace render {
theRenderContext, m_Generator.GetLayerGlobalRenderProperties(),
TShaderFeatureSet());
}
+
+ void SOrderedGroupRenderable::update()
+ {
+ QT3DSVec3 sum(0.0f, 0.0f, 0.0f);
+ for (int i = 0; i < m_renderables.size(); i++)
+ sum += m_renderables[i]->m_WorldCenterPoint;
+ sum *= 1.0f / m_renderables.size();
+ m_WorldCenterPoint = sum;
+ }
}
}