zoukankan      html  css  js  c++  java
  • 视点变换和模型变换

      在OpenGL中,视点变换和模型变换被当做一种变换来看待。改变视点的位置和改变模型的位置是一个相对的过程,例如将物体从(0.0, 0.0, 0.0)移至(0.0, 0.0, -1.0)相当于将相机从(0.0, 0.0, 0.0)移至(0.0, 0.0, 1.0)。视点变换、模型变换将被合并,形成模型视点矩阵。可以使用函数glMatrixMode(GL_MODELVIEW)来指定当前矩阵模式为模型视点变换。在代码中,视点变换在模型变换之前指定,但投影变换和视口变换可以在绘图之前的任意时候指定。

    一些建议:

    (1)视点变换采用gluLookAt来改变相机的位置,朝向以及向上方向。

    (2)模型变换使用glTranslate, glRotate, glScale来进行平移,旋转,缩放反射,从而改变物体在场景中位置。

    void glRotatef( GLfloat angle, GLfloat x, GLfloat y, GLfloat z )

    angle的方向与向量v(x,y,z)符合右手法则,如下图(一个三棱锥围绕y轴旋转90°):

     

  • 相关阅读:
    vue 组件通信(全)
    clickoutside 代码实现
    reset css 样式重置
    vue computed 无法deep的问题
    sessionStorage的总结
    Windows系统maven安装配置
    Windows系统JDK安装配置
    开篇
    JIT即时编译器
    CLR基础
  • 原文地址:https://www.cnblogs.com/kekec/p/1792507.html
Copyright © 2011-2022 走看看