[着色.介绍]基本概念与噪声算法
本帖最后由 hcwanz 于 2023-12-22 21:08 编辑首先介绍一下什么是着色器。
通常我们写的代码是运行在中算(cpu)上的,而着色器代码则是运行在图算(gpu)上的。
中算可以说是一个全能手,什么样的程序他都能算;图算能算的,他能算;图算不能算的,他也能算。
相比之下图算就弱智很多了,不能运行太复杂的程序,着色语言也没有高级语言那么丰富的语法。
但所谓弱智儿童思路广,ATI为图算关上了智力大门的同时,却给他打开了一扇高并行的窗。
我们用火山写多线程的时候,十几个线程就已经很多了吧;然而着色器程序同开百十个线程那都不叫事。
如果说我们平时写程序是,拿着毛笔画画。先画远山,再画孤松。总要有个顺序。
那么着色器程序就是,模板刷上墨往纸上糊,直接同时画出来。从一开始就不存在谁先谁后。
-----------------------------------------------
下面要讲的就是并行思路的一大经典运用--自然噪声。
如果有锅盖电视使用经验的火友,应该对于雪花屏并不陌生。
当天线丢失信号后,会对接受到的所有信号进行无限制增益,这种信号往往没有规律,
所以在电视上,就表现为所谓雪花屏的无序黑白噪点,和刺耳的噪声。
这种有一股野性纯真美的噪声,一般称为白噪音,这种噪声的特点是无序、突兀。
像火山的取随机数就是为了模拟这种白噪音。
而自然界并非只有白噪音一种随机,还广泛存在着很多有序的随机。
譬如高山,就是一种有序的随机,没有白噪音那种一步天渊的突兀。
图片:山剪影、白噪声俯览、白噪声侧览。
而自然噪声就是为了模拟这种自然的随机。
单看自然噪声本身,或许我们并不能察觉作者模拟的多么完美。
方形噪声图:
但其中实际隐藏着以假乱真的潜力。
基于自然噪声的地形生成:
明天,我大概就能发一个易学版自然噪声的源码了。
厉害啊。这是高阶课程了
页:
[1]