计算机图形学GAMES101(四)光栅化(三角形的离散化)

本文最后更新于 2024年5月26日 下午

光栅化(Rasterization)

Rasterize=drawing onto the screen
光栅化=把东西画在屏幕上

屏幕空间的定义:
左下角是原点,向右是+x,向上是+y
像素的坐标从(0,0)开始,最大(width-1,height-1)
像素的中心点(x+0.5,y+0.5)
屏幕覆盖范围:(0,0)到(width,height)
在这里插入图片描述
接下来就是在屏幕上面显示上一节中的哪个【-1,1】^3^的立方体
1、首先我们忽略调z轴
2、然后宽度变为width,高度变为height
3、然后就是将立方体的中心移动屏幕的中心(屏幕的左下角在(0,0)位置,中心在(width/2,height/2)位置,立方体原来的中心在(0,0)位置)
在这里插入图片描述

为什么三角形在计算机图形学中得到广泛得应用

  1. 三角形是最为基础的多边形
  2. 任何多边形都可以被拆分成三角形
  3. 给定三个点可以确定一个三角形,并且可以确定一个平面

光栅化最重要的工作

判断每一个可能要显示图形的像素的中心点和图形的位置关系,究竟是该显示图形还是不显示图形。

怎么实现光栅化

通过采样的方法实现光栅化,采样就是将一个连续函数离散化。

Evaluating a function at a point is sampling.
在某一点求函数数值就是采样

采样是图形化的核心
在这里插入图片描述
在这里插入图片描述
可以使用下面的方法来判断一个像素的中心点是否在三角形里面。
即:第二节提到的向量的点乘。(全在右侧或者全在左侧=点在三角形内)

jaggies: 锯齿
aliasing:走样


计算机图形学GAMES101(四)光栅化(三角形的离散化)
http://example.com/2024/05/26/计算机图形学GAMES101(四)光栅化(三角形的离散化)/
作者
莫予
发布于
2024年5月26日
许可协议