Exemple #1
0
        private void InitMapBg()
        {
            SetMapRate();

            //根据地图Id 设置mapBg的图片
            if (adapter != null)
            {
                var mapId = adapter.MapId;
                AbstractMapConfig mapConfig = SingletonManager.Get <MapConfigManager>().SceneParameters;
                if (mapConfig is AbstractMapConfig)
                {
                    Loader.RetriveTextureAsync(SingletonManager.Get <MapConfigManager>().SceneParameters.MapLargeBundlename, SingletonManager.Get <MapConfigManager>().SceneParameters.MapLarge, (data) =>
                    {
                        mapBgRawIamge.texture = data;
                    });
                }

                /*
                 * switch (mapId)
                 * {
                 *  case 1:
                 *      {
                 *          Loader.RetriveTextureAsync(SingletonManager.Get<MapConfigManager>().SceneParameters.MapLargeBundlename, SingletonManager.Get<MapConfigManager>().SceneParameters.MapLarge, (data) =>
                 *          {
                 *              mapBgRawIamge.texture = data;
                 *          });
                 *      }
                 *      break;
                 * }
                 */
            }
        }
Exemple #2
0
 public void LoadTerrain(IUnityAssetManager assetManager, AbstractMapConfig sceneConfig)
 {
     if (!_dictTerrains.ContainsKey(sceneConfig.Id))
     {
         MyTerrain terrain = new MyTerrain(assetManager, sceneConfig);
         terrain.LoadAll();
         AddTerrain(terrain);
     }
     SetTerrainData();
 }
Exemple #3
0
 public MyTerrain(ILoadRequestManager manager, AbstractMapConfig sceneConfig)
 {
     _manager  = manager;
     _isLoaded = false;
     if (sceneConfig != null)
     {
         _mapId   = sceneConfig.Id;
         _mapName = sceneConfig.MapName;
         _terrainOriginPos.Set(sceneConfig.OriginPosition.x, sceneConfig.OriginPosition.y, sceneConfig.OriginPosition.z);
         _size.Set(sceneConfig.Size.x, sceneConfig.Size.y, sceneConfig.Size.z);
         if (sceneConfig is SceneConfig)
         {
             SceneConfig config = sceneConfig as SceneConfig;
             _splitWidth     = config.TerrainSize;
             _splitHeight    = config.TerrainSize;
             _splitWidthInv  = 1.0f / _splitWidth;
             _splitHeightInv = 1.0f / _splitHeight;
             _mapWidth       = config.TerrainSize * config.TerrainDimension;
             _mapHeight      = config.TerrainSize * config.TerrainDimension;
             Vector3 pos = config.TerrainMin;
             _terrainInitPos.Set(pos.x, pos.y, pos.z);
         }
         else
         {
             LevelConfig config = sceneConfig as LevelConfig;
             _splitWidth     = config.TerrainSize;
             _splitHeight    = config.TerrainSize;
             _splitWidthInv  = 1.0f / _splitWidth;
             _splitHeightInv = 1.0f / _splitHeight;
             _mapWidth       = config.TerrainSize * config.TerrainDimension;
             _mapHeight      = config.TerrainSize * config.TerrainDimension;
             Vector3 pos = config.TerrainMin;
             _terrainInitPos.Set(pos.x, pos.y, pos.z);
         }
         _splitCols = (int)Math.Ceiling(_mapWidth / (float)_splitWidth);
         _splitRows = (int)Math.Ceiling(_mapHeight / (float)_splitHeight);
     }
     _terrains = new TerrainItem[_splitRows * _splitCols];
 }
Exemple #4
0
 public void SetMapInfo(AbstractMapConfig info)
 {
     SceneParameters = info;
     _zone           = new ZoneController();
     _zone.AddZone(SceneParameters.SpecialZones);
 }