zoukankan      html  css  js  c++  java
  • OpenGL的视图变换、模型变换、投影变换、视口变换

    产生目标场景的过程类似于用照相机进行拍照:

    (1) 把照相机固定在三角架上,并让他对准场景从不同位置观察场景(视图变换)

          gluLookAt

    (2) 对场景进行安排,使各个物体在照片中的位置是我们所希望的 移动,旋转或者放大缩小场景中的物体(模型变换)

          glTranslate* ,glRotate* ,glScale*

    (3) 选择照相机镜头,并调整放大倍数(调焦) 显示物体时,可以选择物体是如何投影到屏幕上(投影变换)

          glFrustum , gluPerspective , glOrtho

    (4) 确定照片的大小,放大照片还是缩小照片 把图形画下来,是要占据整个屏幕还是屏幕的一部分(视口变换)

          glViewPort

    注意:视图变换必须出现在模型变换之前, 但可以在绘图之前的任何时候执行投影 变换和视口变换,

    如果OpenGL中不设置模型,投影,视口,所绘制的几何图形的坐标只能是-1到1(X轴向右,Y轴向上,Z轴垂直屏幕)。

    默认为视图模型变化 glMatrixMode(GL_MODELVIEW);

    默认投影变换为 glOrtho

  • 相关阅读:
    hive查询语句合并问题
    hive isnull或ifnull的替代方法if()方法
    hive科学计数法引发的问题
    科学计数法转字符串
    shell命令执行结果$?
    shell脚本中变量接受hive语句的返回值问题
    shell简单命令
    js切换图片
    js点击图片切换
    操作节点
  • 原文地址:https://www.cnblogs.com/1024Planet/p/5641306.html
Copyright © 2011-2022 走看看