cglm
cglm copied to clipboard
Todo: (clifford/geometric algebra, grassmann algebra, bivector, trivector, quad-vector, rotors)
- https://en.wikipedia.org/wiki/Bivector
- https://en.wikipedia.org/wiki/Multivector
- https://en.wikipedia.org/wiki/Bivector#Projective_geometry
- https://www.euclideanspace.com/maths/algebra/clifford/d4/functions/inverse/index.htm
- https://www.euclideanspace.com/maths/algebra/clifford/index.htm
- https://www.euclideanspace.com/maths/algebra/clifford/geometry/transforms/motors/index.htm
- https://marctenbosch.com/quaternions/ (Let's remove Quaternions from every 3D Engine) (An Interactive Introduction to Rotors from Geometric Algebra)
- https://chinedufn.com/dual-quaternion-shader-explained/
just TODO list, we don't have to implement all...
It would be very cool to see some glm_ray_* functions, for example, ray-sphere collision test, ray-aabb collision test etc.
@Winter091 agree, we already have glm_ray_triangle() but more about ray would be awesome, added TODOs. Any help would be appreciated of course...
@recp well, I won't be able to help with implementation, i'm pretty bad at linear algebra. I'm building simple minecraft clone, ray - aabb hit detection is needed there, so I had found this blog. I copied unoptimized version to my project and it works pretty well, but at certain angles it fails to detect collision and I don't know why. Also I don't understand what tmin and tmax variable are doing there and what value they should be initially assigned to.
@Winter091 no problem, I'll try to implement highly optimized versions (maybe with SIMD) of ray functions asap. Maybe someone else can implement them before me, it is possible. There are lot of projects I'm working on, you just need to wait a bit ;)