Monad Engine da02fba2
> Undercity Codex_
Loading...
Searching...
No Matches
PhysicsManager.h
Go to the documentation of this file.
1#pragma once
2
3#include <memory>
4
5class btBroadphaseInterface;
6class btDefaultCollisionConfiguration;
7class btCollisionDispatcher;
8class btSequentialImpulseConstraintSolver;
9class btDiscreteDynamicsWorld;
10
11namespace eng
12{
13 class RigidBody;
14
16 {
17 public:
20
21 void Init();
22 void Update(float deltaTime);
23
24 void AddRigidBody(RigidBody* body);
25 void RemoveRigidBody(RigidBody* body);
26
27 btDiscreteDynamicsWorld* GetWorld();
28
29 private:
30 std::unique_ptr<btBroadphaseInterface> m_broadphase;
31 std::unique_ptr<btDefaultCollisionConfiguration> m_collisionConfig;
32 std::unique_ptr<btCollisionDispatcher> m_dispatcher;
33 std::unique_ptr<btSequentialImpulseConstraintSolver> m_solver;
34 std::unique_ptr<btDiscreteDynamicsWorld> m_world;
35 };
36}
btDiscreteDynamicsWorld * GetWorld()
void RemoveRigidBody(RigidBody *body)
void Update(float deltaTime)
void AddRigidBody(RigidBody *body)