/// <summary> /// 创建网格数据 /// </summary> private void CreateCoordinateInfos() { for (int z = -HalfLength; z < HalfLength; z++) { for (int x = -HalfLength; x < HalfLength; x++) { Vector2Int vector2Int = new Vector2Int(position.x + x, position.z + z); CoordinateInfo info = new CoordinateInfo(); info.position = vector2Int; info.precipitation = PerlinNoise.PerlinNoise2D(Map.Seed + 1, (vector2Int.x + 0.5f) * 0.003f, (vector2Int.y + 0.5f) * 0.003f); info.baseTemperature = PerlinNoise.PerlinNoise2D(Map.Seed + 2, (vector2Int.x + 0.5f) * 0.003f, (vector2Int.y + 0.5f) * 0.003f); info.biomeName = Biome.SelectBiome(info.baseTemperature, info.precipitation); Biome currentBoime = Biome.GetBiomeByName(info.biomeName); currentBoime.SetStratum(info); Map.Instance.coordinateInfoMap.Add(vector2Int, info); } } }