1#ifndef PGR_SEM_COPAKOND_COLLISIONSHAPE_H
2#define PGR_SEM_COPAKOND_COLLISIONSHAPE_H
4#define DELTA_TIME_FIXED (1.0f / 20.0f)
29 const glm::vec3 &
scale = glm::vec3(1.0f),
bool visible =
false);
31 void draw(
float deltaTime)
override;
CollisionShape(const glm::vec3 &position=glm::vec3(0.0f), const glm::vec3 &rotation=glm::vec3(0.0f), const glm::vec3 &scale=glm::vec3(1.0f), bool visible=false)
Definition collisionShape.cpp:4
bool isEnabled() const
Definition collisionShape.h:35
ShapeType shapeType
Definition collisionShape.h:25
PhysicsMaterial physicsMaterial
Definition collisionShape.h:26
virtual CollisionResult collisionCheckDetailed(const CollisionShape &mesh, glm::vec3 velocity, bool calculateNormal=false)=0
Detailed collision check returning overlap status, normal, and reflection vectors.
bool _enabled
Definition collisionShape.h:20
void disable()
Definition collisionShape.h:34
virtual bool collisionCheck(const CollisionShape &mesh, glm::vec3 velocity)=0
Fast boolean check if this shape intersects with another.
void _generateGeometry(GLuint shader, const std::vector< float > &vertices, const std::vector< float > &normals)
Definition collisionShape.cpp:26
void enable()
Definition collisionShape.h:33
glm::vec3 & rotation()
Definition geometry.h:61
glm::vec3 & scale()
Definition geometry.h:62
glm::vec3 & position()
Definition geometry.h:60
Mesh()
Definition mesh.cpp:12
PGR Semestral work with sample scenes and bowling. doxygen was generated with a help of LLM.
Definition bezier.cpp:3
Shader * shader
Definition main.cpp:37
ShapeType
Definition collisionShape.h:9
@ SPHERE
Definition collisionShape.h:9
@ BOX
Definition collisionShape.h:9
void draw()
Main render loop. Handles updates, physics, and rendering of all scene elements.
Definition main.cpp:97
Container for collision response data.
Definition collisionDetector.h:12
Physical properties affecting collision resolution.
Definition collisionShape.h:12
float friction
Definition collisionShape.h:14
float bounciness
Definition collisionShape.h:13