现在的位置: 首页 > 综合 > 正文

OpenGL ES 模型视图之平移操作

2018年05月05日 ⁄ 综合 ⁄ 共 455字 ⁄ 字号 评论关闭

       对当前模型视图进行平移操作,在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 '

                                 

抱歉!评论已关闭.