|
| | jolt_context (const jolt_settings &p_settings, event::event_bus &p_bus) |
| | construct a new physics context with jolt implemented as its backend
|
| |
|
void | destroy () |
| | Performs cleanup when simulation stops.
|
| |
|
void | update (float p_delta_time) |
| | updates our simulation using delta time and works with a fixed timestep
|
| |
| void | prepare () |
| | As soon all physics bodies/colliders are created.
|
| |
| void | add_box_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const box_collider *p_collider) |
| |
| void | add_sphere_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const sphere_collider *p_collider) |
| |
| void | add_capsule_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const capsule_collider *p_collider) |
| |
| transform | read_transform (uint32_t p_id) |
| |
| physics_body | read_physics_body (uint32_t p_id) |
| |
|
void | set_linear_velocity (uint64_t p_id, const glm::vec3 &p_linear_velocity) |
| |
|
void | set_angular_velocity (uint64_t p_id, const glm::vec3 &p_angular_velocity) |
| |
|
void | set_force (uint64_t p_id, const glm::vec3 &p_force) |
| |
|
void | set_force_and_torque (uint64_t p_id, const glm::vec3 &p_force, const glm::vec3 &p_torque) |
| |
|
void | set_impulse (uint64_t p_id, const glm::vec3 &p_impulse) |
| |
|
| void | emplace_box_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const box_collider *p_collider) override |
| | Any emplace_* specific function are specific collider implementation-specific to the backend (context) API's they are implemented with.
|
| |
| void | emplace_sphere_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const sphere_collider *p_collider) override |
| |
| void | emplace_capsule_collider (uint32_t p_entity_id, const transform *p_transform, const physics_body *p_body, const capsule_collider *p_collider) override |
| |
| transform | context_read_transform (uint32_t p_id) override |
| |
| physics_body | context_read_physics_body (uint32_t p_id) override |
| |
| void | linear_velocity (uint64_t p_id, const glm::vec3 &p_linear_velocity) override |
| |
| void | angular_velocity (uint64_t p_id, const glm::vec3 &p_angular_velocity) override |
| |
| void | force (uint64_t p_id, const glm::vec3 &p_cumulative_force) override |
| |
| void | add_force_and_torque (uint64_t p_id, const glm::vec3 &p_force, const glm::vec3 &p_torque) override |
| |
| void | add_impulse (uint64_t p_id, const glm::vec3 &p_impulse) override |
| |
jolt_context is the backend implementation of physics context
This is the jolt specific implementation of the physics context
Represents the external abstraction that is defined through the the engine-specific parameters.