Tesselation的作用:给低片面数模型镶嵌更多片面,让低模变高模。

和法线贴图不同,法线本质是通过改变低模表面的颜色来模拟高模,比如在一个片面上普通diffuse是均匀的颜色分布(因为光照颜色一样,它插值顶点对应纹理色值,所以是均匀的,很多情况还是单一的,比如全是灰色等),而法线贴图通过插手光照颜色,使得该片面的色值各种变化而造成眼睛的错觉:该片面表面是凹凸不平的,是多个片面构成的。

文:http://blog.csdn.net/qq984786645/article/details/73920811中所说的置换贴图是在顶点shader里对顶点位置进行一定的偏移而让模型变得更加凹凸,但这个其实很依赖模型的片面数,因为它是对顶点进行操作的,片面很少顶点很稀,效果就出不来,官方文档(Unity/Editor/Data/Documentation/en/Manual/SL-SurfaceShaderTessellation.html)中的“displacement in vert shader”就是这样做的。

但如果先使用Tesselation增加片面,然后在使用置换贴图进行偏移顶点,效果就出来了。官方文档也说了,先进行tesselation,然后对所有顶点执行domain shader里的vert函数

至于Tesselation的几个镶嵌方案可以看官方文档的例子。

有时候制作置换贴图需要花时间,可以通过Phong Tesselation来进行默认的凹凸平滑,来代替置换贴图,具体效果可以看官方文档。

看完官方文档后,需要知道的是:

1.Tesselation只是在片面上增加更多片面,比如把一个三角形对半分成2个三角形,如果不做任何其他处理,直接进行surf处理,和原来的渲染结果是一样的。

2.Displacement Mapping即置换贴图做的事情是,对每个顶点进行位置偏移。

3.Phong Tesselation=Tesselation+Phong

一般的方案是1+2或者单独3,Phong是一种平滑各个片面的Displacement mapping算法

值得注意的是,Tesselation需要DX11或OPENGL Core这么高级的GPU API

最新文章

  1. python自动化测试(4)-使用第三方python库技术实现
  2. 集群节点间网络通信TIPC
  3. submit 后台运行代码
  4. 【目录】Matlab和C#混合编程文章目录
  5. sqlserver -- 学习笔记(六)日期格式转换
  6. 【HTTP劫持和DNS劫持】腾讯的实际业务分析
  7. 面向对象 理解 C#复习
  8. OpenCV入门学习笔记
  9. Linux Curses编程实现贪吃蛇
  10. 面向对象设计模式之TemplateMethod模板方法(行为型)
  11. 调用test case集,并生成测试报告
  12. jQuery插件开发入门
  13. Linux系统编程(11)——进程间通信之有名管道
  14. mac下配置cocos2d-x3.0
  15. ASP.NET MVC HttpPostedFileBase文件上传
  16. SparkMLlib-----GMM算法
  17. 【Python】 日志管理logging
  18. js 重写alert 兼容iphone使得alert 不带src
  19. JS 删除Array对象中的元素。
  20. vue3.0中如何使用ueditor

热门文章

  1. vmware15虚拟机安装教程
  2. nvidia-smi:控制您的GPU
  3. Qt实现的多菜单选择界面
  4. Typora 完美结合 PicGo,写作体验更佳!
  5. puppet master/agent
  6. Redis教程——检视阅读
  7. C# winform 弹出窗体给父窗体传值
  8. Quartz.Net的基础使用方法,单任务执行
  9. ANALYZE导致的阻塞问题分析
  10. Spring Boot系列(二):Spring Boot自动装配原理解析