我有用于对象转换的4x4矩阵。如何用我自己的4x4矩阵更新opengl模型视图矩阵?
float mat44[16];
但我不知道如何使用我的矩阵更新OpenGL ModelView矩阵。我应该使用的glTranslatef()/ glRotatef()的初步认识值从我的矩阵或者我应该使用glLoadMatrix(),glMultMatrix()?请帮助。谢谢。
我有用于对象转换的4x4矩阵。如何用我自己的4x4矩阵更新opengl模型视图矩阵?
float mat44[16];
但我不知道如何使用我的矩阵更新OpenGL ModelView矩阵。我应该使用的glTranslatef()/ glRotatef()的初步认识值从我的矩阵或者我应该使用glLoadMatrix(),glMultMatrix()?请帮助。谢谢。
如果你想申请的改造,目前改造已经在OpenGL的矩阵堆栈,那么你应该写:
glMultMatrixf(mat44);
但是,如果你要放弃目前什么是OpenGL的矩阵堆栈的顶部,并使用自己的转型,那么你应该写:
glLoadMatrixf(mat44);
对于OpenGL的2.1和更早的使用glLoadMatrix或glMultMatrix,根据手头的任务。
对OpenGL-3和以后将它们设置为使用glUniformMatrix
变种之一着色器正确的统一。
你用什么版本的OpenGL? – 2012-04-27 18:57:11