mx_fractal_noise_vec3
mx_fractal_noise_vec3
一个程序化的三维分形噪声生成器,通过叠加多层噪声来创建复杂的、细节丰富的 `vec3` 向量,非常适合直接生成程序化彩色纹理或三维顶点位移。
核心优势
直接输出一个包含丰富多层次细节的 `vec3` 向量,极大地简化了创建逼真程序化彩色纹理(如大理石)和三维几何体变形(如崎岖地形)的流程。
常见用途
生成程序化彩色纹理(如大理石、木纹)
通过三维顶点位移创建不规则形状(如小行星、岩石)
模拟体积效果(如星云、彩色烟雾)
如何调整
通过缩放 `position` 输入(如 `positionWorld.mul(4.0)`)来控制图案的整体大小和密度。通过调整 `octaves`、`lacunarity` 和 `diminish` 来雕刻图案的内部细节。在用于顶点位移时,`amplitude` 参数是控制变形强度的最直接方式。
代码示例
1// 生成三维分形噪声,可直接用作颜色或三维位移
2const fractalVec3 = mx_fractal_noise_vec3(
3 positionWorld.mul(0.5), // 采样坐标
4 int( 5 ), // octaves: 细节层次
5 float( 2.2 ), // lacunarity: 频率增长率
6 float( 0.4 ) // diminish: 强度衰减率
7);