zoukankan      html  css  js  c++  java
  • 基于3d计算机图形学理论(三)

    2.2 视见转换

    1.由世界空间转换到相机空间。
    2.相机由3参数定义(EYE,AT,UP)
    3.EYE:相机在世界空间中的位置;AT:相机场景中所指向的参考点(通常位于场景中间位置);UP:指向相机上方的向量(多数时候为y轴)
    4.利用视见参数构造视见空间坐标(u,v,n):


    5.世界空间标记(0,e1,e2,e3) ; 相机空间标记(EYE,u,v,n)
    6.将世界空间转换为相机空间:<1>将EYE移动至0处,<2>执行旋转操作,将(u,v,n)转换为(e1,e2,e3) 可将两者操作结合为视见矩阵
    7.视见矩阵:

    2.3逐顶点光照

    1.光照将在各个顶点处进行计算。
    2.光源定义于世界空间内——>现在一般采用逐片元光照
    3.场景中的可见区域成为视见体,视见体可视为一个无限的金字塔。 包含四个参数(fovy,aspect,n,f) (后补图)
    4.ascept(视见体宽高比)=w/n ; fovy:定义了垂直方向上的可见区域 ; n:为原点与近剪裁面的距离 ; f:为原点与远剪裁面的距离
    5.通过平面n和f截取的为视锥体,视锥体掌握了相机的内部结构。视椎体中的部分才进入GPU——视椎体测试
    6.进入视椎体的部分才进行剪裁操作进入到剪裁空间。

    2.4.2 投影矩阵

    1.透视投影:将视椎体由圆台转化为长方形(利用投影矩阵),投影线由原本一点出发呈发射状转化为平行线。特征:近大远小(远处的物体被缩小,远处大的物体被投影之后和近处相比可能还偏小【远近指距离投影中心(cop)的距离】)
    2.投影矩阵:

    3.经过投影转化的对象定义于右手剪裁空间,在顶点处理阶段可视为最后一步操作。

  • 相关阅读:
    [BZOJ1004] [HNOI2008]Cards解题报告(Burnside引理)
    [POJ1286&POJ2154&POJ2409]Polya定理
    monkey工具介绍及用法
    adb 命令使用与解释
    android-sdk的安装及配置
    spring-boot 加入拦截器Interceptor
    对spring boot 之AutoConfiguration 的理解
    java 集合操作小结
    java -d . **.java 与 java **.java 的区别
    关于Eclipse SVN 分支 与主干 小结
  • 原文地址:https://www.cnblogs.com/katy0308/p/11550867.html
Copyright © 2011-2022 走看看