图形学 -- Geometry几何

隐式 implicit

基于给点归类,满足某些关系的点

缺点:不规则表面难以描述!

algebraic surface

直接用数学公式表示:不直观!

Constructive Solid Geometry(CSG)

用简单形状进行加减

distance functions

找表面:blend距离等于0的时候

Level Set 水平集

Fractal 分型

显式 explicit

采样会很方便!

困难:难以判断点是在表面内外

point cloud

(x,y,z)点组成的列表

polygon mesh

.obj format ( Wavefront Object)

把一堆点,法线,纹理坐标分开表示,然后再组织起来

Curves 曲线

Bezier Curves 贝塞尔曲线

用一系列控制点去定义一个曲线

de Casteljau Algorithm

e.g

下图中b0开始b2结束,b1决定它往哪个方向弯

三个输入点

不停对线段三等分!

四个输入点

代数表示
性质

1)必须过起点终点

2)四个控制点:三倍贝塞尔曲线

3)在仿射变换下只用移动点就可以了!(其他的变换就不一定了)

4)凸包性质:画出来的贝塞尔曲线一定在几个控制点的凸包内

Convex Hull 凸包↓

Piecewise Bezier Curves 逐段贝塞尔曲线

每四个点控制一个贝塞尔曲线!妈耶,ps钢笔多年不会用之谜解开惹

连续性

*两个控制杆连成一条线且长度相等那么就是平滑曲线!

spline 样条曲线

一个曲线是一系列点控制的,满足一定的连续性

B-splines

bazier surfaces 贝塞尔曲面

Mesh 网格

subdivision(upsampling)细分

Loop subdivision

只能用在三角形面

更新

degree:一个顶点和它相邻的边数

Catmull-Clark Subdivision(General Mesh)

可以用在各种形状的面上

把边和面上的中点连起来

simplification(downsamoling) 简化

edge collapsing 边坍缩

把每一个边打上一个二次度量误差分数,分数小的就可以坍缩!

当坍缩一个边后,对它所影响的边作更新(需要用到数据结构里面的优先队列)

regularization正则化

课上暂时没有提到,,,

相关推荐
头发掉光的程序员1 天前
正顺基碱基
c++·算法·游戏引擎·图形渲染
清醒的兰1 天前
OpenGL: QOpenGLShaderProgram
计算机视觉·图形渲染
阳光开朗_大男孩儿5 天前
图形渲染(一)——Skia、OpenGL、Mesa 和 Vulkan简介
c++·图形渲染
YxVoyager10 天前
OpenGL学习笔记(十二):初级光照:投光物/多光源(平行光、点光源、聚光)
c++·图形渲染·opengl
BuHuaX12 天前
Unity中的虚拟相机(Cinemachine)
数码相机·unity·游戏引擎·图形渲染·动画
敲代码娶不了六花15 天前
Blender的材质节点中 透射(Transmission) 和 Alpha的区别
3d·图形渲染·blender·材质
YxVoyager15 天前
OpenGL学习笔记(六):Transformations 变换(变换矩阵、坐标系统、GLM库应用)
c++·笔记·图形渲染
YxVoyager16 天前
OpenGL学习笔记(七):Camera 摄像机(视图变换、LookAt矩阵、Camera类的实现)
c++·笔记·图形渲染
YxVoyager18 天前
GAMES101学习笔记(五):Texture 纹理(纹理映射、重心坐标、纹理贴图)
笔记·学习·图形渲染
_Yhisken23 天前
【读书笔记】万字浅析游戏场景中常见的渲染性能优化手段
游戏·unity·性能优化·图形渲染·gpu