Games101-现代计算机图形学入门-Geometry
Geometry
Implicit
隐式函数,便于判断点是否在物体内
Constructive Solid Geometry
将基础几何做布尔运算,合并得出复杂几何
Distance Functions
Level Set Methods
类似于等高线
Explicit
显式函数,便于取样
Point Cloud
由许多个点组成
Polygon Mesh
存储多边形(通常为三角或四边形)组成面
v表示顶点,vn表示法向量,vt表示贴图,f表示关系
Curves
Bezier Curves
系数为多项式系数
对Bezier曲线做仿射变换,相当于对几个控制点做仿射变换然后再画曲线
曲线在几个控制点所组成的Convex Hull(凸包)中
Piecewise Bezier Curves
当控制点过多时画曲线非常困难,可以将曲线分段,每一段曲线由4个控制点控制
两段曲线若要相连则控制点共点,若相切则控制线等长
Other types of splines
Spline
一根树枝被几个钉子固定,钉子之间弧度由树枝决定。解决更改控制点难的问题
B-splines
NURBS
Surfaces
Bezier Surfaces
先对x轴做Bezier曲线,取y轴方向一条竖线过Bezier曲线的4个点,再对这4个点做Bezier曲线。
Mesh Opeprations
Mesh subdivision(细分)
Loop Subdivision
每个三角形取3边终点连线,分成4个三角形,然后在调整点的坐标
对新顶点坐标调整:
对旧顶点坐标调整:
只适用于全是三角形组成的面中
Catmull-Clark Subdivision
在每个多边形中添加一个点p,连接每个形状各边中心点和p,三角形会被分成3个四边形
Mesh simplification(简化)
对每个边假设坍缩,计算二次度量误差
坍缩二次度量误差最小的边并修改受其影响的边的二次度量误差(堆)