Rebase against bdaa571c5d7dd59dd28fd1f25cdad5761bfaf4dd.

This commit is contained in:
Sebastian Lackner
2015-08-25 22:44:50 +02:00
parent 574959b168
commit 5aa6e7afe4
36 changed files with 184 additions and 3124 deletions

View File

@@ -1,43 +1,38 @@
From 6e90ea5d3a677b1f073effab2eef34edc328075b Mon Sep 17 00:00:00 2001
From 20c5727bab6314d9d788f5b782cf8f5d1b6fc281 Mon Sep 17 00:00:00 2001
From: Austin English <austinenglish@gmail.com>
Date: Sat, 28 Feb 2015 00:34:07 +0100
Subject: wined3d: Allow to specify multisampling AA quality levels via
registry.
---
dlls/wined3d/directx.c | 11 +++++++++--
dlls/wined3d/directx.c | 7 ++++++-
dlls/wined3d/wined3d_main.c | 12 ++++++++++++
dlls/wined3d/wined3d_private.h | 1 +
3 files changed, 22 insertions(+), 2 deletions(-)
3 files changed, 19 insertions(+), 1 deletion(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 4ca13f4..94a2f7b 100644
index 019b415..b9eb03c 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -4231,9 +4231,16 @@ HRESULT CDECL wined3d_check_device_multisample_type(const struct wined3d *wined3
@@ -4404,7 +4404,12 @@ HRESULT CDECL wined3d_check_device_multisample_type(const struct wined3d *wined3
if (quality_levels)
{
- if (multisample_type == WINED3D_MULTISAMPLE_NON_MASKABLE)
- /* FIXME: This is probably wrong. */
+ if (wined3d_settings.msaa_quality_levels)
+ {
+ *quality_levels = wined3d_settings.msaa_quality_levels;
+ TRACE("Overriding MSAA quality levels to %i\n", *quality_levels);
+ }
+ else if (multisample_type == WINED3D_MULTISAMPLE_NON_MASKABLE)
+ {
*quality_levels = gl_info->limits.samples;
+ WARN("probably wrong, setting quality_levels to %d\n", *quality_levels);
+ }
else
*quality_levels = 1;
}
diff --git a/dlls/wined3d/wined3d_main.c b/dlls/wined3d/wined3d_main.c
index 758ba43..0bf6c9f 100644
index 0543d97..c985c2d 100644
--- a/dlls/wined3d/wined3d_main.c
+++ b/dlls/wined3d/wined3d_main.c
@@ -76,6 +76,7 @@ struct wined3d_settings wined3d_settings =
@@ -77,6 +77,7 @@ struct wined3d_settings wined3d_settings =
ORM_FBO, /* Use FBOs to do offscreen rendering */
PCI_VENDOR_NONE,/* PCI Vendor ID */
PCI_DEVICE_NONE,/* PCI Device ID */
@@ -45,7 +40,7 @@ index 758ba43..0bf6c9f 100644
0, /* The default of memory is set in init_driver_info */
NULL, /* No wine logo by default */
TRUE, /* Multisampling enabled by default. */
@@ -251,6 +252,17 @@ static BOOL wined3d_dll_init(HINSTANCE hInstDLL)
@@ -261,6 +262,17 @@ static BOOL wined3d_dll_init(HINSTANCE hInstDLL)
wined3d_settings.pci_vendor_id = pci_vendor_id;
}
}
@@ -64,10 +59,10 @@ index 758ba43..0bf6c9f 100644
{
int TmpVideoMemorySize = atoi(buffer);
diff --git a/dlls/wined3d/wined3d_private.h b/dlls/wined3d/wined3d_private.h
index b0c7a53..2f2511e 100644
index 7847557..9e39dd7 100644
--- a/dlls/wined3d/wined3d_private.h
+++ b/dlls/wined3d/wined3d_private.h
@@ -269,6 +269,7 @@ struct wined3d_settings
@@ -268,6 +268,7 @@ struct wined3d_settings
unsigned short pci_vendor_id;
unsigned short pci_device_id;
/* Memory tracking and object counting. */
@@ -76,5 +71,5 @@ index b0c7a53..2f2511e 100644
char *logo;
int allow_multisampling;
--
2.3.0
2.5.0