|
@@ -1,7 +1,7 @@
|
|
|
<!--
|
|
<!--
|
|
|
* @Author: your name
|
|
* @Author: your name
|
|
|
* @Date: 2021-10-01 11:33:27
|
|
* @Date: 2021-10-01 11:33:27
|
|
|
- * @LastEditTime: 2022-02-24 00:06:14
|
|
|
|
|
|
|
+ * @LastEditTime: 2022-02-24 00:30:50
|
|
|
* @LastEditors: Please set LastEditors
|
|
* @LastEditors: Please set LastEditors
|
|
|
* @Description: In User Settings Edit
|
|
* @Description: In User Settings Edit
|
|
|
* @FilePath: D:\MarkdownLog\图形学.md
|
|
* @FilePath: D:\MarkdownLog\图形学.md
|
|
@@ -1331,6 +1331,36 @@ Shader控制顶点管线(**Vertex Processing**)和着色管线如何运作(**Fra
|
|
|
- OpenGL: GLSL语言
|
|
- OpenGL: GLSL语言
|
|
|
- DirectX: HLSL语言
|
|
- DirectX: HLSL语言
|
|
|
|
|
|
|
|
|
|
+### 纹理映射(Texture Mapping)
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+对于漫反射的计算来说 $L_d = k_d (I / r^2) (\vec{n} \cdot \vec{l})$,上述图片就是球的每个点的 $k_d$ 是不同的
|
|
|
|
|
+
|
|
|
|
|
+那么纹理映射就是定义任何一个点的不同属性
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+通过上图,可以不加证明给出结论,任何物体的表面都是二维的,那么物体的表面就可以和一张图产生一一对应映射关系,从而引出**纹理**
|
|
|
|
|
+
|
|
|
|
|
+将一张图通过拉伸、压缩等操作,将其蒙在物体上,那么这个蒙住的过程就是**纹理映射**
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+注意图中箭头所指的三个三角形面片,左边两个面片是模型中的面片,右边面片是映射图片与模型三角形面片对应的三角形面片
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+上图中右边的UV是纹理贴图的坐标系
|
|
|
|
|
+
|
|
|
|
|
+通常认为,对于纹理来说,UV的范围都是0~1之内
|
|
|
|
|
+
|
|
|
|
|
+通过UV坐标系和模型的映射,可以知道模型中三角形的每一个顶点都对应UV坐标系中的某一个点
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+一个模型中的纹理可以是重复的
|
|
|
|
|
+
|
|
|
# 几何
|
|
# 几何
|
|
|
|
|
|
|
|
如何表示光滑的曲线、曲面、将简单曲面通过细分的方法得到复杂曲面、形状发生变化时面如何变化、如何保持物体的拓扑结构…
|
|
如何表示光滑的曲线、曲面、将简单曲面通过细分的方法得到复杂曲面、形状发生变化时面如何变化、如何保持物体的拓扑结构…
|