Hacker News new | ask | show | jobs
by jiggawatts 1 day ago
I gave this a go a couple of years ago. GA multivectors are a direct substitute for both vectors and matrix transformations. The challenge is efficiency: a unified type is too expensive for real time games. The typical approach is to create efficient subsets symbolically and bake those into the code so that the compiler has something it can work with. This works, but the "strong typing" of the mathematics and typical programming languages doesn't exactly mesh, so a clean typesystem/interface design is annoyingly difficult.

The main advantage is the elimination of gimbal lock which allows smooth interpolations of arbitrary rotations and translations. This dramatically simplifies certain codes relating to animation and robotics. In mathematics, it simplifies differentiation and integration over curved surfaces in 3D and higher dimensions.

Most developers working in those fields already use one of the many creatively named “impostors” of GA subsets in isolation, such as the quarternions.