GAME101-Lecture05学习

回顾与引入

前面学了各种变换。

若要将一个三维的物体变成二维的平面上,需要进行一些变换。(观测变换)

  • 我们始终把摄像机的位置移动到一个“经典”的位置,然后把其他所有物体都和相机一起移动。(视图变换)

  • 当所有的物体已经有了一个“标准”的变换,可以将物体从三维投影成一个二维。(投影变换)

此时做完观测变换后,所有物体都会在一个[-1,1]3上了。此时就需要让计算机根据这个信息,去“画”就是涉及到了光栅化。

视锥

image-20240428132044174

  • 有时候人们更喜欢:垂直视场(fovY)和纵横比(假设对称性,即I=-r,b=-t)

用长宽比和垂直的可视角度来定义一个视锥

aspect ratio(长宽比)

垂直的可视角度(fovY):图中红色线之间的夹角。

image-20240428132558069

光栅化

光栅化的一些定义

image-20240428132932974

把图片画在屏幕的过程,我们就叫光栅化的过程。

本门课上,我们可以认为像素是一个个的小方块,每个方块的颜色是一整个的颜色(即把像素当成最小的单位)

image-20240428133232164

  • 像素的索引是(x,y)的形式,其中x和y都是整数

  • 像素的索引从(0,0)到(宽-1,高-1)

  • 像素(x,y)以(x+0.5,y+0.5)为中心

  • 屏幕覆盖范围从(0,0)到(宽,高)

image-20240428133430607

  • 与z无关

  • 在xy平面上的变换:[-1,1]2到【0,宽】x【0,高】(视口变换)

光栅显示设备

示波器

image-20240428134712199

早期的显示器(CRT)原理和示波器一样。

原理大概是左侧的electron immeter上面会产生很多电子,电子经过加速后,会穿过显示设备,发生偏转打在屏幕上。

早期会用到隔行扫描,就是这一秒处理奇数行、下一秒再处理偶数行这种。

平板显示设备

现在主要的显示设备,主要是LCD。LCD:液晶显示器。

image-20240428135224044

  • 原理:通过扭转偏振来阻挡或传输光

  • 背光照明(如荧光灯或LED)

  • 偏扭的中等强度水平

大概意思就是,光通过这个中间的区域,然后扭转或阻挡关,可以让光的方向从竖直变成水平(右边的两个图就是State打开和关闭的情况对比)

其他

LED:发光二极管

电子墨水屏

三角形光栅化

image-20240428140013877

  • 为什么是三角形 最基本多边形 拆分其他多边形

  • 独特的属性 保证是平面的 轮廓分明的内部 三角形顶点插值的定义良好的方法(重心插值)

image-20240428140335627

  • 输入:投影在屏幕上的三角形顶点的位置

  • 输出:近似三角形的像素值集

为了能够得到近似三角形的像素值集,我们需要得到像素点与三角形中心点的关系。其中一个方法就是采样。

采样

所谓采样,就是得到一个函数,输入位置即可得到函数的值。可以理解成把一个函数离散化的过程。

image-20240428140823544

  • 抽样函数

  • 在一个点上对函数求值就是抽样。

  • 我们可以通过采样对函数进行离散化。

  • 采样是图形学的核心思想。

  • 我们的采样时间(1D),面积(2D),方向(2D),体积(3D)。

采样实现光栅化举例

image-20240428141009648

给定一个三角形,我们需要确定的是那些像素的中心再三角形内。

image-20240428141211253

定义一个函数inside,给定一个三角形和一个屏幕空间中任意的坐标,可得坐标是否在三角形内。

image-20240428141718637

inside函数实现原理就是通过向量的叉乘。

image-20240428141836197

点在边上是属于哪个三角形,是自己定义的,可以处理也可以不处理

光栅化函数的计算方式

(轴向)包围和

image-20240428142113572

无需将整个屏幕都走一遍,只需要在其可能有的区域内(图中的蓝色范围)中,进行光栅化即可。

蓝色区域又称为(轴向)包围和,缩写成AABB。

增量三角形

image-20240428142241571

这种情况比较适合那种比较窄长的三角形(原本没有多少像素,但是包围和认为有很多像素)。

实际的光栅化

image-20240428142918327

可以发现其实实际的像素点根本不是一个方块。

另外有一个现象,右侧图的绿色点相对的密度会比蓝红要高。这是因为人眼对绿色最为敏感。

image-20240428142923755

平时打印的时候,打印的检测系统会进行检测,图片颜色越多,打印的颜色就越黑。而屏幕的rgb则是相反。

下节提示

锯齿、走样问题

总结

今天主要讲的是光栅化的知识。

在上节课中,通过观测变换(视图变换和投影变换),可以将三维的物体转化成二维的图像数据信息。

这节课就是需要将这个信息“画”出来,这就叫做光栅化。

理论上无论是怎样的图形,通过光栅化都能“画”在屏幕中。任何图形都可以分解成由三角形组成,因此课上主要以三角形为例,讲了三角形的光栅化。

三角形光栅化中,最简单的方式就是采样。采样简单来说就是通过一个函数,将图形的位置信息传入,即可得到函数值,这个函数值个人理解就是在计算机中用于“画”的像素信息。

但在实际应用中,光栅化会出现锯齿、走样的问题,下节课的主要目的,就是抗锯齿、防走样。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值