public override float sample2D(float x, float y) { if (geom_nois_set == null) { geom_nois_set = new GeomNoiseSettings(); } if (blocky_set == null) { blocky_set = new BlockyV1Settings(); } float res = 0; float r = 1; float s = 0; for (int i = 0; i < geom_nois_set.layers; i++) { res += Mathf.PerlinNoise( r * (x * noise_set.scale_x + noise_set.offset.x), r * (y * noise_set.scale_y + noise_set.offset.y) ) / r; s += r; r *= geom_nois_set.ratio; } return(Mathf.Floor(blocky_set.steps * res) / blocky_set.steps); }
public BlockyGen1(NoiseSetting ns, GeomNoiseSettings gns, BlockyV1Settings bs) { noise_set = ns; geom_nois_set = gns; blocky_set = bs; }