光栅化Rasterization(三角形)(笔记)


一、光栅化Rasterization

屏幕像素的阵列(array),阵列的大小称为分辨率(resolution)。屏幕是一个典型的光栅成像设备(Raster Display)。

像素Pixel在这里插入图片描述Pixel是"Picture Element"的缩写,目前的理解上,像素是指一个带有特定颜色的小方块。颜色为RGB(red,green,blue)的混合。像素的索引/坐标 表示为(x, y)形式,x和y都是整型数。像素的坐标从(0, 0)到(width - 1, height - 1)。像素的中心在(x + 0.5, y + 0.5)上。屏幕覆盖宽度为(0, 0)到(width, height)。

光栅化
在这里插入图片描述
把东西“画”在屏幕上的过程。确切来说,将标准立方体映射到屏幕的过程(Canomical Cube to Screen)。

标准立方体到屏幕在这里插入图片描述
无视z轴,将xy的[-1, 1]变换到[0, width] x [0, height]。上面是转换矩阵。

二、光栅显示设备科普

示波器Oscilloscope
在这里插入图片描述

阴极射线管Cathode Ray Tube(CRT)
在这里插入图片描述
电子流打在屏幕上成像,通过偏移电子流来改变图像。

平板显示设备
在这里插入图片描述
LCD,OLED,视网膜屏。。。

LCD(Liquid Crystal Display)
在这里插入图片描述
液晶显示,利用液晶的原理达到显示效果,液晶可以根据不同的排布,影响光的偏振方向。

LED(Light Emitting Diode) Array Display
在这里插入图片描述
发光二极管阵列显示。

Electrophoretic(Electronic Ink) Display
在这里插入图片描述
电子墨水屏,只能显示黑白。通过控制电子的位置来显示,刷新率很低。但是有接近纸质书的显示效果。

帧缓存
在这里插入图片描述
光栅显示设备的内存。

三、基本的原始形状——三角形(Triangles)

三角形的特性
在这里插入图片描述
三角形是最基础的多边形,任何多边形都能拆成三角形。
三角形一定是在一个平面上的,三角形的内外是定义清晰的。三角形内部的点很好进行插值。

四、采样方法(Sampling)

采样
在这里插入图片描述
给你一个连续函数,然后在不同的地方获取函数值就叫做采样。专业一点的说法,采样就是将一个连续函数离散化的过程。
采样在图形学中是一个核心概念,

2D三角形采样步骤
在这里插入图片描述
现在有一个三角形,我们要判断像素中心是否在三角形内。
在这里插入图片描述
在计算机中,我们定义一个Inside函数。
在这里插入图片描述
采样也就是确定函数在不同像素中心的返回值是1还是0(当然,1表示有颜色,0表示没颜色)。

Inside计算过程
在这里插入图片描述
回顾一下学习叉乘时的笔记,当Q处于三个向量的同一侧时,Q点在三个向量围成的三角形的内部。
在这里插入图片描述

当像素中心恰好处在线上时,要么不做处理,要么特殊处理。在这里我们不做处理。但是有些图形API中会有自己的规矩。

包围盒Bounding Box
在这里插入图片描述
当我们对一个元素(比如三角形)做光栅化处理时,使用包围盒(Bounding Box)可以有效避免我们检查整个屏幕的所有像素。
通过P0,P1,P2的坐标可以很简单的得到包围盒区域。不在包围盒区域内的像素不参与采样检查。

Incremental Triangle Traversal
在这里插入图片描述
一种优化方法,在每一行只找这个三角形的最左和最右,这样一个像素也不会多考虑。很适用于处理很窄并且旋转过的三角形。

课程的最后

在这里插入图片描述
在这里插入图片描述

这幅图上有锯齿(Jaggies),也就是当我们采样率不高时发生了走样(Aliasing)
在这里插入图片描述
下节课的内容为抗锯齿/反走样。

猜你喜欢

转载自blog.csdn.net/qq_37856544/article/details/113057809
今日推荐