Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Collision detection #24

Open
2 tasks
MStachowicz opened this issue Oct 24, 2022 · 0 comments
Open
2 tasks

Collision detection #24

MStachowicz opened this issue Oct 24, 2022 · 0 comments
Assignees
Labels
Collision Medium Bug or task of intermediate time investment.
Milestone

Comments

@MStachowicz
Copy link
Owner

MStachowicz commented Oct 24, 2022

The herculean effort to implement a robust and performant physics and collision system.

  • Implement GJK
  • Implement time of impact over timestep with GJK swept volume
@MStachowicz MStachowicz added Collision Medium Bug or task of intermediate time investment. labels Oct 24, 2022
@MStachowicz MStachowicz self-assigned this Oct 24, 2022
MStachowicz added a commit that referenced this issue Nov 27, 2022
Rendering transformed AABBs. #28
Added Geometry lib. #31
Renamed BoundingBox to AABB and moved to Geometry lib. #31
Added AABB transform, unite(vec3) and various getters.
AABB members changed to min and max vec3s.
AABB initalised in MeshSystem on adding mesh.
Added MeshSystem::getMesh.
Moved CollisionSystem into System namespace. #31
MStachowicz added a commit that referenced this issue Nov 28, 2022
MStachowicz added a commit that referenced this issue Nov 28, 2022
CollisionSystem::checkCollisions n^2 algorithm added.
Testing only AABB with AABB.
Calling check after updating PhysicsSystem.
MStachowicz added a commit that referenced this issue Dec 3, 2022
Returns the nearest intersection point.
@MStachowicz MStachowicz changed the title Collision system Physics/Collision testing Feb 25, 2023
@MStachowicz MStachowicz changed the title Physics/Collision testing Physics/Collision system Feb 25, 2023
MStachowicz added a commit that referenced this issue Feb 25, 2023
Collision struct moved to System namespace to also return the Entity collided with.
Added flags to toggle applying collisions and setting restitution to physics.
@MStachowicz MStachowicz mentioned this issue Mar 8, 2023
3 tasks
@MStachowicz MStachowicz pinned this issue Apr 29, 2023
@MStachowicz MStachowicz mentioned this issue May 8, 2023
6 tasks
MStachowicz added a commit that referenced this issue May 10, 2023
Added Triangle::normal function and made constructors constexpr.
Made Ray and Triangle classes instead of structs.
Made params and members snake case + fixed usages (Intersect, Editor, DebugRenderer, OpenGLRenderer).
MStachowicz added a commit that referenced this issue May 13, 2023
MStachowicz added a commit that referenced this issue May 18, 2023
PhysicsSystem applies the accumulated force and resets it back to 0.
MStachowicz added a commit that referenced this issue May 20, 2023
MStachowicz added a commit that referenced this issue Jun 3, 2023
Added Line-Triangle visualisation.
MStachowicz added a commit that referenced this issue Jun 5, 2023
Modified Quad plane constructor to use the new constructor.
Modified the Quad triangle constructor to make a quad that fits exactly around the triangle.
MStachowicz added a commit that referenced this issue Jun 6, 2023
LineSegment is the previously defined Line class. Line now represents a geometric infinite line.
Added unimplemented functions for triangle intersection with LineSegments and Rays.
@MStachowicz MStachowicz changed the title Physics/Collision system Intersection functions Nov 15, 2023
MStachowicz added a commit that referenced this issue Nov 18, 2023
MStachowicz added a commit that referenced this issue Nov 20, 2023
MStachowicz added a commit that referenced this issue Nov 20, 2023
@MStachowicz MStachowicz changed the title Intersection functions Collision detection Dec 21, 2023
@MStachowicz MStachowicz added this to the Version 0.1 milestone Dec 21, 2023
MStachowicz added a commit that referenced this issue Dec 29, 2023
MStachowicz added a commit that referenced this issue Dec 29, 2023
GJK replaces the need for testing meshes triangle by triangle. No need for transforming all mesh triangles to world space.
Removed triangle visualisation from debug rendering.
MStachowicz added a commit that referenced this issue Feb 16, 2024
Added visualisation for EPA.
MStachowicz added a commit that referenced this issue Feb 16, 2024
Removed all defined unimplemented intersect functions.
Moved ContactPoint to CollisionSystem.
Removed the Shapes collision visitor paradigm in favour of GJK.
Removed Triangle Triangle point overload.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Collision Medium Bug or task of intermediate time investment.
Projects
None yet
Development

No branches or pull requests

1 participant