先展示最终效果:
类似渲染云这种自然现象的时候,必须首先了解噪声这个概念。这个噪声指的是描述自然界规律的一些随机函数。例如大名鼎鼎的柏林噪声。Perlin噪声被大量用于云朵、火焰和地形等自然环境的模拟,而Worley噪声被提出用于模拟一些多孔结构,例如纸张、木纹等。不过其实Wroley噪声也可以用在云上面。
对于噪声这里不想深入讨论,感兴趣的可以去看论文或者冯女神的博客https://blog.csdn.net/candycat1992/article/details/50346469。
另外,我们使用的噪声其实是这个噪声:https://www.shadertoy.com/view/4sfGzS
这是Iq大神弄的一个噪声,效率和表现都算很好。
float noise(in float3 x)
{
float3 p = floor(x);
float3 f = frac(x);
f = f * f*(3.0 - 2.0*f);
float2 uv2 = (p.xy + float2(37.0, 17.0)*