Ember
A C++ 20 'game engine' built with SDL3 with wide platform support.
Public Member Functions | Public Attributes | Protected Attributes | List of all members
PhysicsManager Class Referencefinal

PhysicsManager class. More...

#include <physics_sys.h>

Inheritance diagram for PhysicsManager:
EngineManager

Public Member Functions

void register_body (PhysicsObject2D *body)
 
void unregister_body (PhysicsObject2D *body)
 
bool initialize () override
 
void update (double delta_time=0) override
 
void shutdown () override
 
 PhysicsManager ()=default
 
 ~PhysicsManager () override=default
 
- Public Member Functions inherited from EngineManager
virtual ~EngineManager ()=default
 
const char * get_name () const
 

Public Attributes

std::unordered_set< PhysicsObject2D * > rigid_bodies
 

Protected Attributes

const char * name = "PhysicsSystem"
 
- Protected Attributes inherited from EngineManager
const char * name = "EngineSystem"
 

Detailed Description

PhysicsManager class.

Manages 2D physics Collision and Resolution using Box2D.

Version
1.2.0

Constructor & Destructor Documentation

◆ PhysicsManager()

PhysicsManager::PhysicsManager ( )
default

◆ ~PhysicsManager()

PhysicsManager::~PhysicsManager ( )
overridedefault

Member Function Documentation

◆ initialize()

bool PhysicsManager::initialize ( )
overridevirtual

Implements EngineManager.

◆ register_body()

void PhysicsManager::register_body ( PhysicsObject2D body)

◆ shutdown()

void PhysicsManager::shutdown ( )
overridevirtual

Implements EngineManager.

◆ unregister_body()

void PhysicsManager::unregister_body ( PhysicsObject2D body)

◆ update()

void PhysicsManager::update ( double  delta_time = 0)
overridevirtual

Implements EngineManager.

Member Data Documentation

◆ name

const char* PhysicsManager::name = "PhysicsSystem"
protected

◆ rigid_bodies

std::unordered_set<PhysicsObject2D*> PhysicsManager::rigid_bodies

The documentation for this class was generated from the following files: