mirror of
https://github.com/HifiExperiments/overte.git
synced 2025-08-09 15:49:33 +02:00
stop doing useless multiple inheritance
This commit is contained in:
parent
b47184de78
commit
ea1ec0186e
6 changed files with 10 additions and 17 deletions
|
@ -60,5 +60,5 @@ void RenderableBoxEntityItem::render(RenderArgs* args) {
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
glPopMatrix();
|
glPopMatrix();
|
||||||
|
|
||||||
RenderableDebugableEntityItem::render(args);
|
RenderableDebugableEntityItem::render(this, args);
|
||||||
};
|
};
|
||||||
|
|
|
@ -15,7 +15,7 @@
|
||||||
#include <BoxEntityItem.h>
|
#include <BoxEntityItem.h>
|
||||||
#include "RenderableDebugableEntityItem.h"
|
#include "RenderableDebugableEntityItem.h"
|
||||||
|
|
||||||
class RenderableBoxEntityItem : public BoxEntityItem, public RenderableDebugableEntityItem {
|
class RenderableBoxEntityItem : public BoxEntityItem {
|
||||||
public:
|
public:
|
||||||
static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties);
|
static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties);
|
||||||
|
|
||||||
|
|
|
@ -18,10 +18,7 @@
|
||||||
#include "RenderableDebugableEntityItem.h"
|
#include "RenderableDebugableEntityItem.h"
|
||||||
|
|
||||||
|
|
||||||
void RenderableDebugableEntityItem::renderBoundingBox(RenderArgs* args, bool puffedOut) {
|
void RenderableDebugableEntityItem::renderBoundingBox(EntityItem* entity, RenderArgs* args, bool puffedOut) {
|
||||||
|
|
||||||
EntityItem* entity = dynamic_cast<EntityItem*>(this);
|
|
||||||
|
|
||||||
glm::vec3 position = entity->getPosition();
|
glm::vec3 position = entity->getPosition();
|
||||||
glm::vec3 center = entity->getCenter();
|
glm::vec3 center = entity->getCenter();
|
||||||
glm::vec3 dimensions = entity->getDimensions();
|
glm::vec3 dimensions = entity->getDimensions();
|
||||||
|
@ -48,14 +45,13 @@ void RenderableDebugableEntityItem::renderBoundingBox(RenderArgs* args, bool puf
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
void RenderableDebugableEntityItem::render(RenderArgs* args) {
|
void RenderableDebugableEntityItem::render(EntityItem* entity, RenderArgs* args) {
|
||||||
EntityItem* entity = dynamic_cast<EntityItem*>(this);
|
|
||||||
bool debugSimulationOwnership = args->_debugFlags & RenderArgs::RENDER_DEBUG_SIMULATION_OWNERSHIP;
|
bool debugSimulationOwnership = args->_debugFlags & RenderArgs::RENDER_DEBUG_SIMULATION_OWNERSHIP;
|
||||||
|
|
||||||
if (debugSimulationOwnership) {
|
if (debugSimulationOwnership) {
|
||||||
quint64 now = usecTimestampNow();
|
quint64 now = usecTimestampNow();
|
||||||
if (now - entity->getLastEditedFromRemote() < 0.1f * USECS_PER_SECOND) {
|
if (now - entity->getLastEditedFromRemote() < 0.1f * USECS_PER_SECOND) {
|
||||||
renderBoundingBox(args, true);
|
renderBoundingBox(entity, args, true);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -16,11 +16,8 @@
|
||||||
|
|
||||||
class RenderableDebugableEntityItem {
|
class RenderableDebugableEntityItem {
|
||||||
public:
|
public:
|
||||||
RenderableDebugableEntityItem() {}
|
static void renderBoundingBox(EntityItem* entity, RenderArgs* args, bool puffedOut);
|
||||||
virtual ~RenderableDebugableEntityItem() {}
|
static void render(EntityItem* entity, RenderArgs* args);
|
||||||
|
|
||||||
void renderBoundingBox(RenderArgs* args, bool puffedOut);
|
|
||||||
virtual void render(RenderArgs* args);
|
|
||||||
};
|
};
|
||||||
|
|
||||||
#endif // hifi_RenderableDebugableEntityItem_h
|
#endif // hifi_RenderableDebugableEntityItem_h
|
||||||
|
|
|
@ -192,10 +192,10 @@ void RenderableModelEntityItem::render(RenderArgs* args) {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!didDraw) {
|
if (!didDraw) {
|
||||||
renderBoundingBox(args, false);
|
RenderableDebugableEntityItem::renderBoundingBox(this, args, false);
|
||||||
}
|
}
|
||||||
|
|
||||||
RenderableDebugableEntityItem::render(args);
|
RenderableDebugableEntityItem::render(this, args);
|
||||||
}
|
}
|
||||||
|
|
||||||
Model* RenderableModelEntityItem::getModel(EntityTreeRenderer* renderer) {
|
Model* RenderableModelEntityItem::getModel(EntityTreeRenderer* renderer) {
|
||||||
|
|
|
@ -21,7 +21,7 @@
|
||||||
class Model;
|
class Model;
|
||||||
class EntityTreeRenderer;
|
class EntityTreeRenderer;
|
||||||
|
|
||||||
class RenderableModelEntityItem : public ModelEntityItem, public RenderableDebugableEntityItem {
|
class RenderableModelEntityItem : public ModelEntityItem {
|
||||||
public:
|
public:
|
||||||
static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties);
|
static EntityItem* factory(const EntityItemID& entityID, const EntityItemProperties& properties);
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue