I've been wanting to write my own multithreaded realtime raytracer in C++, but I don't want to implement all the vector and matrix logic that comes with it. I figured I'd do some research to find a good library for this, but I haven't had much success...
It's important that the implementation is fast, and preferably that it comes with some friendly licensing. I've read that boost
has basic algebra, but I couldn't find anything on how good it was regarding its speed.
For the rest, Google gave me Armadillo
, which claims to be very fast, and compares itself to certain other libraries that I haven't heard of.
Then I got Seldon
, which also claims to be efficient and convenient, although I couldn't find out where exactly they are on the scale.
Lastly I read about Eigen
, which I've also seen mentioned here on StackOverflow while searching here.
In the CG lecture at my university, they use HLSL
for the algebra (making the students implement/optimise parts of the raytracer), which got me thinking whether or not I could use GLSL
for this. Again, I have no idea what option is most efficient, or what the general consensus is on algebra libraries. I was hoping SO could help me out here, so I can get started with some real development :)
PS: I tried linking to sites, but I don't have enough rep yet