图形学 -- 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正则化

课上暂时没有提到,,,

相关推荐
拿我格子衫来4 天前
图形编辑器基于Paper.js教程27:对图像描摹的功能实现,以及参数调整
开发语言·前端·javascript·图像处理·编辑器·图形渲染
程序员茶馆5 天前
【unity】Vulkan模式下部分Android机型使用VideoPlayer组件播放视频异常问题
游戏·unity·游戏引擎·图形渲染·unity3d·游戏开发
头发掉光的程序员6 天前
CPU与GPU之间的交互
c++·图形渲染·direct12
与火星的孩子对话8 天前
Unity进阶课程【四】Recorder 插件的使用 - 录制游戏画面、音频、动画、图片、无水印
游戏·unity·图形渲染·开源软件
踢足球的程序员·9 天前
OpenGL学习笔记(几何着色器、实例化、抗锯齿)
笔记·学习·图形渲染
踢足球的程序员·10 天前
OpenGL学习笔记(立方体贴图、高级数据、高级GLSL)
笔记·学习·图形渲染
GOTXX11 天前
【Qt】Qt Creator开发基础:项目创建、界面解析与核心概念入门
开发语言·数据库·c++·qt·图形渲染·图形化界面·qt新手入门
头发掉光的程序员13 天前
Raymarching Textures In Depth
ue5·游戏引擎·图形渲染
踢足球的程序员·20 天前
图形渲染: tinyrenderer 实现笔记(Lesson 5 - 7)
笔记·图形渲染