OpenGL ES 模型视图之平移操作

来源:互联网 发布:知学学院于鲁 编辑:程序博客网 时间:2024/05/21 17:15

       对当前模型视图进行平移操作,在OpenGL ES 1.0中可以使用glTranslate*函数,而在2.0中需要自己设置平移矩阵。

       如,分别使用tx,ty,tz表示在x,y,z轴上的移动距离,那么在1.0中可以这样平移模型视图:

glTranslatef(tx, ty, tz);

       在2.0中你需要这么做:

float translation[16] = {1, 0, 0, 0,

                                        0,  1, 0, 0,

                                        0,  0, 1, 0,

                                        tx,  ty, tz, 1  };

glMultiMatrixf(translation);

       平移矩阵的推导过程如下:

vT = (vx vy vz 1) = (vx+tx  vy+ty  vz+tz 1*1) = v '

                                 



原创粉丝点击