11#include <Jolt/Core/Factory.h>
12#include <Jolt/Core/JobSystemThreadPool.h>
13#include <Jolt/Core/TempAllocator.h>
14#include <Jolt/Physics/Body/BodyActivationListener.h>
15#include <Jolt/Physics/Body/BodyCreationSettings.h>
16#include <Jolt/Physics/Collision/BroadPhase/BroadPhaseLayer.h>
17#include <Jolt/Physics/PhysicsSettings.h>
18#include <Jolt/Physics/PhysicsSystem.h>
19#include <Jolt/RegisterTypes.h>
110 return std::dynamic_pointer_cast<Utils::ContactListenerImpl>(
_contactListener);
The core is the place where all the data of the engine is stored. It contains the registry (entities)...
Definition Core.hpp:33
~PhysicsManager()=default
JPH::TempAllocator * GetTempAllocator()
Get a pointer to the temp allocator.
Definition PhysicsManager.hpp:68
int GetCollisionSteps()
Get the number of collision steps.
Definition PhysicsManager.hpp:84
JPH::JobSystem * GetJobSystem()
Get a pointer to the job system.
Definition PhysicsManager.hpp:77
void Init(Engine::Core &core)
Initialize the physics system.
Definition PhysicsManager.cpp:22
std::shared_ptr< JPH::PhysicsSystem > _physicsSystem
Definition PhysicsManager.hpp:132
bool _shouldUpdatePhysics
Definition PhysicsManager.hpp:141
PhysicsManager()
Definition PhysicsManager.cpp:11
std::shared_ptr< Utils::ContactListenerImpl > GetContactListener()
Get the contact listener, casted back as a ContactListenerImpl.
Definition PhysicsManager.hpp:103
void ActivatePhysics()
Set the physics system to be updated.
Definition PhysicsManager.hpp:123
JPH::BodyInterface & GetBodyInterface()
Get a reference to the body interface for manipulating bodies.
Definition PhysicsManager.hpp:59
JPH::PhysicsSystem & GetPhysicsSystem()
Get a reference to the physics system.
Definition PhysicsManager.hpp:51
void DeactivatePhysics()
Set the physics system to not be updated.
Definition PhysicsManager.hpp:128
std::shared_ptr< JPH::JobSystem > _jobSystem
Definition PhysicsManager.hpp:138
bool IsPhysicsActivated() const
Check if the physics system should be updated.
Definition PhysicsManager.hpp:118
std::shared_ptr< JPH::Factory > _factory
Definition PhysicsManager.hpp:131
std::shared_ptr< JPH::ObjectVsBroadPhaseLayerFilter > _objectVsBroadPhaseLayerFilter
Definition PhysicsManager.hpp:135
std::shared_ptr< JPH::BroadPhaseLayerInterface > _broadPhaseLayerInterface
Definition PhysicsManager.hpp:134
std::shared_ptr< JPH::TempAllocator > _tempAllocator
Definition PhysicsManager.hpp:137
int _collisionSteps
Definition PhysicsManager.hpp:143
std::shared_ptr< JPH::ObjectLayerPairFilter > _objectLayerPairFilter
Definition PhysicsManager.hpp:136
void SetCollisionSteps(int steps)
Set the number of collision steps.
Definition PhysicsManager.hpp:94
std::shared_ptr< JPH::ContactListener > _contactListener
Definition PhysicsManager.hpp:139
Definition BodyEntityMap.hpp:12