Author Topic: It seems to be what I'm llooking for...  (Read 7653 times)

0 Members and 1 Guest are viewing this topic.


  • Associate
  • Posts: 1
It seems to be what I'm llooking for...
« on: January 30, 2009, 12:38:02 AM »
I'm a C/GLSL programmer (note: not C++). Mainly I've done 4k productions for the demoscene but I'm doing other stuff now too. I was looking for a maths lib that had the following properties:

1. Simple syntax (glsl is ideal!)
2. No template exposure - I'm not a generic programmer
3. Compiles by drop in code, not by dll
4. Powerful and robust

So I have a few questions:

How do I use the syntax with an array of floats? So for example an array of floats (say 9 of them) that represents the vertices of a triangle. I want to use it _as_ an array of vec3 (3 of them), do I have to use a constructor on each one or is there some pointer oriented method I can use?

Does the library pull things in dynamically at link time? For example if I build with extended fcuntions but then only use two of them, will my exe size increase by the szie of all extended functions or just the two I use?

How stable and tested is the software? Hard to answer I know but can you give me some feel?

Are there example code snippets beyond the humus demo?

I suspect I'm going to get hit by error information related to the templates when I screw up right?

Thanks for any help.

« Last Edit: January 30, 2009, 09:17:29 AM by auld »


  • Soldier
  • **
  • Posts: 51
Re: It seems to be what I'm llooking for...
« Reply #1 on: January 30, 2009, 10:14:54 PM »
As far as you are using core feature, I can say that GLM is fairly reliable. It is used for commertial software, the number of users is became large enough for quick bug report and GLM have been used for a varius kind of applications: OpenGL, raytracing, sketelon animation, geometry morphing, image processing, etc.

Is it perfect? No, complete unit tests would be required for this. GLM extensions are still mark as experimental. To be fair again, most of them are quite stable so that I expect to mark them as stable.

GLM is suposed to be easly extendable so that you can create your own features.
Concerning the template errors nightmare, it can happen but it's definelty something I have considered.

Those days, one mistake can bring you hell: type mismatch. 1.0 != 1.0f or size_t != int or char even if all values are zero. GLM and GLSL are strongly typed, because of templates but it matches with glsl spec.

Don't hesitate to report any issue, it makes glm become better and better!