Grindstone Game Engine
v0.2.0
An open source game engine and toolkit.
Toggle main menu visibility
Loading...
Searching...
No Matches
PhysicsWorldContext.hpp
1
#pragma once
2
3
#include <BulletDynamics/Dynamics/btDiscreteDynamicsWorld.h>
4
5
#include <Common/HashedString.hpp>
6
#include <Common/Memory/SmartPointers/UniquePtr.hpp>
7
#include <EngineCore/WorldContext/WorldContext.hpp>
8
9
const
Grindstone::ConstHashedString
physicsWorldContextName(
"PhysicsWorldContext"
);
10
11
namespace
Grindstone::Physics
{
12
class
WorldContext :
public
Grindstone::WorldContext
{
13
public
:
14
WorldContext();
15
WorldContext(
const
WorldContext&) =
delete
;
16
WorldContext(WorldContext&& )
noexcept
=
default
;
17
virtual
~WorldContext()
override
=
default
;
18
19
Grindstone::UniquePtr<struct btDbvtBroadphase>
broadphase =
nullptr
;
20
Grindstone::UniquePtr<class btDefaultCollisionConfiguration>
collisionConfiguration =
nullptr
;
21
Grindstone::UniquePtr<class btCollisionDispatcher>
dispatcher =
nullptr
;
22
Grindstone::UniquePtr<class btSequentialImpulseConstraintSolver>
solver =
nullptr
;
23
Grindstone::UniquePtr<class btDiscreteDynamicsWorld>
dynamicsWorld =
nullptr
;
24
25
[[nodiscard]]
static
WorldContext* GetActiveContext();
26
static
void
SetActiveContext(WorldContext& cxt);
27
virtual
void
SetAsActive()
override
;
28
};
29
}
Grindstone::ConstHashedString
Definition
HashedString.hpp:54
Grindstone::UniquePtr
Definition
UniquePtr.hpp:7
Grindstone::WorldContext
Definition
WorldContext.hpp:7
Grindstone::Physics
Definition
PhysicsLayer.hpp:6
plugins
Grindstone.Physics.Bullet
include
PhysicsWorldContext.hpp
Generated by
1.17.0