mirror of
https://github.com/FunkyFr3sh/cnc-ddraw.git
synced 2025-03-15 22:14:49 +01:00
rename upscale hack related stuff
This commit is contained in:
parent
c467b90e88
commit
5db961656a
2
inc/dd.h
2
inc/dd.h
@ -94,7 +94,7 @@ typedef struct cnc_ddraw
|
||||
BOOL isredalert;
|
||||
BOOL iscnc1;
|
||||
BOOL iskkndx;
|
||||
LONG incutscene;
|
||||
LONG upscale_hack_active;
|
||||
DWORD (WINAPI *renderer)(void);
|
||||
BOOL fullscreen;
|
||||
BOOL maintas;
|
||||
|
@ -13,6 +13,6 @@ void util_toggle_fullscreen();
|
||||
BOOL util_unadjust_window_rect(LPRECT prc, DWORD dwStyle, BOOL fMenu, DWORD dwExStyle);
|
||||
void util_set_window_rect(int x, int y, int width, int height, UINT flags);
|
||||
BOOL CALLBACK util_enum_child_proc(HWND hwnd, LPARAM lParam);
|
||||
BOOL util_detect_cutscene();
|
||||
BOOL util_detect_low_res_screen();
|
||||
|
||||
#endif
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
static BOOL d3d9_create_resouces();
|
||||
static BOOL d3d9_set_states();
|
||||
static BOOL d3d9_update_vertices(BOOL in_cutscene, BOOL stretch);
|
||||
static BOOL d3d9_update_vertices(BOOL upscale_hack, BOOL stretch);
|
||||
|
||||
static d3d9_renderer g_d3d9;
|
||||
|
||||
@ -195,7 +195,7 @@ static BOOL d3d9_create_resouces()
|
||||
&g_d3d9.vertex_buf,
|
||||
NULL));
|
||||
|
||||
err = err || !d3d9_update_vertices(InterlockedExchangeAdd(&g_ddraw->incutscene, 0), TRUE);
|
||||
err = err || !d3d9_update_vertices(InterlockedExchangeAdd(&g_ddraw->upscale_hack_active, 0), TRUE);
|
||||
|
||||
int i;
|
||||
for (i = 0; i < D3D9_TEXTURE_COUNT; i++)
|
||||
@ -276,7 +276,7 @@ static BOOL d3d9_set_states()
|
||||
return !err;
|
||||
}
|
||||
|
||||
static BOOL d3d9_update_vertices(BOOL in_cutscene, BOOL stretch)
|
||||
static BOOL d3d9_update_vertices(BOOL upscale_hack, BOOL stretch)
|
||||
{
|
||||
float vp_x = stretch ? (float)g_ddraw->render.viewport.x : 0.0f;
|
||||
float vp_y = stretch ? (float)g_ddraw->render.viewport.y : 0.0f;
|
||||
@ -284,8 +284,8 @@ static BOOL d3d9_update_vertices(BOOL in_cutscene, BOOL stretch)
|
||||
float vp_w = stretch ? (float)(g_ddraw->render.viewport.width + g_ddraw->render.viewport.x) : (float)g_ddraw->width;
|
||||
float vp_h = stretch ? (float)(g_ddraw->render.viewport.height + g_ddraw->render.viewport.y) : (float)g_ddraw->height;
|
||||
|
||||
float s_h = in_cutscene ? g_d3d9.scale_h * ((float)g_ddraw->upscale_hack_height / g_ddraw->height) : g_d3d9.scale_h;
|
||||
float s_w = in_cutscene ? g_d3d9.scale_w * ((float)g_ddraw->upscale_hack_width / g_ddraw->width) : g_d3d9.scale_w;
|
||||
float s_h = upscale_hack ? g_d3d9.scale_h * ((float)g_ddraw->upscale_hack_height / g_ddraw->height) : g_d3d9.scale_h;
|
||||
float s_w = upscale_hack ? g_d3d9.scale_w * ((float)g_ddraw->upscale_hack_width / g_ddraw->width) : g_d3d9.scale_w;
|
||||
|
||||
CUSTOMVERTEX vertices[] =
|
||||
{
|
||||
@ -334,14 +334,14 @@ DWORD WINAPI d3d9_render_main(void)
|
||||
{
|
||||
if (g_ddraw->vhack)
|
||||
{
|
||||
if (util_detect_cutscene())
|
||||
if (util_detect_low_res_screen())
|
||||
{
|
||||
if (!InterlockedExchange(&g_ddraw->incutscene, TRUE))
|
||||
if (!InterlockedExchange(&g_ddraw->upscale_hack_active, TRUE))
|
||||
d3d9_update_vertices(TRUE, TRUE);
|
||||
}
|
||||
else
|
||||
{
|
||||
if (InterlockedExchange(&g_ddraw->incutscene, FALSE))
|
||||
if (InterlockedExchange(&g_ddraw->upscale_hack_active, FALSE))
|
||||
d3d9_update_vertices(FALSE, TRUE);
|
||||
}
|
||||
}
|
||||
|
@ -61,10 +61,10 @@ DWORD WINAPI gdi_render_main(void)
|
||||
}
|
||||
}
|
||||
|
||||
BOOL scale_cutscene = g_ddraw->vhack && util_detect_cutscene();
|
||||
BOOL upscale_hack = g_ddraw->vhack && util_detect_low_res_screen();
|
||||
|
||||
if (g_ddraw->vhack)
|
||||
InterlockedExchange(&g_ddraw->incutscene, scale_cutscene);
|
||||
InterlockedExchange(&g_ddraw->upscale_hack_active, upscale_hack);
|
||||
|
||||
if (!g_ddraw->handlemouse)
|
||||
{
|
||||
@ -77,7 +77,7 @@ DWORD WINAPI gdi_render_main(void)
|
||||
RECT rc = { 0, 0, g_ddraw->render.width, g_ddraw->render.height };
|
||||
FillRect(g_ddraw->render.hdc, &rc, (HBRUSH)GetStockObject(BLACK_BRUSH));
|
||||
}
|
||||
else if (scale_cutscene)
|
||||
else if (upscale_hack)
|
||||
{
|
||||
StretchDIBits(
|
||||
g_ddraw->render.hdc,
|
||||
|
@ -565,17 +565,17 @@ static void ogl_render()
|
||||
{
|
||||
if (g_ddraw->vhack)
|
||||
{
|
||||
if (util_detect_cutscene())
|
||||
if (util_detect_low_res_screen())
|
||||
{
|
||||
g_ogl.scale_w *= (float)g_ddraw->upscale_hack_width / g_ddraw->width;
|
||||
g_ogl.scale_h *= (float)g_ddraw->upscale_hack_height / g_ddraw->height;
|
||||
|
||||
if (!InterlockedExchange(&g_ddraw->incutscene, TRUE))
|
||||
if (!InterlockedExchange(&g_ddraw->upscale_hack_active, TRUE))
|
||||
scale_changed = TRUE;
|
||||
}
|
||||
else
|
||||
{
|
||||
if (InterlockedExchange(&g_ddraw->incutscene, FALSE))
|
||||
if (InterlockedExchange(&g_ddraw->upscale_hack_active, FALSE))
|
||||
scale_changed = TRUE;
|
||||
}
|
||||
}
|
||||
|
@ -335,7 +335,7 @@ static unsigned char util_get_pixel(int x, int y)
|
||||
return ((unsigned char*)dds_GetBuffer(g_ddraw->primary))[y * g_ddraw->primary->l_pitch + x * g_ddraw->primary->lx_pitch];
|
||||
}
|
||||
|
||||
BOOL util_detect_cutscene()
|
||||
BOOL util_detect_low_res_screen()
|
||||
{
|
||||
static int* in_movie = (int*)0x00665F58;
|
||||
static int* is_vqa_640 = (int*)0x0065D7BC;
|
||||
|
@ -65,7 +65,7 @@ BOOL WINAPI fake_GetCursorPos(LPPOINT lpPoint)
|
||||
g_ddraw->cursor.y = pt.y;
|
||||
}
|
||||
|
||||
if (g_ddraw->vhack && InterlockedExchangeAdd(&g_ddraw->incutscene, 0))
|
||||
if (g_ddraw->vhack && InterlockedExchangeAdd(&g_ddraw->upscale_hack_active, 0))
|
||||
{
|
||||
diffx = 0;
|
||||
diffy = 0;
|
||||
|
Loading…
x
Reference in New Issue
Block a user