UE4 Material 101学习笔记——19-22 程序化噪声的使用(Noise节点)
本系列学习资料来源,Ben Cloward的油管空间,B站的搬运翻译
Lec19 程序化噪声 Procedural Noise
之后几节是一个新的系列,有关perlin噪点或者说程序化噪点
的使用
19.1 What is it?
- Peilin噪声是一种用来生成随机图案的很好的算法,图上就是一个算法生成的结果
- 这是一个无限的非重复图案,图上展示的只是一小部分。
可能会觉得这个无限大而永不重复的黑白图看起来很无聊,但是我们可以以它为基本图案进行修改。
举例来说,以此图案作为基本,进行几次缩放比例组合到一起,可以创建一个分形图案,这些组合比例中的每一个称为octave
- 右边的这个图可能会比较熟悉,像是PS中渲染云的图案,其正是Perlin噪声的应用,我们能通过各种各样的组合来创建不同的噪声纹样
下图只是一些例子,Peilin噪声也被广泛应用于地形的生成过程,它是程序化生成的基础
像是《我的世界》,《无人深空》等等很多游戏,也会使用类似Perlin噪声的其他噪声,去产生整个世界。
Perlin噪声也被广泛接受于特效,3d软件的渲染器中。
正是为此这个噪声的发明者Ken Perlin在1997年获得了奥斯卡奖,以表彰他对电影行业的贡献
19.2 Optimized for Real-Time
下图就是生成基本的Perlin噪声的核心代码公式,此代码也出现在《GPU Gems》这本书中
这是专门为了在现代显卡上能快速运行而编写的,也就是说这是优化的版本
接下里不再看这个代码
因为在学习过程中,我们希望简洁性,能一看到它进行阅读就能了解它在做什么,直接看代码显然不太容易理解
放这个代码图只是对算法的复杂性有个基本的印象