1 贴图的应用

纹理可以理解成一块数据,可以做不同类型的查询,所以它的应用有很多:

1.环境光/环境贴图:

用纹理描述环境长什么样,然后用环境光去渲染其他的物体:

把环境光记录在球面上:

把球面纹理展开,会发现在顶部有扭曲:

所以为了解决扭曲的办法,有了CubeMap:

             把正方形展开:

2.凹凸贴图(法线贴图)

纹理不止可以描述颜色,还可以描述一个物体表面的一个相对高度:

通过改变物体表面某个点的高度来改变法线从而改变着色的计算:

那如何计算法线?在平面中,我们用凹凸贴图去定义了各个点的高度,那么由这些高度我们对临近的两个点可以计算出它的切线dp,而切线向量经过逆时针旋转则会得到法线。所以也就是说我们在凹凸贴图里定义了切线,然后用切线去计算法线:

在三维中的法线:

除了使用凹凸贴图外,还可以使用另外一种方式做以上这种效果,并且效果更好-----位移贴图:

3. 噪声

4.记录之前已经算好了的信息(比如unity中的烘培)

5.体渲染

2 介绍几何

2.1 几何的隐式表达

比如圆的方程定义表示一个圆上的点所满足的关系:

隐式的表示很容易判断一个点是在物体内还是外:

2.2 几何的显式表达

显式的表达方式要么直接给出所有的点,要么通过参数映射的方式给出:

也就是说,上面的隐式表示不容易知道物体长什么样,也很难找到物体上的所有的点。而对显式的表示来说,判断一个点是在物体的里面还是外面就变难了,所以需要有显式、隐式不同的表示方式。

2.3 表达的更多例子

隐式表达1。方程式的表达:

隐式表达2,CSG。用简单的几何联合构成复杂的几何:

隐式表达3,距离函数:空间中的任意一个点到你想要的一个点的最小距离(可正可负)。把两个物体的距离函数都算出来之后做Blend然后再恢复成物体,就可以得到这样的变换:

应用距离函数的例子:

想要做两个物体的融合,先求出两个物体的距离函数,然后blend这两个距离函数,之后再将距离函数恢复成物体,就可以了。那如何把blend后的函数恢复成物体呢,很简单,找到距离函数所有等于0的地方,便是物体表面。

距离函数不好表示出来,而Level Set Method(水平集)的思想与距离函数非常相似:

这个水平集表示方式在地理中的等高线常见到。而水平集在三维中也是可以表示的:

隐式表达4,Fractals(分形):

GAMES101 P10 几何1 笔记相关推荐

  1. 【李宏毅机器学习】Classification_1 分类(p10) 学习笔记

    李宏毅机器学习学习笔记汇总 课程链接 文章目录 Classification Probabilistic Gernerative Model 分类:概率遗传模型 ==**如何完成这个任务?**== = ...

  2. Games101 计算机图形学课程笔记:Lecture 19 Cameras, Lenses and Light Fields

    目录 相机 快门与传感器 针孔相机 视场 Field of View(FOV) 曝光 Exposure ISO 光圈 快门 薄透镜近似 Thin Lens Approximation 薄透镜方程 De ...

  3. Games101 计算机图形学课程笔记: Lecture 10 Geometry 1 (Introduction)

    目录 Applications of Textures Environment Map 凹凸贴图 位移贴图 三维纹理 几何 隐式表示 Algebraic Surfaces Constructive S ...

  4. 《计算机视觉中的多视图几何》笔记(一)有限射影摄像机

    目录 前言 1.二维射影几何与变换 1.1数学基础 1.2射影变换 2.有限射影摄像机 2.1有限摄像机模型 2.2射影摄像机的几何含义 2.3射影摄像机对点的作用 2.3.1点对射线的反向投影 2. ...

  5. Games101 计算机图形学课程笔记: Lecture14 Ray Tracing 2

    目录 加速结构 均匀空间划分(Uniform Spatial Partitions) 空间划分 空间划分例子 KD-Tree KD-Tree存储数据结构 KD-Tree结构中进行光线追踪 KD-Tre ...

  6. Multiple View Geometry(多视图几何)学习笔记(23)—射影摄像机对二次曲面的作用摄像机中心的重要性

          射影摄像机对二次曲面的作用&摄像机中心的重要性 1.光滑曲面的图像 定义1:  轮廓生成元Γ\GammaΓ定义为影像射线与光滑曲面SSS的所有切点XXX的集合.在图像上,与它对应的 ...

  7. Games101计算机图形学学习笔记:线性代数-向量

    目录 一.标量与向量 1.标量 2.向量 1.向量的方向 2.向量的长度 3.向量的计算 1.向量加法 2.向量的减法 3.向量的乘法 1.点乘 1.在图形学中我们经常使用点乘来计算两个向量的夹角,比 ...

  8. Games101 计算机图形学课程笔记: Lecture 08 Shading 2 (Shading, Pipeline and Texture Mapping)

    目录 Specular Term (Blinn-Phong) Specular Term 高光项 Ambient Term 环境项 Blinn-Phong Reflection模型效果 着色频率 fl ...

  9. mvc2 mvc_迅捷的MVC

    mvc2 mvc Prerequisites: 先决条件: Some understanding of OO terminology and practices对OO术语和实践的一些理解 Termin ...

最新文章

  1. sql中exists,not exists的用法
  2. php不同用户显示不同表单_php 实现接收多个name相同但Value不相同表单数据实例...
  3. 计算Gaunt积分m1m2≥0
  4. 大学考试计算机基础应用试题及答案,大学计算机基础考试试题及答案
  5. leetcode170. 两数之和 III - 数据结构设计
  6. 大联合 - 单细胞测序在新冠肺炎研究中的应用进展 (PPT)
  7. pdfbox 第一页加内容_Java使用PDFBox操作PDF文件获取页码、文章内容、缩略图
  8. 我的手绘2013.01.27
  9. 用有穷状态自动机描述计算机网络的传输层协议,计算机网络基椽—第八章(传输层)(全).ppt...
  10. 微信小程序开发:禁止输入表情的控制,验证方法,光标控制
  11. Docker方式安装SonarQube
  12. Docker简单入门
  13. vfp 修改本机时间_时间旅行调试
  14. [书目20110326]高素质员工的28堂必修课
  15. Tomcat环境部署以及tomcat多实例搭建(同一台机器)
  16. POJ 3744 Scout YYF I(矩阵快速幂优化+概率dp)
  17. java实现十进制数转换成二进制数
  18. 第一个被赋予公明身份的机器人_世界首位获公民身份机器人索菲亚,称要结婚生子毁灭人类...
  19. 【产业互联网周报】销售易获腾讯1.2亿美元投资;国科恒泰完成11亿C轮融资;工信部、科技部推进大数据及人工智能...
  20. linux串口文件传输助手怎么用,SerialTool: SerialTool是一个实用的串口调试工具,这款工具支持串口调试助手、波形显示和文件传输等功能...

热门文章

  1. uos命令_uos如何使用终端界面的基本操作uos桌面版v20操作手册
  2. 用conda建一个python2虚拟环境
  3. 后端工程师的前端之路系列--小程序学习
  4. opencv光线补偿_教你了解摄像机的背光补偿
  5. CSDN上Android与IPhone开发博客精选
  6. 当乐app官方下载android,当乐下载安卓最新版_手机官方版免费安装下载_豌豆荚
  7. LikeLib:区块链+云计算的结合技术现在成熟了吗?
  8. 【JavaWeb】火车票管理系统 (三)用户登录-03
  9. Spring源码系列(十三)——Spring源码编译及详细注解
  10. python 跨知乎app发私信以及Python专栏30万用户信息爬取