三维观察流水线的理解
来源:互联网 发布:php mongodb连接池配置 编辑:程序博客网 时间:2024/04/30 15:36
在计算机图形学中,渲染图形的过程可以分为两大类:第一步是T&L过程全称是Transforming and Lighting,即顶点的坐标变换和光照过程,通常称为顶点变换流水线;第二步就是光栅化,对于光栅化就是按照图形顶点信息设置对应的像素的颜色,然后呈现在屏幕上。下面我们以DirectX3D中的T&L过程为例,说明具体的过程。DirectX3D中图形的顶点的坐标系是三维坐标系,而计算机的屏幕则是一个二维的平面,我们要将三维坐标系中的顶点渲染到二维的电脑平面上,就需要对顶点进行处理。使其投射到二维坐标系中,这个过程就是顶点的坐标变换。
T&L的顶点的变换过程分为以下五步:
1 世界变换
物体在三维空间中的运动以及形变的过程叫做世界变换。其中物体所在的三维空间为世界空间,物体的坐标系为世界坐标系。世界变换主要包括移动、旋转、缩放等。
2 观察变换
物体由世界坐标系转换到观察坐标系的过程叫做观察变换。这其实就像用摄像机摄影一样,摄影机所在位置就是观察点,摄像机的朝向就是观察方向。以观察点为坐标原点,以观察方向为坐标轴的坐标系就是观察坐标系。
3 投影变换
将三维空间中的顶点投影到二维平面的过程叫做投影变换。这个过程可以看做,顶点经过观察变换后,将三维坐标投影到摄像机的胶片上,以胶片的中心为坐标原点的坐标系为投影坐标系。
4 规范化变换与裁剪
5 视区变换
将浮点坐标转换为像素坐标的过程叫做视区变换。最终的坐标与定义的视区的长宽比例以及长宽大小有关。不过DirectX3D的图形渲染也没有必要必须需要经过T&L处理,像在之前的章节中,我们绘制的图形使用的顶点,在定义时被定义为经过变换的顶点,即直接将顶点的坐标作为屏幕坐标绘制出来,并没有进行T&L处理,但如果想得到绚丽的效果,T&L处理还是必须的。
- 三维观察流水线的理解
- 三维建模-观察变换流水线
- 三维观察
- 三维数组的理解
- opengl三维观察
- 怎么理解STM8的三级流水线架构?
- 计算机图形学三维变换、三维观察与消隐算法的实现
- 三维观察与坐标变换
- fpga流水线理解
- 流水线技术理解
- 用工厂流水线的方式来理解 RxJava 的概念
- 用工厂流水线的方式来理解 RxJava 的概念
- 用工厂流水线的方式来理解 RxJava 的概念
- 用工厂流水线的方式来理解 RxJava 的概念
- 用工厂流水线的方式来理解 RxJava 的概念
- 对3D渲染管线(渲染流水线)的理解
- 我的opengl编程学习(一)(简介、绘制图像、三维观察、光照)
- C++ 三维数组的理解与动态分配
- 什么是线程安全和线程不安全
- [34] Vijos P1002 过河(动态规划+状态压缩)
- Context都没弄明白,还怎么做Android开发?
- EventBus源码解析二
- android的定时器
- 三维观察流水线的理解
- 利用CSS和DIV的几种布局方法(2)
- knockoutjs ajax请求,然后输出到模板
- 深入浅出RxJava(一:基础篇)
- ERR_CONTENT_LENGTH_MISMATCH问题
- JavaWeb中Servlet和JSP的分工案例
- 解决for循环项问题
- CentOS 安装Python 3.52
- 矩阵求导公式