public ShadowTechniqueItem(ShadowTechniques technique, string text) { this.technique = technique; this.text = text; }
private void ChangeToBetterDefaultSettings() { bool shadowTechniqueInitialized = false; bool shadowTextureSizeInitialized = false; if (!string.IsNullOrEmpty(EngineApp.ConfigName)) { string error; TextBlock block = TextBlockUtils.LoadFromRealFile( VirtualFileSystem.GetRealPathByVirtual(EngineApp.ConfigName), out error); if (block != null) { TextBlock blockVideo = block.FindChild("Video"); if (blockVideo != null) { if (blockVideo.IsAttributeExist("shadowTechnique")) shadowTechniqueInitialized = true; if (blockVideo.IsAttributeExist("shadowDirectionalLightTextureSize")) shadowTextureSizeInitialized = true; } } } //shadowTechnique if (!shadowTechniqueInitialized) { //configure optimal settings for this computer if (RenderSystem.Instance.HasShaderModel3() && RenderSystem.Instance.Capabilities.HardwareRenderToTexture) { shadowTechnique = ShadowTechniques.ShadowmapHigh; //if( RenderSystem.Instance.GPUIsGeForce() ) //{ // if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && // RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_NV40 ) // { // shadowTechnique = ShadowTechniques.ShadowmapLow; // } // if( RenderSystem.Instance.GPUCodeName == GPUCodeNames.GeForce_G70 ) // shadowTechnique = ShadowTechniques.ShadowmapMedium; //} //if( RenderSystem.Instance.GPUIsRadeon() ) //{ // if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && // RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R400 ) // { // shadowTechnique = ShadowTechniques.ShadowmapLow; // } // if( RenderSystem.Instance.GPUCodeName == GPUCodeNames.Radeon_R500 ) // shadowTechnique = ShadowTechniques.ShadowmapMedium; //} //if( RenderSystem.Instance.GPUIsIntel() ) //{ // if( RenderSystem.Instance.GPUCodeName == GPUCodeNames.Intel_HDGraphics ) // shadowTechnique = ShadowTechniques.ShadowmapHigh; //} } else shadowTechnique = ShadowTechniques.None; } //shadow texture size if (!shadowTextureSizeInitialized) { if (RenderSystem.Instance.GPUIsGeForce()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_G70) { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } else if (RenderSystem.Instance.GPUIsRadeon()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R500) { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } else if (RenderSystem.Instance.GPUIsIntel()) { if (RenderSystem.Instance.GPUCodeName != GPUCodeNames.Intel_HDGraphics) { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } else { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } }
void ChangeToBetterDefaultSettings() { bool shadowTechniqueInitialized = false; bool shadowTextureSizeInitialized = false; if (!string.IsNullOrEmpty(EngineApp.ConfigName)) { string error; TextBlock block = TextBlockUtils.LoadFromRealFile( VirtualFileSystem.GetRealPathByVirtual(EngineApp.ConfigName), out error); if (block != null) { TextBlock blockVideo = block.FindChild("Video"); if (blockVideo != null) { if (blockVideo.IsAttributeExist("shadowTechnique")) { shadowTechniqueInitialized = true; } if (blockVideo.IsAttributeExist("shadowDirectionalLightTextureSize")) { shadowTextureSizeInitialized = true; } } } } //shadowTechnique if (!shadowTechniqueInitialized) { if (RenderSystem.Instance.GPUIsGeForce()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_NV40) { shadowTechnique = ShadowTechniques.ShadowmapLow; } if (RenderSystem.Instance.GPUCodeName == GPUCodeNames.GeForce_G70) { shadowTechnique = ShadowTechniques.ShadowmapMedium; } } if (RenderSystem.Instance.GPUIsRadeon()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R400) { shadowTechnique = ShadowTechniques.ShadowmapLow; } if (RenderSystem.Instance.GPUCodeName == GPUCodeNames.Radeon_R500) { shadowTechnique = ShadowTechniques.ShadowmapMedium; } } if (!RenderSystem.Instance.HasShaderModel2()) { shadowTechnique = ShadowTechniques.None; } } //shadow texture size if (!shadowTextureSizeInitialized) { if (RenderSystem.Instance.GPUIsGeForce()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_G70) { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } else if (RenderSystem.Instance.GPUIsRadeon()) { if (RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R500) { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } else { shadowDirectionalLightTextureSize = 1024; shadowSpotLightTextureSize = 1024; shadowPointLightTextureSize = 512; } } }
public ShadowTechniqueItem( ShadowTechniques technique, string text ) { this.technique = technique; this.text = text; }
void ChangeToBetterDefaultSettings() { bool shadowTechniqueInitialized = false; bool shadowTextureSizeInitialized = false; if( !string.IsNullOrEmpty( EngineApp.ConfigName ) ) { string error; TextBlock block = TextBlockUtils.LoadFromRealFile( VirtualFileSystem.GetRealPathByVirtual( EngineApp.ConfigName ), out error ); if( block != null ) { TextBlock blockVideo = block.FindChild( "Video" ); if( blockVideo != null ) { if( blockVideo.IsAttributeExist( "shadowTechnique" ) ) shadowTechniqueInitialized = true; if( blockVideo.IsAttributeExist( "shadow2DTextureSize" ) ) shadowTextureSizeInitialized = true; } } } //shadowTechnique if( !shadowTechniqueInitialized ) { if( RenderSystem.Instance.GPUIsGeForce() ) { if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_NV40 ) { shadowTechnique = ShadowTechniques.ShadowmapLow; } if( RenderSystem.Instance.GPUCodeName == GPUCodeNames.GeForce_G70 ) shadowTechnique = ShadowTechniques.ShadowmapMedium; } if( RenderSystem.Instance.GPUIsRadeon() ) { if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R400 ) { shadowTechnique = ShadowTechniques.ShadowmapLow; } if( RenderSystem.Instance.GPUCodeName == GPUCodeNames.Radeon_R500 ) shadowTechnique = ShadowTechniques.ShadowmapMedium; } if( !RenderSystem.Instance.HasShaderModel2() ) shadowTechnique = ShadowTechniques.None; } //shadow texture size if( !shadowTextureSizeInitialized ) { if( RenderSystem.Instance.GPUIsGeForce() ) { if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_G70 ) { shadow2DTextureSize = 1024; } } else if( RenderSystem.Instance.GPUIsRadeon() ) { if( RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R500 ) { shadow2DTextureSize = 1024; } } else shadow2DTextureSize = 1024; } }
void ChangeToBetterDefaultSettings() { bool shadowTechniqueInitialized = false; bool shadowTextureSizeInitialized = false; string error; TextBlock block = TextBlockUtils.LoadFromRealFile( EngineApp.ConfigName, out error ); if( block != null ) { TextBlock blockVideo = block.FindChild( "Video" ); if( blockVideo != null ) { if( blockVideo.IsAttributeExist( "shadowTechnique" ) ) shadowTechniqueInitialized = true; if( blockVideo.IsAttributeExist( "shadowTextureSize" ) ) shadowTextureSizeInitialized = true; } } //shadowTechnique if( !shadowTechniqueInitialized ) { if( RenderSystem.Instance.GPUIsGeForce() && RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_NV10 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.GeForce_NV40 ) { shadowTechnique = ShadowTechniques.ShadowmapLow; } if( RenderSystem.Instance.GPUIsRadeon() && RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R100 && RenderSystem.Instance.GPUCodeName <= GPUCodeNames.Radeon_R400 ) { shadowTechnique = ShadowTechniques.ShadowmapLow; } } //shadow texture size if( !shadowTextureSizeInitialized ) { if( RenderSystem.Instance.GPUIsGeForce() && RenderSystem.Instance.GPUCodeName >= GPUCodeNames.GeForce_G80 ) { shadow2DTextureSize = 2048; } if( RenderSystem.Instance.GPUIsRadeon() && RenderSystem.Instance.GPUCodeName >= GPUCodeNames.Radeon_R600 ) { shadow2DTextureSize = 2048; } } }