一、凹凸贴图Bump Maps

1.目的意义

考虑低多边形网格(多边形较少的网格)和高多边形网格之间的区别。渲染高多边形网格需要更多的计算能力,因为更多的多边形意味着有更多的数据需要处理。

但是使用凹凸贴图,您可以告诉着色器将表面细节的外观添加到您的网格中,而无需实际添加多边形。这种技术对性能更好,结果非常令人信服!

2.一些概念

凹凸贴图主要使用两种类型的贴图:法线贴图高度贴图(normal maps and height maps

Ⅰ法线是网格数据中的值,用于定义每个顶点所面对的方向(白色箭头)。法线贴图在整个表面上设置这些值,从而指导着色器创建表面上的片段(像素)面向不同方向的错觉。

Ⅱ高度图表示网格中每个像素的相对高度(蓝色箭头)。

法线和高度贴图可以在不使用太多计算能力的情况下为您的表面添加逼真的物理细节。通常,法线贴图在没有高度贴图的情况下使用。

二、 法线贴图normal maps

法线贴图类似于底图,不同之处在于红色、绿色和蓝色值表示法线相对于网格表面的方向。

法线贴图大多是青色和紫色,因为在蓝色通道中使用更高的值来表示方向。

二、 高度贴图 height maps

高度图表示网格中每个像素的相对高度。这些是单通道(灰度)图,其中每个像素值表示与网格表面的相对距离。当您使用 RGB 图像作为高度图时,着色器仅读取绿色通道。

高度贴图不像法线贴图那样常用。它们对于创建戏剧效果很有用,但它们也会拉伸底图,如果底图不是纯色,这通常是不可取的。

Add physical texture with bump mapping - Unity Learn

待续。。

unity3d学习笔记-着色器(3.凹凸贴图Bump Maps)相关推荐

  1. unity3d学习笔记-着色器(1.一些概念)

    一.网格 1.定义 网格是 GameObject 的 3D 骨架.Unity 中的每个 GameObject 都有一个网格.它是对象的几何元素. 2.结构 网格是由顶点(单数:vertex )定义的一 ...

  2. unity3d学习笔记-着色器(5.自定义着色器)

    一.界面介绍 创建方法:右键单击并选择Create > Shader > Universal Render Pipeline > Lit Shader Graph :这将在文件夹中创 ...

  3. unity3d学习笔记-着色器(4.一些贴图)

    1.遮挡贴图occlusion maps 即使在 PBR (基于物理的渲染)中,环境光也会以奇怪的方式反射它应该被遮挡的地方.遮挡贴图为这些遮挡区域添加阴影. 遮挡图与 3D 建模软件中的大多数模型一 ...

  4. 置换贴图(Displacement map),凹凸贴图(Bump map)与法线贴图(Normal map)的区别

    英文原文地址<Difference between Displacement , Bump and Normap Maps> By Pluralsight on August 14, 20 ...

  5. OpenGL学习笔记(十三):将纹理贴图应用到四边形上,对VAO/VBO/EBO/纹理/着色器的使用方式进行总结

    原博主博客地址:http://blog.csdn.net/qq21497936 本文章博客地址:http://blog.csdn.net/qq21497936/article/details/7919 ...

  6. Unity3D学习笔记6——GPU实例化(1)

    文章目录 1. 概述 2. 详论 3. 参考 1. 概述 在之前的文章中说到,一种材质对应一次绘制调用的指令.即使是这种情况,两个三维物体使用同一种材质,但它们使用的材质参数不一样,那么最终仍然会造成 ...

  7. Unity3D学习笔记8——GPU实例化(3)

    文章目录 1. 概述 2. 详论 2.1. 自动实例化 2.2. MaterialPropertyBlock 3. 参考 1. 概述 在前两篇文章<Unity3D学习笔记6--GPU实例化(1) ...

  8. Unity3D学习笔记3——Unity Shader的初步使用

    文章目录 1. 概述 2. 详论 2.1. 创建材质 2.2. 着色器 2.2.1. 名称 2.2.2. 属性 2.2.3. SubShader 2.2.3.1. 标签(Tags) 2.2.3.2. ...

  9. Unity3D 学习笔记4 —— UGUI+uLua游戏框架

    Unity3D 学习笔记4 -- UGUI+uLua游戏框架 使用到的资料下载地址以及基础知识 框架讲解 拓展热更过程 在这里我们使用的是uLua/cstolua技术空间所以提供的UGUI+uLua的 ...

最新文章

  1. java虚拟机资源根目录_Java路径问题最终解决方案—可定位所有资源的相对路径寻址 - java - CSDN技术......
  2. html闪烁字体设置,HTML最简单的文字闪烁代码
  3. python播放音乐同步歌词_python终端播放音乐同定制步显示本地或网络歌词
  4. php u6536编码转,详谈PHP编码转换问题
  5. javaweb下载文件
  6. java连续创建目录_Java创建目录
  7. 如何解决ADB server didn't ACK
  8. 蓝桥杯 算法提高 P0603 统计不同单词个数
  9. Java的历史及发展
  10. 数据结构c语言版题库填空题,数据结构(C语言版)选择、填空题
  11. CentOS6与CentOS7的区别
  12. 以太网网络变压器EMI电流及以太网网络变压器对EMI阻断原理
  13. Android样式系列:自定义按钮样式
  14. e路航LH900N导航仪凯立德最新版本地图更新方法
  15. 公路自行车轮市场前景分析及行业研究报告
  16. PHP 获取青果教务的验证码与登录,成绩查询
  17. Windows11 Store应用商店下载的软件,怎么创建快捷方式
  18. fpga.一些学习感悟以及细节方面
  19. 第3章 垃圾收集器与内存分配策略6
  20. 基于window个人博客的搭建

热门文章

  1. Gtalent如何帮助HR招到薪酬专员,5条建议4点做法
  2. mysql core dumped_关于Segmentation fault (core dumped)几个简单问题的整理
  3. nxp_3|虚拟机Linux内核资源
  4. 简单的python程序实现99乘法口诀表
  5. 用Python爬取微信好友头像,才知道好友都是这样的人
  6. 台积电工厂突发停电:或损失2亿元
  7. 苹果IOS14版本自建服务器无法下载解决方法
  8. 【Android Studio】ImageView / ImageButton 图片太大或者太小解决方法
  9. Mac版word空格变成小点,多了很多“分节符(下一页)”和“窗体顶端”和“窗体底端”等字样,怎么解决?
  10. Adaboost 算法的公式推导与讲解