public Map() { List <uint> colors = new List <uint>(); var points = new List <Vector2>(); for (int i = 0; i < _pointCount; i++) { colors.Add(0); points.Add(new Vector2( UnityEngine.Random.Range(0, Width), UnityEngine.Random.Range(0, Height)) ); } for (int i = 0; i < NUM_LLOYD_RELAXATIONS; i++) { points = Graph.RelaxPoints(points, Width, Height).ToList(); } var voronoi = new Voronoi(points, colors, new Rect(0, 0, Width, Height)); Graph = new Graph(points, voronoi, (int)Width, (int)Height, _lakeThreshold); }
public void Init(Func <Vector2, bool> checkIsland = null) { List <uint> colors = new List <uint>(); var points = new List <Vector2>(); for (int i = 0; i < _pointCount; i++) { colors.Add(0); points.Add(new Vector2( UnityEngine.Random.Range(0, Width), UnityEngine.Random.Range(0, Height)) ); } for (int i = 0; i < NUM_LLOYD_RELAXATIONS; i++) { points = Graph.RelaxPoints(points, Width, Height).ToList(); } var voronoi = new Voronoi(points, colors, new Rect(0, 0, Width, Height)); checkIsland = checkIsland ?? IslandShape.makePerlin(); Graph = new Graph(checkIsland, points, voronoi, (int)Width, (int)Height, _lakeThreshold); }