移动端云渲染的实现

先展示最终效果:

体积云视频

 

 

类似渲染云这种自然现象的时候,必须首先了解噪声这个概念。这个噪声指的是描述自然界规律的一些随机函数。例如大名鼎鼎的柏林噪声。Perlin噪声被大量用于云朵、火焰和地形等自然环境的模拟,而Worley噪声被提出用于模拟一些多孔结构,例如纸张、木纹等。不过其实Wroley噪声也可以用在云上面。

 

移动端云渲染的实现_第1张图片

对于噪声这里不想深入讨论,感兴趣的可以去看论文或者冯女神的博客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)*p.z) + f.xy;
	float2 rg = tex2Dlod(_NoiseTex, float4((uv2 + 0.5) / 256.0, 0, 0)).yx;
	return lerp(rg.

你可能感兴趣的:(u3d,unity,程序转TA)