![]() |
Box2D Cannon Game With Stars
Ian Parberry's "Introduction to Game Physics"
|
The game object. More...
#include <Object.h>
Public Member Functions | |
CObject (eSprite t, b2Body *b) | |
Constructor. More... | |
~CObject () | |
Destructor. More... | |
void | draw () |
Draw object in Render World. More... | |
void | Update () |
Update from Physics Engine. More... | |
const bool | CrateBelow (float) const |
Crate is below a given height. More... | |
const eSprite | GetSpriteType () const |
Get sprite type. More... | |
Private Attributes | |
b2Body * | m_pBody = nullptr |
Physics World body. | |
Additional Inherited Members | |
![]() | |
static b2World * | m_pPhysicsWorld = nullptr |
Pointer to Box2D Physics World. | |
static CRenderer * | m_pRenderer = nullptr |
Pointer to Render World. | |
static CObjectManager * | m_pObjectManager = nullptr |
Pointer to object manager. | |
static LParticleEngine2D * | m_pParticleEngine = nullptr |
Pointer to particle engine. | |
static bool | m_bEasterEgg = false |
Easter egg! | |
The game object.
Game objects are responsible for remembering information about themselves, in particular, their representations in Render World and Physics World.
CObject::CObject | ( | eSprite | t, |
b2Body * | b | ||
) |
Constructor.
This constructor assumes that a Physics World body has already been created for this object. It then has responsibility for deleting it in its destructor.
t | Sprite type. |
b | Pointer to Physics World body. |
CObject::~CObject | ( | ) |
Destructor.
This destructor assumes that Box2D hasn't been shut down yet.
const bool CObject::CrateBelow | ( | float | h | ) | const |
Crate is below a given height.
If this is a crate, is it below a given height? We only care about crates, so we return true for everything else.
h | Height in Render World units. |
void CObject::draw | ( | ) |
Draw object in Render World.
Draw in Render World. Position and orientation must be gotten from Physics World.
const eSprite CObject::GetSpriteType | ( | ) | const |
Get sprite type.
Reader function for sprite type.
void CObject::Update | ( | ) |
Update from Physics Engine.
Update roll and position member variables from Physics World.