steamworks-vr-api
steamworks-vr-api copied to clipboard
Use GLM
hmdmatrixtools.h uses mostly C style semantic (structs with functions to manipulate them) but can't be compiled in C because of the use of C++ syntax. As long as C++ is required anyway, why not use an existing first class vector / matrix library instead of writing yet another?
GLM - http://glm.g-truc.net/0.9.5/index.html - is an MIT licensed header only matrix library that implements everything hmdmatrixtools.h does, along with lots more, and allows for much more natural syntax using operator */+-
The downside is of course that you impose a dependency on your downstream users, and potential version conflicts if they're already using the library. However, this could be mitigated by creating a steam local copy of GLM pushed into it's own namespace