summaryrefslogtreecommitdiffstats
path: root/src/render/backend/managers_p.h
diff options
context:
space:
mode:
authorMike Krus <mike.krus@kdab.com>2017-01-19 19:47:27 +0000
committerSean Harmer <sean.harmer@kdab.com>2017-01-23 21:45:24 +0000
commit45b5514ee1f816b24461f7523b779f65c6c93ea5 (patch)
tree53fd48ded880df657ee830ca61f64c69dde89847 /src/render/backend/managers_p.h
parenta6c5261671379da7e8fb78b10508fc00d3e7b16a (diff)
LevelOfDetail (LOD) node
Component to control complexity of entities based on either distance to camera or size on screen. Given a specific camera, the LevelOfDetail computes the distance to the observer, or the screen size of the entity. The currentIndex property is updated to identify which of the entries in the provided array of distance or size ranges contains the current value. A disabled LevelOfDetail component will act as a simple (user controlled) switch. Updates are not done on disabled sub trees since their bounding boxes may not be valid. Change-Id: Ifa4c088de6b80b6a6ed203070411761574686cdb Reviewed-by: Sean Harmer <sean.harmer@kdab.com>
Diffstat (limited to 'src/render/backend/managers_p.h')
-rw-r--r--src/render/backend/managers_p.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/src/render/backend/managers_p.h b/src/render/backend/managers_p.h
index ed43fde13..ce6767958 100644
--- a/src/render/backend/managers_p.h
+++ b/src/render/backend/managers_p.h
@@ -58,6 +58,7 @@
#include <Qt3DRender/private/effect_p.h>
#include <Qt3DRender/private/entity_p.h>
#include <Qt3DRender/private/layer_p.h>
+#include <Qt3DRender/private/levelofdetail_p.h>
#include <Qt3DRender/private/material_p.h>
#include <Qt3DRender/private/shader_p.h>
#include <Qt3DRender/private/texture_p.h>
@@ -176,6 +177,17 @@ public:
LayerManager() {}
};
+class LevelOfDetailManager : public Qt3DCore::QResourceManager<
+ LevelOfDetail,
+ Qt3DCore::QNodeId,
+ 16,
+ Qt3DCore::ArrayAllocatingPolicy,
+ Qt3DCore::NonLockingPolicy>
+{
+public:
+ LevelOfDetailManager() {}
+};
+
class MaterialManager : public Qt3DCore::QResourceManager<
Material,
Qt3DCore::QNodeId,