27 lines
927 B
C++
27 lines
927 B
C++
#pragma once
|
|
|
|
#include <App/V8/Tree/Instance.hpp>
|
|
#include <OGRE/Ogre.h>
|
|
|
|
namespace RNR
|
|
{
|
|
// this acts as both an Instance to fit in the RNR graph, and as an Ogre MovableObject to fit in the Ogre graph
|
|
// all instances that are Renderable are stored in the children of this
|
|
class Workspace : public Instance, public Ogre::MovableObject
|
|
{
|
|
public:
|
|
Workspace();
|
|
|
|
virtual void _updateRenderQueue(Ogre::RenderQueue* queue);
|
|
virtual const Ogre::String& getMovableType(void) const;
|
|
virtual const Ogre::AxisAlignedBox& getBoundingBox(void) const;
|
|
virtual Ogre::Real getBoundingRadius(void) const;
|
|
virtual void visitRenderables(Ogre::Renderable::Visitor* visitor, bool debugRenderables);
|
|
private:
|
|
Ogre::AxisAlignedBox m_bbox;
|
|
Ogre::String m_type;
|
|
|
|
void renderQueueAddInstance(Ogre::RenderQueue* queue, Instance* instance);
|
|
};
|
|
}
|