mirror of https://github.com/PCSX2/pcsx2.git
GSdx: F9 is now switching better between HW and SW renderer.
Previously: GSdx was switching between the configured renderer and the best SW renderer (best = DX11 if supported). Now: If using DX: Switch SW/HW renderer and use the same DX version. If using SDL: same as before. git-svn-id: http://pcsx2.googlecode.com/svn/trunk@5164 96395faa-99c1-11dd-bbfe-3dabce05a288
This commit is contained in:
parent
fc5dd5a180
commit
4ef1ee3754
|
@ -334,8 +334,17 @@ EXPORT_C_(int) GSopen2(void** dsp, uint32 flags)
|
||||||
{
|
{
|
||||||
#ifdef _WINDOWS
|
#ifdef _WINDOWS
|
||||||
D3D_FEATURE_LEVEL level;
|
D3D_FEATURE_LEVEL level;
|
||||||
|
int best_sw_renderer = GSUtil::CheckDirect3D11Level(level) && level >= D3D_FEATURE_LEVEL_10_0 ? 4 : 1; // dx11 / dx9 sw
|
||||||
|
|
||||||
|
switch(renderer){
|
||||||
|
// Use alternative renderer (SW if currently using HW renderer, and vice versa, keeping the same DX level)
|
||||||
|
case 1: renderer = 0; break; // DX9: SW to HW
|
||||||
|
case 0: renderer = 1; break; // DX9: HW to SW
|
||||||
|
case 4: renderer = 3; break; // DX11: SW to HW
|
||||||
|
case 3: renderer = 4; break; // DX11: HW to SW
|
||||||
|
default: renderer = best_sw_renderer; // If wasn't using DX (e.g. SDL), use best SW renderer.
|
||||||
|
}
|
||||||
|
|
||||||
renderer = GSUtil::CheckDirect3D11Level(level) && level >= D3D_FEATURE_LEVEL_10_0 ? 4 : 1; // dx11 / dx9 sw
|
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue