Saga
Saga Game Engine
Loading...
Searching...
No Matches
ellipsoid.h File Reference
#include <optional>
#include <glm/vec3.hpp>
Include dependency graph for ellipsoid.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Namespaces

namespace  Saga
 
namespace  Saga::Geometry
 

Functions

std::optional< float > Saga::Geometry::rayEllipsoidIntersection (const glm::vec3 &rayOrigin, const glm::vec3 &rayDirection, const glm::vec3 &position, const glm::vec3 &radius)
 Find the intersection time t between a ray and an axis-aligned ellipsoid.
 
std::optional< float > Saga::Geometry::rayUnitSphereAtOriginIntersection (const glm::vec3 &origin, const glm::vec3 &rayDirection)
 Find the intersection time t between a unit sphere at the origin and a ray.
 
std::optional< float > Saga::Geometry::unitSphereTriangleCollision (const glm::vec3 &pos, const glm::vec3 &dir, const glm::vec3 &a, const glm::vec3 &b, const glm::vec3 &c)
 Find the intersection time t between a moving unit sphere with a triangle.
 
std::optional< float > Saga::Geometry::movingEllipsoidEllipsoidIntersection (const glm::vec3 &ellipsoidPos0, const glm::vec3 &ellipsoidDir0, const glm::vec3 &ellipsoidRadius0, const glm::vec3 &ellipsoidPos1, const glm::vec3 &ellipsoidRadius1)
 Find the intersection between two moving axis-aligned ellipsoids.
 
std::optional< float > Saga::Geometry::ellipsoidTriangleCollision (const glm::vec3 &ellipsoidPos, const glm::vec3 &ellipsoidDir, const glm::vec3 &ellipsoidRadius, const glm::vec3 &a, const glm::vec3 &b, const glm::vec3 &c)
 Find the intersection time t between a moving ellipsoid and a triangle.
 
std::optional< float > Saga::Geometry::unitSphereEdgeCollision (const glm::vec3 &pos, const glm::vec3 &dir, const glm::vec3 &c, const glm::vec3 &d)
 Find collision between a moving unit sphere and an edge (line segment) in 3D.