Added new options to configuration presets

master
krzys-h 2015-07-20 20:47:44 +02:00
parent 5593f427f6
commit 4741118b61
2 changed files with 18 additions and 7 deletions

View File

@ -124,7 +124,7 @@ CEngine::CEngine(CApplication *app)
m_offscreenShadowRenderingResolution = 1024; m_offscreenShadowRenderingResolution = 1024;
m_qualityShadows = true; m_qualityShadows = true;
m_shadowRange = 0.0f; m_shadowRange = 0.0f;
m_multisample = 1; m_multisample = 2;
m_totoMode = true; m_totoMode = true;
m_lensMode = true; m_lensMode = true;
@ -2583,12 +2583,9 @@ float CEngine::GetShadowRange()
void CEngine::SetMultiSample(int value) void CEngine::SetMultiSample(int value)
{ {
bool changed = m_multisample != value; if(value == m_multisample) return;
m_multisample = value; m_multisample = value;
if(changed) m_device->DeleteFramebuffer("multisample");
{
m_device->DeleteFramebuffer("multisample");
}
} }
int CEngine::GetMultiSample() int CEngine::GetMultiSample()
@ -3751,6 +3748,7 @@ void CEngine::UseShadowMapping(bool enable)
void CEngine::UseMSAA(bool enable) void CEngine::UseMSAA(bool enable)
{ {
m_multisample = Math::Min(m_device->GetMaxSamples(), m_multisample);
if (m_multisample < 2) return; if (m_multisample < 2) return;
if (enable) if (enable)

View File

@ -5355,7 +5355,7 @@ void CMainDialog::ChangeSetupQuality(int quality)
bool bEnable; bool bEnable;
float value; float value;
bEnable = (quality >= 0); bEnable = true; //(quality >= 0);
m_engine->SetShadow(bEnable); m_engine->SetShadow(bEnable);
m_engine->SetGroundSpot(bEnable); m_engine->SetGroundSpot(bEnable);
m_engine->SetDirty(bEnable); m_engine->SetDirty(bEnable);
@ -5386,6 +5386,19 @@ void CMainDialog::ChangeSetupQuality(int quality)
if ( quality > 0 ) value = 1.0f; if ( quality > 0 ) value = 1.0f;
m_engine->SetGadgetQuantity(value); m_engine->SetGadgetQuantity(value);
if ( quality < 0 ) m_engine->SetMultiSample(1);
if ( quality == 0 ) m_engine->SetMultiSample(2);
if ( quality > 0 ) m_engine->SetMultiSample(4);
if ( quality < 0 ) { m_engine->SetTextureFilterMode(Gfx::TEX_FILTER_BILINEAR); }
if ( quality == 0 ) { m_engine->SetTextureFilterMode(Gfx::TEX_FILTER_TRILINEAR); m_engine->SetTextureMipmapLevel(4); m_engine->SetTextureAnisotropyLevel(4); }
if ( quality > 0 ) { m_engine->SetTextureFilterMode(Gfx::TEX_FILTER_TRILINEAR); m_engine->SetTextureMipmapLevel(8); m_engine->SetTextureAnisotropyLevel(8); }
if ( quality < 0 ) { m_engine->SetShadowMapping(false); m_engine->SetShadowMappingQuality(false); }
else { m_engine->SetShadowMapping(true); m_engine->SetShadowMappingQuality(true); m_engine->SetShadowMappingOffscreen(true); }
if ( quality == 0 ) m_engine->SetShadowMappingOffscreenResolution(1024);
if ( quality > 0 ) m_engine->SetShadowMappingOffscreenResolution(2048);
// TODO: first execute adapt? // TODO: first execute adapt?
//m_engine->FirstExecuteAdapt(false); //m_engine->FirstExecuteAdapt(false);
} }