public void setNeighbors(TerrainEntity left, TerrainEntity top, TerrainEntity right, TerrainEntity bottom) { UnityTerrain left_terrain = null; UnityTerrain top_terrain = null; UnityTerrain right_terrain = null; UnityTerrain bottom_terrain = null; if (left != null) { left_terrain = left.terrain; } if (top != null) { top_terrain = top.terrain; } if (right != null) { right_terrain = right.terrain; } if (bottom != null) { bottom_terrain = bottom.terrain; } this.terrain.SetNeighbors(left_terrain, top_terrain, right_terrain, bottom_terrain); }
public static TerrainEntity create(int x, int z, float[,] heights, TerrainConfig config, GameObject parent) { GameObject game_object = createGameObject("Terrain-" + x + "-" + z, parent); TerrainData tData = createTerrainData(config); tData.SetHeights(0, 0, heights); game_object.GetComponent <UnityTerrain>().terrainData = tData; game_object.GetComponent <TerrainCollider>().terrainData = tData; game_object.transform.position = new Vector3(x * config.chunk_size, 0f, z * config.chunk_size); TerrainEntity entity = new TerrainEntity( x, z, heights, config.terrain_height, game_object, game_object.GetComponent <UnityTerrain>() ); return(entity); }
public static bool set(TerrainEntity entity) { file_path = file_path.Replace("{terrain_name}", entity.game_object.name); Debug.Log("TerrainEntityRepository.set: file_path: " + file_path); return(ConfigFile.save <TerrainEntityCore>(file_path, (TerrainEntityCore)entity)); }