欢迎光临散文网 会员登陆 & 注册

馒头 分型布朗运动 fbm from scrachapixel

2022-08-07 22:50 作者:damedown  | 我要投稿

一、Turbulence

小于一定数后翻转过来

本来 sNoise的取值范围再0~1之间,我处理为(sNoise-0.5)*2.0 值域就在-1.0~1.0之间。

再去绝对值abs((sNoise-0.5)*2.0),也就是每一层小于0.5都会翻转。


这里新增了K,因为图层乘不能取到1.0,也就是所有加成的总值。

这样取值绝对没有scratchapixel读取每一个点的最大值,然后用它来map的效果更好。所以K值也需要设计成动态的,才能更好的展示图片。

https://www.shadertoy.com/view/flcyDM

二、Wood Texture

fract(sNoise*10.0)即可

https://www.shadertoy.com/view/NtccWM

三、Marble Texture

大理石纹

得到的sNoise和uv.x进行后期处理

再scratch pixel中 i和j取值再0~512,但是我们的uv再0~1之间,sNoise的值K也在0~1之间,两个相加再0~2之间,之后20是他们的周期。

也就得到sin(uv.x+v)*20

∵(sin(uv.x+v)*20)取值在-1~1之间,我们要把它的取值弄到0~1之间

∴(sin(uv.x+v)*20)/2 + 0.5即刻

scratch中使用的((-1~1)+1)/2,我使用的是(-1~1)/2+1;

总结:

这本身是texture synthesis contains(纹理生成合成,我瞎J2翻译的)的内容,有兴趣的可以继续深入。现在很多软件已经有了,直接去他们的官网就能看到现成的结果,再倒回来找代码就好了。

参考https://www.manula.com/manuals/fxhome/ignite-pro/5/en/topic/fractal-noise

参考https://docs.chaos.com/display/VRAY4MODO/V-Ray+Splat+Texture


地图生成的总结:

再shadertoy中,只要最后加权在0~1之间就可以了,至于个人的地图,map到128,256,看个人的设计。


随便用,馒头超好吃。

馒头 分型布朗运动 fbm from scrachapixel的评论 (共 条)

分享到微博请遵守国家法律