beavis
10-26-2000, 05:32 AM
Usually using the inverse camera model, you do something like this with the modelview matrix:
glRotate(xrot, 1.0f, 0.0f, 0.0f);
glRotate(yrot, 0.0f, 1.0f, 0.0f);
glTranslate(-eye[0], -eye[1], -eye[2]);
Now I've combined these three into one matrix calculation filling it up manually and then loading it with glLoadMatrixf();
Now I would expect the latter to be more efficient since instead of three matrix multiplications I calculate individual matrix elements using all rotation and transformation params. Is that really the case? Or is letting OpenGL do that more efficient?
In general, is it better to use your own
matrix calculations? I'd prefer that since that usually shortens the calculations...
Thanks,
glRotate(xrot, 1.0f, 0.0f, 0.0f);
glRotate(yrot, 0.0f, 1.0f, 0.0f);
glTranslate(-eye[0], -eye[1], -eye[2]);
Now I've combined these three into one matrix calculation filling it up manually and then loading it with glLoadMatrixf();
Now I would expect the latter to be more efficient since instead of three matrix multiplications I calculate individual matrix elements using all rotation and transformation params. Is that really the case? Or is letting OpenGL do that more efficient?
In general, is it better to use your own
matrix calculations? I'd prefer that since that usually shortens the calculations...
Thanks,