diff --git a/libraries/entities-renderer/src/RenderableBoxEntityItem.cpp b/libraries/entities-renderer/src/RenderableBoxEntityItem.cpp index 6700a35c7b..13df04e2e7 100644 --- a/libraries/entities-renderer/src/RenderableBoxEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableBoxEntityItem.cpp @@ -60,5 +60,5 @@ void RenderableBoxEntityItem::render(RenderArgs* args) { glPopMatrix(); glPopMatrix(); - RenderableDebugableEntityItem::render(args); + RenderableDebugableEntityItem::render(this, args); }; diff --git a/libraries/entities-renderer/src/RenderableBoxEntityItem.h b/libraries/entities-renderer/src/RenderableBoxEntityItem.h index 58f5e72b35..cda725056c 100644 --- a/libraries/entities-renderer/src/RenderableBoxEntityItem.h +++ b/libraries/entities-renderer/src/RenderableBoxEntityItem.h @@ -15,7 +15,7 @@ #include #include "RenderableDebugableEntityItem.h" -class RenderableBoxEntityItem : public BoxEntityItem, public RenderableDebugableEntityItem { +class RenderableBoxEntityItem : public BoxEntityItem { public: static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties); diff --git a/libraries/entities-renderer/src/RenderableDebugableEntityItem.cpp b/libraries/entities-renderer/src/RenderableDebugableEntityItem.cpp index ddba216744..f0ed75d0eb 100644 --- a/libraries/entities-renderer/src/RenderableDebugableEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableDebugableEntityItem.cpp @@ -18,10 +18,7 @@ #include "RenderableDebugableEntityItem.h" -void RenderableDebugableEntityItem::renderBoundingBox(RenderArgs* args, bool puffedOut) { - - EntityItem* entity = dynamic_cast(this); - +void RenderableDebugableEntityItem::renderBoundingBox(EntityItem* entity, RenderArgs* args, bool puffedOut) { glm::vec3 position = entity->getPosition(); glm::vec3 center = entity->getCenter(); glm::vec3 dimensions = entity->getDimensions(); @@ -48,14 +45,13 @@ void RenderableDebugableEntityItem::renderBoundingBox(RenderArgs* args, bool puf } -void RenderableDebugableEntityItem::render(RenderArgs* args) { - EntityItem* entity = dynamic_cast(this); +void RenderableDebugableEntityItem::render(EntityItem* entity, RenderArgs* args) { bool debugSimulationOwnership = args->_debugFlags & RenderArgs::RENDER_DEBUG_SIMULATION_OWNERSHIP; if (debugSimulationOwnership) { quint64 now = usecTimestampNow(); if (now - entity->getLastEditedFromRemote() < 0.1f * USECS_PER_SECOND) { - renderBoundingBox(args, true); + renderBoundingBox(entity, args, true); } } } diff --git a/libraries/entities-renderer/src/RenderableDebugableEntityItem.h b/libraries/entities-renderer/src/RenderableDebugableEntityItem.h index 30d17c3d0b..514979ec95 100644 --- a/libraries/entities-renderer/src/RenderableDebugableEntityItem.h +++ b/libraries/entities-renderer/src/RenderableDebugableEntityItem.h @@ -16,11 +16,8 @@ class RenderableDebugableEntityItem { public: - RenderableDebugableEntityItem() {} - virtual ~RenderableDebugableEntityItem() {} - - void renderBoundingBox(RenderArgs* args, bool puffedOut); - virtual void render(RenderArgs* args); + static void renderBoundingBox(EntityItem* entity, RenderArgs* args, bool puffedOut); + static void render(EntityItem* entity, RenderArgs* args); }; #endif // hifi_RenderableDebugableEntityItem_h diff --git a/libraries/entities-renderer/src/RenderableModelEntityItem.cpp b/libraries/entities-renderer/src/RenderableModelEntityItem.cpp index b5cf130672..b3232bcb57 100644 --- a/libraries/entities-renderer/src/RenderableModelEntityItem.cpp +++ b/libraries/entities-renderer/src/RenderableModelEntityItem.cpp @@ -192,10 +192,10 @@ void RenderableModelEntityItem::render(RenderArgs* args) { } if (!didDraw) { - renderBoundingBox(args, false); + RenderableDebugableEntityItem::renderBoundingBox(this, args, false); } - RenderableDebugableEntityItem::render(args); + RenderableDebugableEntityItem::render(this, args); } Model* RenderableModelEntityItem::getModel(EntityTreeRenderer* renderer) { diff --git a/libraries/entities-renderer/src/RenderableModelEntityItem.h b/libraries/entities-renderer/src/RenderableModelEntityItem.h index d6a4c81952..efd60faedc 100644 --- a/libraries/entities-renderer/src/RenderableModelEntityItem.h +++ b/libraries/entities-renderer/src/RenderableModelEntityItem.h @@ -21,7 +21,7 @@ class Model; class EntityTreeRenderer; -class RenderableModelEntityItem : public ModelEntityItem, public RenderableDebugableEntityItem { +class RenderableModelEntityItem : public ModelEntityItem { public: static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties);