From: Andrew G. <and...@gm...> - 2008-08-28 14:53:46
|
For point #3, a solution may be to create two versions of many of the matrix functions: *GLMmat3f *glmMatTranslate3f (GLMmat3f *out, GLfloat x, GLfloat y); GLMmat3f *glmMatTranslate3f (GLMmat3f *out, GLMmat3f *in, GLfloat x, GLfloat y);* The first one creates a translation matrix (overwrites *out) and the second one multiplies *in by a rotation matrix and saves the result in *out. It isn't technically necessary as you can still do: *glmMatMult3f( &myMatrix, glmMatTranslate( &tmp, x, y ) );* The only disadvantage is the usage of a tmp variable. As for the matrix stack, it almost seems like it needs a separate library because it maintains state which GLM doesn't do (so far). I was wondering, are there any issues with creating our own version of GLU? The GLU spec was written against GL1.1. Seems like it's time to rewrite it. Otherwise we have to come up with another library name that means GL utility library, or GL matrix stack library (GLMS?). It is our own SDK so, as long as we don't use the official GLU library, I don't think there's any reason not to create our own. pudman |