[wined3d] correct backbuffer and adaptor formats [bug3157]

classic Classic list List threaded Threaded
1 message Options
Reply | Threaded
Open this post in threaded view
|

[wined3d] correct backbuffer and adaptor formats [bug3157]

Oliver Stieber
Hi,
  This patch changes the way that 24bit and 32bit Adapter and Buffer formats
are reported allowing EVE online to get past the startup screen and allowing
the Fur demo (amongst others) to run in a window, as under windows, instead of in fullscreen
mode.

Oliver.


       
       
               
___________________________________________________________
Yahoo! Messenger - NEW crystal clear PC to PC calling worldwide with voicemail http://uk.messenger.yahoo.com
diff -X ignore -Nru clean/wine/dlls/wined3d/directx.c smallpatches/wine/dlls/wined3d/directx.c
--- clean/wine/dlls/wined3d/directx.c 2005-10-07 16:34:46.475718368 +0100
+++ smallpatches/wine/dlls/wined3d/directx.c 2005-10-11 15:34:27.464832680 +0100
@@ -826,8 +826,8 @@
                 switch (bpp) {
                 case  8: pMode->Format = D3DFMT_R3G3B2;   break;
                 case 16: pMode->Format = D3DFMT_R5G6B5;   break;
-                case 24: /* Robots needs 24 and 32 bit as X8R8G8B8 to start */
-                case 32: pMode->Format = D3DFMT_X8R8G8B8; break;
+                case 24: /* Robots and EVE Online need 24 and 32 bit as A8R8G8B8 to start */
+                case 32: pMode->Format = D3DFMT_A8R8G8B8; break;
                 default: pMode->Format = D3DFMT_UNKNOWN;
                 }
             } else {
@@ -886,7 +886,7 @@
         case  8: pMode->Format       = D3DFMT_R3G3B2;   break;
         case 16: pMode->Format       = D3DFMT_R5G6B5;   break;
         case 24: pMode->Format       = D3DFMT_X8R8G8B8; break; /* Robots needs 24bit to be X8R8G8B8 */
-        case 32: pMode->Format       = D3DFMT_A8R8G8B8; break;
+        case 32: pMode->Format       = D3DFMT_X8R8G8B8; break; /* EVE online and the Fur demo need 32bit AdapterDisplatMode to return X8R8G8B8 */
         default: pMode->Format       = D3DFMT_UNKNOWN;
         }