From 1186c9cc00f001e1215e6c87d0f20a84e3902e5c Mon Sep 17 00:00:00 2001 From: FunkyFr3sh Date: Sat, 24 Sep 2022 01:41:18 +0200 Subject: [PATCH] add option to create opengl core context --- inc/dd.h | 1 + src/config.c | 2 ++ src/opengl_utils.c | 5 +++++ 3 files changed, 8 insertions(+) diff --git a/inc/dd.h b/inc/dd.h index 6742a3e..577f880 100644 --- a/inc/dd.h +++ b/inc/dd.h @@ -139,6 +139,7 @@ typedef struct CNCDDRAW BOOL fpupreserve; BOOL allow_wmactivate; int d3d9_adapter; + BOOL opengl_core; BOOL accurate_timers; BOOL resizable; BOOL nonexclusive; diff --git a/src/config.c b/src/config.c index 19f7a5f..1d2ba95 100644 --- a/src/config.c +++ b/src/config.c @@ -51,6 +51,7 @@ void cfg_load() 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); + g_ddraw->opengl_core = cfg_get_bool("opengl_core", FALSE); cfg_get_string("screenshotdir", ".\\Screenshots\\", g_ddraw->screenshot_dir, sizeof(g_ddraw->screenshot_dir)); if (g_ddraw->locktopleft) @@ -352,6 +353,7 @@ static void cfg_create_ini() "\n" "; Undocumented settings\n" "d3d9_adapter=0\n" + "opengl_core=false\n" "d3d9on12=false\n" "game_handles_close=false\n" "accuratetimers=false\n" diff --git a/src/opengl_utils.c b/src/opengl_utils.c index 0f8dc63..901383f 100644 --- a/src/opengl_utils.c +++ b/src/opengl_utils.c @@ -214,6 +214,11 @@ void oglu_init() g_oglu_got_version3 = FALSE; wglCreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC)xwglGetProcAddress("wglCreateContextAttribsARB"); } + + if (g_ddraw->opengl_core) + { + wglCreateContextAttribsARB = (PFNWGLCREATECONTEXTATTRIBSARBPROC)xwglGetProcAddress("wglCreateContextAttribsARB"); + } } BOOL oglu_ext_exists(char* ext, HDC hdc)