1
0
mirror of https://github.com/djhackersdev/bemanitools.git synced 2024-11-27 16:00:52 +01:00

fix(iidx): Fix stretched BGAs in 9th and 10th style

This adds edge cases to the existing logic that checks the
vertex UV values to fix stretched BG videos on 11 to 17
already.

However, 9 and 10 also show this issue on modern GPU
hardware though it does not appear on all BG videos but
only on videos from 1st to 3rd style songs.

This commit addresses that issue by adding the missing
checks to the existing logic. Additional refactoring of
configuration naming etc. to match the extended
functionality is included.
This commit is contained in:
Jeffrey Paine 2023-06-25 07:02:02 -04:00 committed by GitHub
parent d3f192976c
commit 3c185d5fde
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
26 changed files with 112 additions and 96 deletions

View File

@ -10,7 +10,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -10,7 +10,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -10,7 +10,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -10,7 +10,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -10,7 +10,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -7,7 +7,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -7,7 +7,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -7,7 +7,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -7,7 +7,7 @@ eamuse.pcbid=0101020304050607086F
# EAMID
eamuse.eamid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
# Fix stretched BG videos on newer GPUs. Might appear on SIRIUS and older. On 9th and 10th style this issue may only affect older BGAs (from 1st-3rd style)
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)

View File

@ -1,9 +1,6 @@
# PCBID
eamuse.pcbid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,9 +1,6 @@
# PCBID
eamuse.pcbid=0101020304050607086F
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -1,6 +1,3 @@
# Fix stretched BG videos on newer GPUs. Might appear on Red and newer
gfx.bgvideo_uv_fix=false
# Run the game in a framed window (requires windowed option)
gfx.framed=false

View File

@ -45,8 +45,9 @@ void iidxhook_config_gfx_init(struct cconfig *config)
config,
IIDXHOOK_CONFIG_GFX_BGVIDEO_UV_FIX_KEY,
IIDXHOOK_CONFIG_GFX_DEFAULT_BGVIDEO_UV_FIX_VALUE,
"Fix stretched BG videos on newer GPUs. Might appear on Red and "
"newer");
"Fix stretched BG videos on newer GPUs. Might appear on SIRIUS "
"and older. On 9th and 10th style this issue may only affect "
"older BGAs (from 1st-3rd style)");
cconfig_util_set_bool(
config,

View File

@ -580,14 +580,14 @@ iidxhook_util_d3d9_iidx13_fix_song_select_bg(struct hook_d3d9_irp *irp)
}
static void
iidxhook_util_d3d9_iidx11_to_17_fix_uvs_bg_videos(struct hook_d3d9_irp *irp)
iidxhook_util_d3d9_iidx09_to_17_fix_uvs_bg_videos(struct hook_d3d9_irp *irp)
{
log_assert(irp);
log_assert(irp->op == HOOK_D3D9_IRP_OP_DEV_DRAW_PRIMITIVE_UP);
/* same code taken from the d3d8 module. but, this just fixes the quad
seam issue as there are no reports of streched bg videos */
if (iidxhook_util_d3d9_config.iidx11_to_17_fix_uvs_bg_videos &&
if (iidxhook_util_d3d9_config.iidx09_to_17_fix_uvs_bg_videos &&
irp->args.dev_draw_primitive_up.primitive_type == D3DPT_TRIANGLEFAN &&
irp->args.dev_draw_primitive_up.primitive_count == 2 &&
irp->args.dev_draw_primitive_up.stride == 28) {
@ -632,52 +632,100 @@ iidxhook_util_d3d9_iidx11_to_17_fix_uvs_bg_videos(struct hook_d3d9_irp *irp)
/* different versions have different themes and position the bg
video on slightly different positions (good job...) */
if (/* single */
((vertices[0].x >= 164.0f && vertices[0].x <= 168.0f &&
iidxhook_util_d3d9_float_equal(vertices[0].y, 0.0f, 0.1f)) &&
(vertices[1].x >= 472.0f && vertices[1].x <= 476.0f &&
iidxhook_util_d3d9_float_equal(vertices[1].y, 0.0f, 0.1f)) &&
(vertices[2].x >= 472.0f && vertices[2].x <= 476.0f &&
(vertices[0].x >= 164.0f && vertices[0].x <= 168.0f &&
iidxhook_util_d3d9_float_equal(vertices[0].y, 0.0f, 0.1f) &&
vertices[1].x >= 472.0f && vertices[1].x <= 476.1f &&
iidxhook_util_d3d9_float_equal(vertices[1].y, 0.0f, 0.1f) &&
vertices[2].x >= 472.0f && vertices[2].x <= 476.1f &&
((iidxhook_util_d3d9_float_equal(
vertices[2].y, 415.0f, 0.1f)) ||
iidxhook_util_d3d9_float_equal(
vertices[2].y, 416.0f, 0.1f)) &&
(vertices[3].x >= 164.0f && vertices[3].x <= 168.0f &&
iidxhook_util_d3d9_float_equal(
vertices[3].y, 416.0f, 0.1f))) ||
vertices[3].x >= 164.0f && vertices[3].x <= 168.0f &&
((iidxhook_util_d3d9_float_equal(
vertices[3].y, 415.0f, 0.1f)) ||
(iidxhook_util_d3d9_float_equal(
vertices[3].y, 416.0f, 0.1f)))) ||
/* double top left */
((iidxhook_util_d3d9_float_equal(vertices[0].x, 6.0f, 0.1f) &&
vertices[0].y >= 24.0f && vertices[0].y <= 28.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 147.0f, 0.1f) &&
vertices[1].y >= 24.0f && vertices[1].y <= 28.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 147.0f, 0.1f) &&
vertices[2].y >= 212.0f && vertices[2].y <= 216.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[3].x, 6.0f, 0.1f) &&
vertices[3].y >= 212.0f && vertices[3].y <= 216.0f)) ||
((iidxhook_util_d3d9_float_equal(vertices[0].x, 6.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[0].x, 11.0f, 0.1f)) &&
vertices[0].y >= 23.9f && vertices[0].y <= 28.0f &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 137.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(
vertices[1].x, 147.0f, 0.1f)) &&
vertices[1].y >= 23.9f && vertices[1].y <= 28.0f &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 137.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(
vertices[2].x, 147.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].y, 192.0f, 0.1f) ||
(vertices[2].y >= 212.0f && vertices[2].y <= 216.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].x, 6.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[3].x, 11.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].y, 192.0f, 0.1f) ||
(vertices[3].y >= 212.0f && vertices[3].y <= 216.0f))) ||
/* double bottom left */
((iidxhook_util_d3d9_float_equal(vertices[0].x, 6.0f, 0.1f) &&
vertices[0].y >= 216.0f && vertices[0].y <= 220.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 147.0f, 0.1f) &&
vertices[1].y >= 216.0f && vertices[1].y <= 220.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 147.0f, 0.1) &&
vertices[2].y >= 404.0f && vertices[2].y <= 408.0f) &&
(iidxhook_util_d3d9_float_equal(vertices[3].x, 6.0f, 0.1f) &&
vertices[3].y >= 404.0f && vertices[3].y <= 408.0f)) ||
((iidxhook_util_d3d9_float_equal(vertices[0].x, 6.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[0].x, 11.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[0].y, 200.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[0].y, 206.0f, 0.1f) ||
(vertices[0].y >= 216.0f && vertices[0].y <= 220.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 137.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(
vertices[1].x, 147.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[1].y, 200.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[1].y, 206.0f, 0.1f) ||
(vertices[1].y >= 216.0f && vertices[1].y <= 220.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 137.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(
vertices[2].x, 147.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].y, 368.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[2].y, 394.0f, 0.1f) ||
(vertices[2].y >= 404.0f && vertices[2].y <= 408.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].x, 6.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[3].x, 11.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].y, 368.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[3].y, 394.0f, 0.1f) ||
(vertices[3].y >= 404.0f && vertices[3].y <= 408.0f))) ||
/* double top right */
((vertices[0].x >= 493.0f && vertices[0].x <= 494.0f &&
vertices[0].y >= 24.0f && vertices[0].y <= 28.0f) &&
(vertices[1].x >= 634.0f && vertices[1].x <= 635.0f &&
vertices[1].y >= 24.0f && vertices[1].y <= 28.0f) &&
(vertices[2].x >= 634.0f && vertices[2].x <= 635.0f &&
vertices[2].y >= 212.0f && vertices[2].y <= 216.0f) &&
(vertices[3].x >= 493.0f && vertices[3].x <= 494.0f &&
vertices[3].y >= 212.0f && vertices[3].y <= 216.0f)) ||
(((vertices[0].x >= 493.0f && vertices[0].x <= 494.0f) ||
iidxhook_util_d3d9_float_equal(
vertices[0].x, 500.0f, 0.1f)) &&
vertices[0].y >= 23.9f && vertices[0].y <= 28.0f &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 626.0f, 0.1f) ||
(vertices[1].x >= 634.0f && vertices[1].x <= 635.0f)) &&
vertices[1].y >= 23.9f && vertices[1].y <= 28.0f &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 626.0f, 0.1f) ||
(vertices[2].x >= 634.0f && vertices[2].x <= 635.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].y, 192.0f, 0.1f) ||
(vertices[2].y >= 212.0f && vertices[2].y <= 216.0f)) &&
((vertices[3].x >= 493.0f && vertices[3].x <= 494.0f) ||
iidxhook_util_d3d9_float_equal(
vertices[3].x, 500.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].y, 192.0f, 0.1f) ||
(vertices[3].y >= 212.0f && vertices[3].y <= 216.0f))) ||
/* double bottom right */
((vertices[0].x >= 493.0f && vertices[0].x <= 494.0f &&
vertices[0].y >= 216.0f && vertices[0].y <= 220.0f) &&
(vertices[1].x >= 634.0f && vertices[1].x <= 635.0f &&
vertices[1].y >= 216.0f && vertices[1].y <= 220.0f) &&
(vertices[2].x >= 634.0f && vertices[2].x <= 635.0f &&
vertices[2].y >= 404.0f && vertices[2].y <= 408.0f) &&
(vertices[3].x >= 493.0f && vertices[3].x <= 494.0f &&
vertices[3].y >= 404.0f && vertices[3].y <= 408.0f))) {
(((vertices[0].x >= 493.0f && vertices[0].x <= 494.0f) ||
iidxhook_util_d3d9_float_equal(
vertices[0].x, 500.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[0].y, 200.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[0].y, 206.0f, 0.1f) ||
(vertices[0].y >= 216.0f && vertices[0].y <= 220.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[1].x, 626.0f, 0.1f) ||
(vertices[1].x >= 634.0f && vertices[1].x <= 635.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[1].y, 200.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[1].y, 206.0f, 0.1f) ||
(vertices[1].y >= 216.0f && vertices[1].y <= 220.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].x, 626.0f, 0.1f) ||
(vertices[2].x >= 634.0f && vertices[2].x <= 635.0f)) &&
(iidxhook_util_d3d9_float_equal(vertices[2].y, 368.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[2].y, 394.0f, 0.1f) ||
(vertices[2].y >= 404.0f && vertices[2].y <= 408.0f)) &&
((vertices[3].x >= 493.0f && vertices[3].x <= 494.0f) ||
iidxhook_util_d3d9_float_equal(
vertices[3].x, 500.0f, 0.1f)) &&
(iidxhook_util_d3d9_float_equal(vertices[3].y, 368.0f, 0.1f) ||
iidxhook_util_d3d9_float_equal(vertices[3].y, 394.0f, 0.1f) ||
(vertices[3].y >= 404.0f && vertices[3].y <= 408.0f)))) {
/* fix UVs
1.0f / 512 fixes the diagonal seam connecting the two
triangles which is visible on some GPUs (why? idk)
@ -695,7 +743,7 @@ iidxhook_util_d3d9_iidx11_to_17_fix_uvs_bg_videos(struct hook_d3d9_irp *irp)
}
static void
iidxhook_uti_d3d9_fix_iidx9_to_13_viewport_size(struct hook_d3d9_irp *irp)
iidxhook_uti_d3d9_fix_iidx09_to_13_viewport_size(struct hook_d3d9_irp *irp)
{
log_assert(irp);
log_assert(irp->op == HOOK_D3D9_IRP_OP_GET_CLIENT_RECT);
@ -967,7 +1015,7 @@ iidxhook_util_d3d9_log_config(const struct iidxhook_util_d3d9_config *config)
"pci_vid: %X\n"
"pci_pid: %X\n"
"iidx09_to_19_monitor_check_cb: %p\n"
"iidx11_to_17_fix_uvs_bg_videos: %d\n"
"iidx09_to_17_fix_uvs_bg_videos: %d\n"
"iidx12_fix_song_select_bg: %d\n"
"iidx13_fix_song_select_bg: %d\n"
"iidx14_to_19_nvidia_fix: %d\n"
@ -985,7 +1033,7 @@ iidxhook_util_d3d9_log_config(const struct iidxhook_util_d3d9_config *config)
config->pci_vid,
config->pci_pid,
config->iidx09_to_19_monitor_check_cb,
config->iidx11_to_17_fix_uvs_bg_videos,
config->iidx09_to_17_fix_uvs_bg_videos,
config->iidx12_fix_song_select_bg,
config->iidx13_fix_song_select_bg,
config->iidx14_to_19_nvidia_fix,
@ -1050,7 +1098,7 @@ void iidxhook_util_d3d9_init_config(struct iidxhook_util_d3d9_config *config)
config->pci_vid = 0;
config->pci_pid = 0;
config->iidx09_to_19_monitor_check_cb = NULL;
config->iidx11_to_17_fix_uvs_bg_videos = false;
config->iidx09_to_17_fix_uvs_bg_videos = false;
config->iidx12_fix_song_select_bg = false;
config->iidx13_fix_song_select_bg = false;
config->iidx14_to_19_nvidia_fix = false;
@ -1109,7 +1157,7 @@ iidxhook_util_d3d9_irp_handler(struct hook_d3d9_irp *irp)
hr = hook_d3d9_irp_invoke_next(irp);
if (hr == S_OK) {
iidxhook_uti_d3d9_fix_iidx9_to_13_viewport_size(irp);
iidxhook_uti_d3d9_fix_iidx09_to_13_viewport_size(irp);
}
return hr;
@ -1161,7 +1209,7 @@ iidxhook_util_d3d9_irp_handler(struct hook_d3d9_irp *irp)
return hook_d3d9_irp_invoke_next(irp);
case HOOK_D3D9_IRP_OP_DEV_DRAW_PRIMITIVE_UP:
iidxhook_util_d3d9_iidx11_to_17_fix_uvs_bg_videos(irp);
iidxhook_util_d3d9_iidx09_to_17_fix_uvs_bg_videos(irp);
return hook_d3d9_irp_invoke_next(irp);

View File

@ -102,7 +102,7 @@ struct iidxhook_util_d3d9_config {
* the background videos or seeing a quad seam (see implementation for
* further details).
*/
bool iidx11_to_17_fix_uvs_bg_videos;
bool iidx09_to_17_fix_uvs_bg_videos;
/**
* Ported from d3d8 module to enable this when using d3d8to9.

View File

@ -87,7 +87,7 @@ static void iidxhook1_setup_d3d9_hooks(
d3d9_config.framerate_limit = config_gfx->frame_rate_limit;
d3d9_config.iidx12_fix_song_select_bg =
config_iidxhook1->happy_sky_ms_bg_fix;
d3d9_config.iidx11_to_17_fix_uvs_bg_videos = config_gfx->bgvideo_uv_fix;
d3d9_config.iidx09_to_17_fix_uvs_bg_videos = config_gfx->bgvideo_uv_fix;
d3d9_config.scale_back_buffer_width = config_gfx->scale_back_buffer_width;
d3d9_config.scale_back_buffer_height = config_gfx->scale_back_buffer_height;
d3d9_config.scale_back_buffer_filter = config_gfx->scale_back_buffer_filter;

View File

@ -84,7 +84,7 @@ static void iidxhook2_setup_d3d9_hooks(
d3d9_config.framerate_limit = config_gfx->frame_rate_limit;
d3d9_config.iidx13_fix_song_select_bg =
config_iidxhook2->distorted_ms_bg_fix;
d3d9_config.iidx11_to_17_fix_uvs_bg_videos = config_gfx->bgvideo_uv_fix;
d3d9_config.iidx09_to_17_fix_uvs_bg_videos = config_gfx->bgvideo_uv_fix;
d3d9_config.scale_back_buffer_width = config_gfx->scale_back_buffer_width;
d3d9_config.scale_back_buffer_height = config_gfx->scale_back_buffer_height;
d3d9_config.scale_back_buffer_filter = config_gfx->scale_back_buffer_filter;

View File

@ -80,7 +80,7 @@ iidxhook3_setup_d3d9_hooks(const struct iidxhook_config_gfx *config_gfx)
d3d9_config.pci_pid = config_gfx->pci_id_pid;
/* Required for GOLD (and newer?) to not crash with NVIDIA cards */
d3d9_config.iidx11_to_17_fix_uvs_bg_videos = true;
d3d9_config.iidx09_to_17_fix_uvs_bg_videos = true;
d3d9_config.iidx14_to_19_nvidia_fix = true;
d3d9_config.scale_back_buffer_width = config_gfx->scale_back_buffer_width;