Games101 计算机图形学课程笔记: Lecture 12 Geometry 3

Mesh Operations: Geometry Processing

细分 Mesh Subdivision (upsampling)

Loop Subdivision

用于三角形网格的细分。先创造出更多三角形(点),再更改其位置。

更新新顶点的坐标:

更新原有顶点的坐标:

总结:先细分再调整。

Catmull-Clark Subdivision

对于通常的mesh,网格包含三角形,四边形。
奇异点是度不为4的点。(该点连接的线的个数即为度)

细分步骤:在每个面添加顶点,每条边的中间添加点,连接所有的新点。

经过一次细分后,有四个奇异点,第一次细分后非四边形面都会变成奇异点。之后细分奇异点就不会增加了。

对新的点更新:

对旧的点更新:

细分结果

网格简化 Mesh Simplification (downsampling)

网格简化的目的是减面片的数量,但要维持基本的形状。
不同的应用场景下要选用不同的三角形,面片数量和以下两方面有关:

  • mipmap,是在图像层次结构上的。
  • 几何的层次结构

边坍缩

使用二次误差度量来求最优解。

坍缩一条边后其他的边的二次度量误差会改变,因此使用优先队列和堆来完成。

简化结果

网格正则化 Mesh Regularization (same #triangles)

Shadow Map

在光栅化中使用shadow map来绘制影子。
点不在阴影里,则该点能被相机看到,也能被光源看到。
硬阴影:非1即0。

实现

  1. 从光源处进行渲染,得到深度图

  2. 从视点处进行渲染。
    从视点处发出光线到着色点,再从着色点发出光线到光源,若从着色点到光源的深度与前一步的深度相同,则说明该点不是阴影。

举例

由于深度值是浮点数,在比较深度时不好判断相等,有些数值十分接近。
可以引入一个偏差,距离加上这个偏差再进行比较。

shadow map(仍是3D游戏的主流技术)的缺点:

  • 相当于渲染两遍

  • 数值精度导致的问题

  • 得到的是硬阴影

  • map的分辨率,过低会生成锯齿

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值