tec::PhysicsSystem
#include <physics-system.hpp>
Inherits from tec::CommandQueue< PhysicsSystem >, tec::EventQueue< MouseBtnEvent >, tec::EventQueue< EntityCreated >, tec::EventQueue< EntityDestroyed >
Public Functions
| Name | |
|---|---|
| PhysicsSystem() | |
| ~PhysicsSystem() | |
| void | SetSubstepping(int substep) |
| std::set< eid > | Update(const double delta, const GameState & state) |
| eid | RayCastMousePick(eid source_entity, double mouse_x =0.0f, double mouse_y =0.0f, float screen_width =1.0f, float screen_height =1.0f) |
| eid | RayCastIgnore(eid source_entity, eid ignore_entity) |
| glm::vec3 | GetLastRayPos() const |
| double | GetLastRayDistance() const |
| void | RaySetInvalid() |
| void | DebugDraw() |
| virtual void | On(eid , std::shared_ptr< MouseBtnEvent > data) override |
| virtual void | On(eid , std::shared_ptr< EntityCreated > data) override |
| virtual void | On(eid entity_id, std::shared_ptr< EntityDestroyed > data) override |
| Position | GetPosition(eid entity_id) |
| Orientation | GetOrientation(eid entity_id) |
Protected Functions
| Name | |
|---|---|
| void | SetGravity(const unsigned int entity_id, const btVector3 & f) Set a rigid body's gravity. |
| void | SetNormalGravity(const unsigned int entity_id) Set a rigid body's gravity to the world's gravity. |
Additional inherited members
Public Functions inherited from tec::CommandQueue< PhysicsSystem >
| Name | |
|---|---|
| CommandQueue() | |
| ~CommandQueue() | |
| void | ProcessCommandQueue() |
| void | QueueCommand(Command< T > && command) |
| void | QueueCommand(std::function< void(T *)> && command) |
Protected Attributes inherited from tec::CommandQueue< PhysicsSystem >
| Name | |
|---|---|
| std::atomic< std::queue< Command< T > > * > | global_command_queue |
| std::queue< Command< T > > * | local_queue |
Public Functions inherited from tec::EventQueue< MouseBtnEvent >
| Name | |
|---|---|
| EventQueue() | |
| EventQueue(eid entity_id) | |
| virtual | ~EventQueue() |
| void | ProcessEventQueue() |
| void | QueueEvent(Event< T > && e) |
Protected Attributes inherited from tec::EventQueue< MouseBtnEvent >
| Name | |
|---|---|
| Queue< Event< T > > * | read_event_queue |
| std::atomic< Queue< Event< T > > * > | write_event_queue |
Public Functions inherited from tec::EventQueue< EntityCreated >
| Name | |
|---|---|
| EventQueue() | |
| EventQueue(eid entity_id) | |
| virtual | ~EventQueue() |
| void | ProcessEventQueue() |
| void | QueueEvent(Event< T > && e) |
Protected Attributes inherited from tec::EventQueue< EntityCreated >
| Name | |
|---|---|
| Queue< Event< T > > * | read_event_queue |
| std::atomic< Queue< Event< T > > * > | write_event_queue |
Public Functions inherited from tec::EventQueue< EntityDestroyed >
| Name | |
|---|---|
| EventQueue() | |
| EventQueue(eid entity_id) | |
| virtual | ~EventQueue() |
| void | ProcessEventQueue() |
| void | QueueEvent(Event< T > && e) |
Protected Attributes inherited from tec::EventQueue< EntityDestroyed >
| Name | |
|---|---|
| Queue< Event< T > > * | read_event_queue |
| std::atomic< Queue< Event< T > > * > | write_event_queue |
Public Functions Documentation
function PhysicsSystem
PhysicsSystem()
function ~PhysicsSystem
~PhysicsSystem()
function SetSubstepping
inline void SetSubstepping(
int substep
)
function Update
std::set< eid > Update(
const double delta,
const GameState & state
)
function RayCastMousePick
eid RayCastMousePick(
eid source_entity,
double mouse_x =0.0f,
double mouse_y =0.0f,
float screen_width =1.0f,
float screen_height =1.0f
)
function RayCastIgnore
eid RayCastIgnore(
eid source_entity,
eid ignore_entity
)
function GetLastRayPos
inline glm::vec3 GetLastRayPos() const
function GetLastRayDistance
inline double GetLastRayDistance() const
function RaySetInvalid
inline void RaySetInvalid()
function DebugDraw
void DebugDraw()
function On
virtual void On(
eid ,
std::shared_ptr< MouseBtnEvent > data
) override
Reimplements: tec::EventQueue::On
function On
virtual void On(
eid ,
std::shared_ptr< EntityCreated > data
) override
Reimplements: tec::EventQueue::On
function On
virtual void On(
eid entity_id,
std::shared_ptr< EntityDestroyed > data
) override
Reimplements: tec::EventQueue::On
function GetPosition
Position GetPosition(
eid entity_id
)
function GetOrientation
Orientation GetOrientation(
eid entity_id
)
Protected Functions Documentation
function SetGravity
void SetGravity(
const unsigned int entity_id,
const btVector3 & f
)
Set a rigid body's gravity.
Parameters:
- const unsigned int entity_id The entity ID of the rigid body.
- btVector3 f The rigid body's new gravity.
function SetNormalGravity
void SetNormalGravity(
const unsigned int entity_id
)
Set a rigid body's gravity to the world's gravity.
Parameters:
- const unsigned int entity_id The entity ID of the rigid body.
Updated on 2022-07-24 at 19:27:35 +0000