1
0
mirror of https://github.com/FunkyFr3sh/cnc-ddraw.git synced 2025-03-15 06:04:49 +01:00

add option to change d3d9 adapter

This commit is contained in:
FunkyFr3sh 2022-09-24 01:12:53 +02:00
parent f912b23877
commit d54011973f
3 changed files with 5 additions and 2 deletions

View File

@ -138,6 +138,7 @@ typedef struct CNCDDRAW
BOOL novidmem;
BOOL fpupreserve;
BOOL allow_wmactivate;
int d3d9_adapter;
BOOL accurate_timers;
BOOL resizable;
BOOL nonexclusive;

View File

@ -50,6 +50,7 @@ void cfg_load()
g_ddraw->resolutions = cfg_get_int("resolutions", RESLIST_NORMAL);
g_ddraw->fpupreserve = cfg_get_bool("fpupreserve", FALSE);
g_ddraw->allow_wmactivate = cfg_get_bool("allow_wmactivate", FALSE);
g_ddraw->d3d9_adapter = cfg_get_int("d3d9_adapter", 0);
cfg_get_string("screenshotdir", ".\\Screenshots\\", g_ddraw->screenshot_dir, sizeof(g_ddraw->screenshot_dir));
if (g_ddraw->locktopleft)
@ -350,6 +351,7 @@ static void cfg_create_ini()
"\n"
"\n"
"; Undocumented settings\n"
"d3d9_adapter=0\n"
"d3d9on12=false\n"
"game_handles_close=false\n"
"accuratetimers=false\n"

View File

@ -78,7 +78,7 @@ BOOL d3d9_create()
{
#if _DEBUG
D3DADAPTER_IDENTIFIER9 ai = {0};
const HRESULT hr = IDirect3D9_GetAdapterIdentifier(g_d3d9.instance, 0, 0, &ai);
const HRESULT hr = IDirect3D9_GetAdapterIdentifier(g_d3d9.instance, g_ddraw->d3d9_adapter, 0, &ai);
if (SUCCEEDED(hr))
{
@ -124,7 +124,7 @@ BOOL d3d9_create()
if (SUCCEEDED(
IDirect3D9_CreateDevice(
g_d3d9.instance,
D3DADAPTER_DEFAULT,
g_ddraw->d3d9_adapter,
D3DDEVTYPE_HAL,
g_ddraw->hwnd,
behavior_flags[i] | (g_ddraw->fpupreserve ? D3DCREATE_FPU_PRESERVE : 0),