噪声对于从未接触过的人来说可能是一个复杂的话题,但最简单的理解是,噪声是一种通过某些输入(通常是X,Y,Z坐标)获取值的方法。
你最熟悉噪声的地方可能是Minecraft的地形生成。在世界的每个点上,多个噪声函数会结合在一起决定是否放置一个方块,如果放置的话,决定放置哪个方块。
这几乎就是我们在ezEdits中所做的事情,使用噪声来生成形状、地形和纹理。
在插件中,你会发现几种噪声类型,每种都有不同的特性,特别是Cellular噪声,它带有许多你可以自定义的额外参数。
一些使用噪声的众多功能包括:
//eznoisegen ...
- 噪声指令#eznoisemask
- 蒙版//ezbrush gradient ...
- 笔刷
ezEdits中的噪声基于修改版的 FastNoiseLite,因此我们强烈推荐这个网站来试验噪声参数: http://auburn.github.io/FastNoiseLite/
每个参数和许多值都有一个简写,比如“Fractal”代替“FractalType”或“Simplex”代替“OpenSimplex2”。在可能的情况下,简写将显示在括号中。
红色 = 参数
紫色 = 值
设置噪声类型
设置要使用的噪声类型。这是任何噪声的起点,格式为 Noise()
,例如 Perlin()
,所有其他参数将放在括号中。
Perlin (per)
OpenSimplex2 (simplex)
OpenSimplex2S (smooth)
Value (val)
ValueCubic (cubic)
White
Cellular (vor)
Shard
基本噪声参数
Seed
设置噪声的种子值。-1或不设置将导致随机噪声种子。Frequency (Freq)
设置噪声的频率。较高的频率会产生陡峭的噪声,较低的值会产生平滑的噪声。Inverted (Invert)
是否反转噪声值。默认为false。True
False
ValueMapping (Map)
是否忽略或覆盖值映射。默认情况下,噪声被采样以在0到1之间映射。Default (Def)
None (No)
Override (OR)
如果覆盖:LowerBound (Min)
UpperBound (Max)
YScaling (Y)
在使用3D噪声时,可用于拉伸或压缩Y轴。
额外的 Cellular 噪声参数
CellularJitterModifier (Jitter)
通常为0..1.0
控制随机抖动或分布的细胞噪声节点,0表示完全网格化,1表示最大程度的“随机”,不重叠。超过1的值会开始与其邻居重叠。CellularDistanceFunction (Distance)
控制用于确定每个点到其节点的距离值的数学方法。Euclidean
EuclideanSq (sq)
Manhattan (man)
Hybrid
Minkovski1 (m1)
Minkowvki4 (m4)
Minkowski99 (m99)
Rounded (round)
CellularReturnType (DistReturn)
控制返回距离值之前如何修改。
所有 Distance2* 值指的是第二近的节点而不是最近的节点。CellValue (cell)
Distance (1)
DistanceSquared (sq)
DistanceInverse (inv)
DistanceLog (log)
DistanceExp (exp)
Distance2 (2)
Distance2Add (2add)
Distance2Add (2sub)
Distance2Add (2mul)
Distance2Add (2div)
Distance2Sq (2sq)
Distance2Inv (2inv)
Distance2Log (2log)
Distance2Exp (2exp)
Edge
Rounded (round)
NoiseLookup (noise)
额外的噪声查找参数:CellularNoiseLookup (Lookup)
当使用NoiseLookup返回类型时,控制覆盖细胞噪声的基础噪声。Perlin (per)
OpenSimplex2 (simplex)
OpenSimplex2S (smooth)
Value (val)
ValueCubic (cubic)
White
Cellular (vor)
CellularNoiseLookupFrequency (DistReturn)
控制基础噪声的频率。
额外的 Shard 噪声参数
Sharpness (Sharp)
通常为0..1.0
控制Shard噪声的图案锐度。较高的值在图案内部有更明确的边缘,而较低的值会显得更模糊。
分形噪声参数
FractalType (Fractal)
设置要使用的分形噪声类型。None (No)
FBm
Ridged
PingPong (PP)
额外的PingPong分形参数:PingPongStrength (PPStr)
如果选择了除 None
以外的分形类型:
Octaves (Oct)
设置要使用的分形噪声层数。Lacunarity (Lac)
设置每个分形层的比例尺度。大于1的值将有效增加每层的频率,小于1的值将有效降低每层的频率。Gain
设置每个分形层的相对强度。小于1的值将逐层减弱,大于1的值将逐层增强。WeightedStrength (Weighted)
设置每层强度对噪声值的响应性。
域扭曲参数
DomainWarpType (Warp)
设置要使用的域扭曲类型。None (No)
BasicGrid (Grid)
OpenSimplex2 (Simplex)
OpenSimplex2Reduced (Reduced)
Flow
Turbulence (Turb)
如果选择了除 None
以外的域扭曲类型:
DomainWarpFreq (WarpFreq)
设置域扭曲的频率。DomainWarpOct (WarpOct)
设置域扭曲的层数。DomainWarpGain (WarpGain)
设置每个域扭曲层的相对强度。DomainWarpAmp (WarpAmp)
设置域扭曲的总振幅(强度)。DomainWarpFrac (WarpFrac)
设置要使用的域扭曲特定分形类型。None (No)
DomainWarpIndependent (ind)
DomainWarpProgressive (prog)
DomainWarpLacunarity (WarpLac)
设置每个域扭曲层的比例尺度。
Value(Seed:123,Freq:0.04)
Cellular(Distance:Euclidean,DistReturn:NoiseLookup,Lookup:Perlin,LookupFreq:0.2,Freq:0.1)