蓝紫™
DDZEB 完全自主知识产权图形图像开发平台
开放源码 免费使用 在线运行
哈希及噪声函数,包括值噪声、梯度噪声以及 fBM 等。
文件语言大小版本开发者最后更新
lands/noise productionJavaScript2.3KBv1.0.0YB2024-10-16查看
lands/noise source codeJavaScript6.8KBv1.0.0YB2024-10-16查看
一、简要介绍 二、接口方法一、简要介绍

基于 JS 的噪声库其实用得不是很多,因为性能实在不太好。不过在某些情况下还是需要的,所以我们开发了 noise 库。需要注意的是,噪声并不是随机,所以,这个库里没有生成随机数的函数,需要生成有状态随机数,请使用 math 库里的 RNG 函数。

不同的噪声
各种噪声的样子:Noise
二、接口方法 2.1、hash11(x)

一维哈希,返回 [0, 1) 之间标量值。

2.2、hash21(x, y)

二维哈希,返回 [0, 1) 之间标量值。

2.3、hash31(x, y, z)

三维哈希,返回 [0, 1) 之间标量值。

2.4、hash22(x, y)

二维到二维哈希,返回分量为 [0, 1) 之间标量值。

2.5、hash33(x, y, z)

三维到三维哈希,返回分量为 [0, 1) 之间标量值。

2.6、noise11(x, hash, SYM, lerp)

一维值噪声(Value Noise),除 x 外参数可选。

2.7、noise21(x, y, hash, SYM, lerp)

二维值噪声(Value Noise),除 x、y 外参数可选。

2.8、noise31(x, y, z, hash, SYM, lerp)

三维值噪声(Value Noise),除 x、y、z 外参数可选。

2.9、perlin2(x, y, hash, SYM, lerp)

二维柏林噪声(Perlin Noise),除 x、y 外参数可选。

2.10、perlin3(x, y, z, hash, SYM, lerp)

三维柏林噪声(Perlin Noise),除 x、y、z 外参数可选。

2.11、fbm2(noisef, octaves)

传入二维噪声函数 noisef 以及迭代次数 octaves,返回二维 fBM 噪声函数。

2.12、fbm3(noisef, octaves)

传入三维噪声函数 noisef 以及迭代次数 octaves,返回三维 fBM 噪声函数。