private void InitLogic()
 {
     TerrainModel   = new TerrainModel();
     TerrainEngine  = new TerrainEngine(TerrainModel);
     ViewportCamera = new ViewportCamera();
     Viewport       = new Viewport(TerrainEngine, ViewportCamera, TerrainModel);
     LayerManager   = new LayerManager(TerrainEngine);
     TerrainEngine.InitLogic(LayerManager, this);
 }
        public Viewport(TerrainEngine terrainSettings, ViewportCamera viewportCamera, TerrainModel terrainModel)
        {
            this.terrainModel   = terrainModel;
            EffectsManager      = new DefaultEffectsManager();
            this.terrainEngine  = terrainSettings;
            this.viewportCamera = viewportCamera;

            InitProperties();
            InitCommands();
            InitModel();
            InitDefaultViewportSettings();
            ChangeViewMode(0);
        }
        public void ExportMaps()
        {
            TerrainEngine.CreateHeightMap();
            Microsoft.Win32.SaveFileDialog saveFileDialog = new Microsoft.Win32.SaveFileDialog
            {
                Filter      = "png (.png) | *.png",
                FilterIndex = 1
            };
            Nullable <bool> result = saveFileDialog.ShowDialog();

            if (result == true)
            {
                TerrainEngine.ExportMaps(saveFileDialog.FileName);
            }
        }
        public void UpdateTerrainSize(int terrainSize)
        {
            switch (terrainSize)
            {
            case 16:
                Res16   = false;
                Res32   = true;
                Res64   = true;
                Res128  = true;
                Res512  = true;
                Res1024 = true;
                Res2048 = true;
                Res4096 = true;
                break;

            case 32:
                Res16   = true;
                Res32   = false;
                Res64   = true;
                Res128  = true;
                Res512  = true;
                Res1024 = true;
                Res2048 = true;
                Res4096 = true;
                break;

            case 64:
                Res16   = true;
                Res32   = true;
                Res64   = false;
                Res128  = true;
                Res512  = true;
                Res1024 = true;
                Res2048 = true;
                Res4096 = true;
                break;

            case 128:
                Res16   = true;
                Res32   = true;
                Res64   = true;
                Res128  = false;
                Res512  = true;
                Res1024 = true;
                Res2048 = true;
                Res4096 = true;
                break;

            case 512:
                Res16   = true;
                Res32   = true;
                Res64   = true;
                Res128  = true;
                Res512  = false;
                Res1024 = true;
                Res2048 = true;
                Res4096 = true;
                break;

            case 1024:
                Res16   = true;
                Res32   = true;
                Res64   = true;
                Res128  = true;
                Res512  = true;
                Res1024 = false;
                Res2048 = true;
                Res4096 = true;
                break;

            case 2048:
                Res16   = true;
                Res32   = true;
                Res64   = true;
                Res128  = true;
                Res512  = true;
                Res1024 = true;
                Res2048 = false;
                Res4096 = true;
                break;

            case 4096:
                Res16   = true;
                Res32   = true;
                Res64   = true;
                Res128  = true;
                Res512  = true;
                Res1024 = true;
                Res2048 = true;
                Res4096 = false;
                break;
            }
            TerrainModel.TerrainSize = terrainSize;
            Viewport.InitModel();
            Viewport.InitDefaultViewportSettings();
            TerrainEngine.ResetTerrainEngine();
        }
Exemple #5
0
 public LayerManager(TerrainEngine terrainEngine)
 {
     this.terrainEngine = terrainEngine;
     InitProperties();
     InitCommands();
 }