cglm
cglm copied to clipboard
📽 Highly Optimized 2D / 3D Graphics Math (glm) for C
Function names are not HIDDEN in macro, in this way we can use 'Go To Definition' in IDEs. With making raw implementation Macro/Template allows us to implement `double` precision with...
General === - [ ] Unit tests (In Progress) **[important]** - [x] ARM Neon Arch (In Progress) - [ ] Unit tests for comparing cglm with glm results **[important]** -...
**cglm** already supports AVX version for mat4_mul, but mat4_inv was missing. I implemented AVX1 version of matrix inverse. After upgraded my Macbook Pro I'll try to implement AVX2 + FMA...
Previous: ```C #ifndef CGLM_USE_DEFAULT_EPSILON # ifndef GLM_FLT_EPSILON # define GLM_FLT_EPSILON 1e-6 # endif #else # define GLM_FLT_EPSILON FLT_EPSILON #endif ``` New: ```C #ifndef GLM_FLT_EPSILON # ifndef FLT_EPSILON # define GLM_FLT_EPSILON...
I am trying to add cglm to vcpkg https://github.com/microsoft/vcpkg/pull/13510 Apparently, CI pipeline have tests for all platforms and cglm is failing for ARM Windows UWP platform. ``` D:\buildtrees\cglm\src\v0.7.8-ef8c98816b.clean\include\cglm\vec4-ext.h(47,39): error C2719:...
**cglm** always tries to make things easier and faster. Currently I'm trying to switch my [render engine](https://github.com/recp/gk) from OpenGL to Metal and other graphics libraries by writing a GPU library...
Since macOS is switching to Apple Silicon, it is time to do more optimizations on ARM side. FWIW, **cglm** already applies optimizations to almost all **vec4** operations and some **mat4**...
Due to functions not taking arguments as `const` when possible (ie. when a variable is never written to), it's very tough to integrate CGLM with code that passes vector/matrix types...
Ken Shoemake's algorithm seems to be most common one, it also handles 24 different permutations of rotation order. This must be more robust and flexible api. I was sent an...
[Docs about dest param :](https://cglm.readthedocs.io/en/latest/getting_started.html#function-design) "You can pass all parameter same (this is similar to m1 *= m1), you can pass dest as m1 or m2 (this is similar to...