Stefan Dösinger : wined3d: Enable the texcoord init workaround on radeon HD cards on MacOS.

Alexandre Julliard julliard at winehq.org
Tue Feb 19 08:05:30 CST 2008


Module: wine
Branch: master
Commit: f952419651bf15e5daef4362ea5c455b66cd3698
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=f952419651bf15e5daef4362ea5c455b66cd3698

Author: Stefan Dösinger <stefan at codeweavers.com>
Date:   Thu Feb 14 18:38:02 2008 +0100

wined3d: Enable the texcoord init workaround on radeon HD cards on MacOS.

---

 dlls/wined3d/directx.c |    8 +++++++-
 1 files changed, 7 insertions(+), 1 deletions(-)

diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index c9c3e68..c3afa7f 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -3024,8 +3024,14 @@ static void fixup_extensions(WineD3D_GL_Info *gl_info) {
          *
          * We don't want to enable this on all cards, as it adds an extra instruction per texcoord used. This
          * makes the shader slower and eats instruction slots which should be available to the d3d app.
+         *
+         * ATI Radeon HD 2xxx cards on MacOS have the issue. Instead of checking for the buggy cards blacklist
+         * all radeon cards on Macs but whitelist the good ones, that way we're prepared for the future. If
+         * this workaround is activated on cards that do not need it it won't break things, just affect
+         * performance negatively
          */
-        if(gl_info->gl_vendor == VENDOR_INTEL) {
+        if(gl_info->gl_vendor == VENDOR_INTEL ||
+           (gl_info->gl_vendor == VENDOR_ATI && gl_info->gl_card != CARD_ATI_RADEON_X1600)) {
             TRACE("Enabling vertex texture coord fixes in vertex shaders\n");
             gl_info->set_texcoord_w = TRUE;
         }




More information about the wine-cvs mailing list