public void Apply() { if (!_btApply.IsEnabled) { return; } SVideoSetting setting = new SVideoSetting(); setting.antialias = AntiAlias; setting.vsync = VSync; setting.textureFiltering = TextureFilter; setting.textureResolution = MatResolutionLevel; setting.textureProjection = MatProjection; setting.viewDistance = ViewDistance; setting.envDetail = EnvDetail; setting.groundClutter = GroundScene; setting.shadowQuality = ShadowQuality; setting.liquidDetail = LiquidDetail; setting.sunshafts = SunLightEffect; setting.particleDensity = ParticleDensity; setting.SSAO = SSAO; Engine.Instance.VideoSetting = setting; _btApply.IsEnabled = false; }
public IntPtr InitilalizeEngine() { new Engine(); Engine.Instance.LoadSetting(); SVideoSetting videoSetting = Engine.Instance.VideoSetting; SAdvancedSetting advancedSetting = Engine.Instance.AdvancedSetting; E_DRIVER_TYPE driverType = advancedSetting.driverType; if (!Engine.Instance.IsAboveVista && driverType == E_DRIVER_TYPE.Direct3D11) { advancedSetting.driverType = E_DRIVER_TYPE.Direct3D9; } bool success = Engine.Instance.Init(driverType, 0, false, videoSetting.vsync, videoSetting.antialias, true); Debug.Assert(success); if (!success && driverType == E_DRIVER_TYPE.Direct3D11) { driverType = E_DRIVER_TYPE.Direct3D9; success = Engine.Instance.Init(driverType, 0, false, videoSetting.vsync, videoSetting.antialias, true); Debug.Assert(success); } Engine.Instance.VideoSetting = videoSetting; Engine.Instance.AdvancedSetting = advancedSetting; new mwTool(); _mainCamera = Engine.Instance.SceneManager.AddCamera(new vector3df(0, 50, 0), new vector3df(0, 0, 0), new vector3df(0, 0, 1), 0.5f, 2500.0f, (float)Math.PI / 4.0f); return(Engine.Instance.HWnd); }
public void FillData() { //engine setting uint width, height; Engine.Instance.Driver.GetDisplayMode(out width, out height); SVideoSetting videoSetting = Engine.Instance.VideoSetting; // DisplayModes.Clear(); DisplayModes.Add(new DisplayMode() { WindowMode = true }); _cbDisplayModes.SelectedIndex = 0; _cbDisplayModes.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // Resolutions.Clear(); Resolutions.Add(new Resolution() { Width = width, Height = height }); _cbResolutions.SelectedIndex = 0; _cbResolutions.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // RefreshRates.Default(); _cbRefreshRates.SelectedIndex = 0; _cbRefreshRates.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // VideoDevices.Clear(); VideoDevices.Add(new VideoDevice() { Index = 0 }); _cbVideoDevices.SelectedIndex = 0; _cbVideoDevices.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // MultiSamples.Default(); _cbMultisamples.SelectedItem = (from x in MultiSamples where x.Sample == videoSetting.antialias select x).ToArray()[0]; _cbMultisamples.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // _cbVsyncs.SelectedItem = (from x in VSyncs where x.On == videoSetting.vsync select x).ToArray()[0]; _cbVsyncs.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // MatResolutions.Clear(); MatResolutions.Add(new OptionLevel() { Level = E_LEVEL.EL_LOW }); MatResolutions.Add(new OptionLevel() { Level = E_LEVEL.EL_FAIR }); MatResolutions.Add(new OptionLevel() { Level = E_LEVEL.EL_GOOD }); MatResolutions.Add(new OptionLevel() { Level = E_LEVEL.EL_HIGH }); _cbMatResolutions.SelectedItem = (from x in MatResolutions where x.Level == videoSetting.textureResolution select x).ToArray()[0]; _cbMatResolutions.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // _cbMatTextureFilters.SelectedItem = (from x in MatTextureFilters where x.Filter == videoSetting.textureFiltering select x).ToArray()[0]; _cbMatTextureFilters.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // _cbMatProjections.SelectedItem = (from x in MatProjections where x.On == false select x).ToArray()[0]; _cbMatProjections.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); // ViewDistances.Default(); _cbViewDistances.SelectedItem = (from x in ViewDistances where x.Level == videoSetting.viewDistance select x).ToArray()[0]; _cbViewDistances.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); EnvDetails.Default(); _cbEnvDetails.SelectedItem = (from x in EnvDetails where x.Level == videoSetting.envDetail select x).ToArray()[0]; _cbEnvDetails.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); GroundScenes.Default(); _cbGroundScenes.SelectedItem = (from x in GroundScenes where x.Level == videoSetting.groundClutter select x).ToArray()[0]; _cbGroundScenes.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); ShadowQualities.Default(); _cbShadowQuality.SelectedItem = (from x in ShadowQualities where x.Level == videoSetting.shadowQuality select x).ToArray()[0]; _cbShadowQuality.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); LiquidDetails.Clear(); LiquidDetails.Add(new OptionLevel() { Level = E_LEVEL.EL_LOW }); LiquidDetails.Add(new OptionLevel() { Level = E_LEVEL.EL_FAIR }); LiquidDetails.Add(new OptionLevel() { Level = E_LEVEL.EL_GOOD }); LiquidDetails.Add(new OptionLevel() { Level = E_LEVEL.EL_ULTRA }); _cbLiquidDetail.SelectedItem = (from x in LiquidDetails where x.Level == videoSetting.liquidDetail select x).ToArray()[0]; _cbLiquidDetail.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); SunLightEffects.Clear(); SunLightEffects.Add(new OptionLevel() { Level = E_LEVEL.EL_DISABLE }); SunLightEffects.Add(new OptionLevel() { Level = E_LEVEL.EL_LOW }); SunLightEffects.Add(new OptionLevel() { Level = E_LEVEL.EL_HIGH }); _cbSunLightEffect.SelectedItem = (from x in SunLightEffects where x.Level == videoSetting.sunshafts select x).ToArray()[0]; _cbSunLightEffect.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); ParticleDensities.Default(); _cbParticleDensity.SelectedItem = (from x in ParticleDensities where x.Level == videoSetting.particleDensity select x).ToArray()[0]; _cbParticleDensity.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); SSAOLevels.Clear(); SSAOLevels.Add(new OptionLevel() { Level = E_LEVEL.EL_DISABLE }); SSAOLevels.Add(new OptionLevel() { Level = E_LEVEL.EL_LOW }); SSAOLevels.Add(new OptionLevel() { Level = E_LEVEL.EL_HIGH }); _cbSSAO.SelectedItem = (from x in SSAOLevels where x.Level == videoSetting.SSAO select x).ToArray()[0]; _cbSSAO.SelectionChanged += new SelectionChangedEventHandler(_option_SelectionChanged); }