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


文章目录

  • 一、光栅化Rasterization
      • 屏幕
      • 像素Pixel
      • 光栅化
      • 标准立方体到屏幕
  • 二、光栅显示设备科普
      • 示波器Oscilloscope
      • 阴极射线管Cathode Ray Tube(CRT)
      • 平板显示设备
      • LCD(Liquid Crystal Display)
      • LED(Light Emitting Diode) Array Display
      • Electrophoretic(Electronic Ink) Display
      • 帧缓存
  • 三、基本的原始形状——三角形(Triangles)
      • 三角形的特性
  • 四、采样方法(Sampling)
      • 采样
      • 2D三角形采样步骤
      • Inside计算过程
      • 包围盒Bounding Box
      • Incremental Triangle Traversal
  • 课程的最后

一、光栅化Rasterization

屏幕

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

像素Pixel

光栅化Rasterization(三角形)(笔记)_第1张图片
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)。

光栅化

光栅化Rasterization(三角形)(笔记)_第2张图片
把东西“画”在屏幕上的过程。确切来说,将标准立方体映射到屏幕的过程(Canomical Cube to Screen)。

标准立方体到屏幕

光栅化Rasterization(三角形)(笔记)_第3张图片
无视z轴,将xy的[-1, 1]变换到[0, width] x [0, height]。上面是转换矩阵。

二、光栅显示设备科普

示波器Oscilloscope

光栅化Rasterization(三角形)(笔记)_第4张图片

阴极射线管Cathode Ray Tube(CRT)

光栅化Rasterization(三角形)(笔记)_第5张图片
电子流打在屏幕上成像,通过偏移电子流来改变图像。

平板显示设备

光栅化Rasterization(三角形)(笔记)_第6张图片
LCD,OLED,视网膜屏。。。

LCD(Liquid Crystal Display)

光栅化Rasterization(三角形)(笔记)_第7张图片
液晶显示,利用液晶的原理达到显示效果,液晶可以根据不同的排布,影响光的偏振方向。

LED(Light Emitting Diode) Array Display

光栅化Rasterization(三角形)(笔记)_第8张图片
发光二极管阵列显示。

Electrophoretic(Electronic Ink) Display

光栅化Rasterization(三角形)(笔记)_第9张图片
电子墨水屏,只能显示黑白。通过控制电子的位置来显示,刷新率很低。但是有接近纸质书的显示效果。

帧缓存

光栅化Rasterization(三角形)(笔记)_第10张图片
光栅显示设备的内存。

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

三角形的特性

光栅化Rasterization(三角形)(笔记)_第11张图片
三角形是最基础的多边形,任何多边形都能拆成三角形。
三角形一定是在一个平面上的,三角形的内外是定义清晰的。三角形内部的点很好进行插值。

四、采样方法(Sampling)

采样

光栅化Rasterization(三角形)(笔记)_第12张图片
给你一个连续函数,然后在不同的地方获取函数值就叫做采样。专业一点的说法,采样就是将一个连续函数离散化的过程。
采样在图形学中是一个核心概念,

2D三角形采样步骤

光栅化Rasterization(三角形)(笔记)_第13张图片
现在有一个三角形,我们要判断像素中心是否在三角形内。
光栅化Rasterization(三角形)(笔记)_第14张图片
在计算机中,我们定义一个Inside函数。
光栅化Rasterization(三角形)(笔记)_第15张图片
采样也就是确定函数在不同像素中心的返回值是1还是0(当然,1表示有颜色,0表示没颜色)。

Inside计算过程

光栅化Rasterization(三角形)(笔记)_第16张图片
回顾一下学习叉乘时的笔记,当Q处于三个向量的同一侧时,Q点在三个向量围成的三角形的内部。
光栅化Rasterization(三角形)(笔记)_第17张图片
当像素中心恰好处在线上时,要么不做处理,要么特殊处理。在这里我们不做处理。但是有些图形API中会有自己的规矩。

包围盒Bounding Box

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

Incremental Triangle Traversal

光栅化Rasterization(三角形)(笔记)_第19张图片
一种优化方法,在每一行只找这个三角形的最左和最右,这样一个像素也不会多考虑。很适用于处理很窄并且旋转过的三角形。

课程的最后

光栅化Rasterization(三角形)(笔记)_第20张图片
光栅化Rasterization(三角形)(笔记)_第21张图片

这幅图上有锯齿(Jaggies),也就是当我们采样率不高时发生了走样(Aliasing)
光栅化Rasterization(三角形)(笔记)_第22张图片
下节课的内容为抗锯齿/反走样。

你可能感兴趣的:(学习笔记,图形学)