GAMES101第五课笔记


本课的主题是三角形的光栅化的基本原理和相关介绍
前一部分是接上节课的透视投影的剩余部分

`提示:这是第一块最重要的部分


一、透视投影和正交投影的转化(续)

1.定义视锥

在这里插入图片描述
首先给近平面定义一个宽度和高度,就有了一个宽高比(可以代表一个看到的区域)
两条红线中间是垂直可视角度(fovY)
并且可以通过宽高比和垂直可视角度还可以推出水平可视角度
== fov:视场角 ==

补充理解的例子:
在近距离拍摄时,会用到广角(可视角度会变得很大)
而在距离很远时,就会向正交投影趋近

2.从fovY和aspect到近平面的原始信息

在这里插入图片描述
将屏幕放在一个中心对称的位置
n(near)是到近平面的距离,取绝对值是因为看向-Z方向(可以自己在相机参数上修改)
t是平面半高,根据需求可变化
fovY/2是垂直可视角度的一半
r是屏幕的宽

二、Canonical Cube to Screen

MVP后做什么?

recall:
在这里插入图片描述

1.屏幕是什么?

在这里插入图片描述
像素点组成的数组
数组的大小(像素的多少):分辨率
一个典型的光栅成像的设备

Raster是德语里的屏幕
Rasterize就是把东西画在平面上,即光栅化

在这里插入图片描述
像素的概念在本课中简化为一个内部颜色不会发生变化的小方块,它就是最小单位
颜色是RGB的组合

2.定义屏幕空间

在这里插入图片描述
像素坐标写成在(x,y),用整数表示
所有像素的范围(0,0)–(width-1,height-1)
像素的中点表示为(x+0.5,y+0.5)
屏幕覆盖范围:(0,0)–(width,height)

3.视口变换

在这里插入图片描述
先忽略z,然后映射标准立方体到屏幕空间上

在这里插入图片描述
转换矩阵:
·高、宽除以2得变化的倍数,这个倍数作用于[-1-1]2标准立方体
·width/2宽度变,height/2高度变
·1是不变
·平移是因为要将原来(0,0)中心移动到屏幕空间位置

现在就可以在屏幕中得到一张二维图片了

三、Drawing Machines

CNC Sharpie Drawing Machine
在这里插入图片描述
Laser Cutters
在这里插入图片描述

四、Different Raster Displays

Oscilioscope示波器
在这里插入图片描述
Cathode Ray Tube
在这里插入图片描述

以前的电视CRT——阴极射线管
Raster Scan——隔行扫描(利用人眼视觉暂留现象)
·如今的部分视频压缩仍然沿用这种思想,但可能会造成画面撕裂
Frame Buffer: Memory for a Raster Display
在这里插入图片描述
Flat Panel Displays

在这里插入图片描述
视网膜屏幕:屏幕的分辨率高于视网膜的分辨率
LCD (Liquid Crystal Display) Pixel
在这里插入图片描述
液晶通过自己的不同排布,影响光的极化(偏振方向)
LED Array Display
在这里插入图片描述
Light emitting diode array(发光二极管)

Electrophoretic (Electronic Ink) Display
在这里插入图片描述
墨水屏,如kindle
像素翻转
缺点:刷新率低,翻页慢

五、光栅化

1.为什么是三角形

(1)是最基础的多边形
·任何其它图形都可以拆成多边形
(2)一些独特的性质
·一定是一个平面
·内外定义清晰
·定义三个顶点即可在三角形内做渐变

问题: 判断像素与三角形的关系(中心点

2.Sampling(采样)

2.1相关概念

给出连续函数,求不同位置的值(即函数的离散化)
利用像素中心对屏幕空间进行采样
采样是图形学中的一个核心概念
可以采样时间(1D)、面积(2D)、方向(2D)、体积(3D)等

2.2定义Binary函数

在这里插入图片描述
在这里插入图片描述
x+0.5是像素中心点

2.3回忆:Q点是否在三角形内?

叉积!!!
在这里插入图片描述

全正或者全负则在内

2.4如果点在三角形边上?

要么不做处理
要么特殊处理

也有特殊规定,如OpenGL中,左、上在内,右、下在外

2.5需要检查屏幕上的所有像素吗?

Bounding Box(包围盒)
在这里插入图片描述
对光栅化的一种加速
在这里插入图片描述
从最左开始

六、对实际屏幕的光栅化

在这里插入图片描述
Bayer Patten: 绿色点多于红色和蓝色点(人眼对绿色最敏感)
在这里插入图片描述
彩色打印机:减色系统

下节预告:抗锯齿,反走样

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值