22#ifndef INCLUDED_RENDERABLEOBJECT
23#define INCLUDED_RENDERABLEOBJECT
32#define RENDERDATA_UPDATE_VERTICES (1<<1)
33#define RENDERDATA_UPDATE_INDICES (1<<2)
#define RENDERDATA_UPDATE_VERTICES
Definition: RenderableObject.h:32
Definition: BoundingBoxAligned.h:34
Definition: Matrix3D.h:34
void GetInverse(CMatrix3D &dst) const
Definition: Matrix3D.cpp:303
void SetIdentity()
Definition: Matrix3D.cpp:30
Definition: RenderableObject.h:41
int m_UpdateFlags
Definition: RenderableObject.h:46
virtual ~CRenderData()
Definition: RenderableObject.h:44
CRenderData()
Definition: RenderableObject.h:43
Definition: RenderableObject.h:54
const CBoundingBoxAligned & GetWorldBounds()
Returns the world-space axis-aligned bounds of this object.
Definition: RenderableObject.h:104
bool m_BoundsValid
Remembers whether any bounds need to be recalculated.
Definition: RenderableObject.h:159
void SetDirty(u32 dirtyflags)
Definition: RenderableObject.h:86
virtual void SetTransform(const CMatrix3D &transform)
Definition: RenderableObject.h:67
CBoundingBoxAligned m_WorldBounds
World-space bounds of this object.
Definition: RenderableObject.h:140
CRenderData * GetRenderData()
Return object renderdata - can be null if renderer hasn't yet created the renderdata.
Definition: RenderableObject.h:125
CMatrix3D m_InvTransform
Definition: RenderableObject.h:144
NONCOPYABLE(CRenderableObject)
CRenderableObject()
Definition: RenderableObject.h:59
virtual ~CRenderableObject()
Definition: RenderableObject.h:64
CMatrix3D m_Transform
Definition: RenderableObject.h:142
virtual void InvalidateBounds()
Marks the bounds as invalid.
Definition: RenderableObject.h:115
const CMatrix3D & GetInvTransform() const
Definition: RenderableObject.h:82
void SetRenderData(CRenderData *renderdata)
Definition: RenderableObject.h:118
virtual void CalcBounds()=0
(Re)calculates and stores any bounds or bound-dependent data for this object.
void RecalculateBoundsIfNecessary()
Factored out so subclasses don't need to repeat this if they want to add additional getters for bound...
Definition: RenderableObject.h:130
const CMatrix3D & GetTransform() const
Definition: RenderableObject.h:80
CRenderData * m_RenderData
Definition: RenderableObject.h:146
uint32_t u32
Definition: types.h:39