zoukankan      html  css  js  c++  java
  • 【转】关于glMatrixMode

    void glMatrixMode(GLenum mode)

    mode 指定哪一个矩阵堆栈是下一个矩阵操作的目标,可选值: GL_MODELVIEW、GL_PROJECTION、GL_TEXTURE.

     

    说明

     

    glMatrixMode设置当前矩阵模式:

     

    GL_MODELVIEW,对模型视景矩阵堆栈应用随后的矩阵操作.

     

    GL_PROJECTION,对投影矩阵应用随后的矩阵操作.

     

    GL_TEXTURE,对纹理矩阵堆栈应用随后的矩阵操作.

     

    与glLoadIdentity()一同使用

     

    glLoadIdentity():该函数的功能是重置当前指定的矩阵为单位矩阵。

     

    在glLoadIdentity()之后我们为场景设置了透视图。glMatrixMode(GL_MODELVIEW)设置当前矩阵为模型视图矩阵,模型视图矩阵储存了有关物体的信息。

     

    编辑本段glMatrixMode与gluPerspective函数先后顺序

    GL_MODELVIEW 是模型矩阵 GL_PROJECTION 是投影矩阵。 gluPerspective的意思是设定投影变换,但要先通过glMatrixMode设定成投影矩阵才可以变换。如果你glMatrixMode设定成模型矩阵变换,gluPerspective就不会设定在投影矩阵,而是模型矩阵,导致没有图像。

     

    例如:

     

    gluPerspective(45.0f,(GLfloat)cx/(GLfloat)cy,0.1f,100.0f);

     

    glMatrixMode(GL_MODELVIEW);

     

    可以出来结果,反之,换位置后;

     

    glMatrixMode(GL_MODELVIEW);

     

    gluPerspective(45.0f,(GLfloat)cx/(GLfloat)cy,0.1f,100.0f);

     

    则,没有图像输出。

  • 相关阅读:
    SQL中存储过程与自定义函数的区别
    内置函数
    正则表达式
    HTML发展史
    触发器
    事务
    视图
    索引的使用
    存储过程和自定义函数的区别
    游标用法
  • 原文地址:https://www.cnblogs.com/lzhitian/p/2806464.html
Copyright © 2011-2022 走看看