NeHe OpenGL 第二课 学习总结

glLoadIdentity():

     重置当前的模型观察矩阵。

     当您调用glLoadIdentity()之后,您实际上将当前点移到了屏幕中心,X坐标轴从左至右,Y坐标轴从下至上,Z坐标轴从里至外。

     OpenGL屏幕中心的坐标值是X和Y轴上的0.0f点。

     X坐标轴:中心左面的坐标值是负值,右面是正值。

     Y坐标轴:移向屏幕顶端是正值,移向屏幕底端是负值。

     Z坐标轴:移入屏幕深处是负值,移出屏幕则是正值。

 

glTranslatef(x,y,z):

    沿着 X, Y 和 Z 轴移动。

    注意在glTranslatef(x, y, z)中当您移动的时候,您并不是相对屏幕中心移动,而是相对与当前所在的屏幕位置。

    例子:

    glTranslatef(-1.5f,0.0f,-6.0f):沿着X轴左移1.5个单位,Y轴不动(0.0f),最后移入屏幕6.0f个单位。

 

glBegin(GLenum mode):

   点函数,标志描述一个几何图元的顶点列表的开始,其参数mode表示几何图元的描述类型。

   类型和说明见下图所示:

  

 

      

 

glEnd():

   标志顶点列表的结束。

 

举例:

三角形:

glBegin(GL_TRIANGLES); // 绘制三角形
   glVertex3f( 0.0f, 1.0f, 0.0f); // 上顶点

   glVertex3f(-1.0f,-1.0f, 0.0f); // 左下
   glVertex3f( 1.0f,-1.0f, 0.0f); // 右下
glEnd(); // 三角形绘制结束

 

glBegin(GL_TRIANGLES)的意思是开始绘制三角形,glEnd() 告诉OpenGL三角形已经创建好了。

 

正方形:

glBegin(GL_QUADS); //  绘制正方形
    glVertex3f(-1.0f, 1.0f, 0.0f); // 左上

    glVertex3f( 1.0f, 1.0f, 0.0f); // 右上
    glVertex3f( 1.0f,-1.0f, 0.0f); // 左下
    glVertex3f(-1.0f,-1.0f, 0.0f); // 右下
glEnd(); // 正方形绘制结束


 

 

 

 

 

原文地址:https://www.cnblogs.com/frustrate2/p/2563687.html