]> git.cworth.org Git - apitrace-tests/blobdiff - apps/d3d8/tri.cpp
apps/d3d8: Be precise with window size and format.
[apitrace-tests] / apps / d3d8 / tri.cpp
index 156d0c5e800d8ded9f252a0dd1a769870d06a887..d0665a682cec9e45a64226dcbc72b6a8466fb70e 100644 (file)
@@ -100,26 +100,25 @@ int main(int argc, char *argv[])
        dwBehaviorFlags = D3DCREATE_HARDWARE_VERTEXPROCESSING;
     }
 
+    D3DDISPLAYMODE Mode;
+    hr = g_pD3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &Mode);
+    if (FAILED(hr)) {
+        return 1;
+    }
+
     ZeroMemory(&g_PresentationParameters, sizeof g_PresentationParameters);
     g_PresentationParameters.Windowed = Windowed;
-    if (!Windowed) {
+    if (Windowed) {
         g_PresentationParameters.BackBufferWidth = WindowWidth;
         g_PresentationParameters.BackBufferHeight = WindowHeight;
+    } else {
+        g_PresentationParameters.BackBufferWidth = Mode.Width;
+        g_PresentationParameters.BackBufferHeight = Mode.Height;
     }
+    g_PresentationParameters.BackBufferFormat = Mode.Format;
     g_PresentationParameters.BackBufferCount = 1;
     g_PresentationParameters.SwapEffect = D3DSWAPEFFECT_DISCARD;
-    if (Windowed) {
-        // Must matche the format of the current display mode
-        D3DDISPLAYMODE Mode;
-        hr = g_pD3D->GetAdapterDisplayMode(D3DADAPTER_DEFAULT, &Mode);
-        if (FAILED(hr)) {
-            g_pD3D->Release();
-            g_pD3D = NULL;
-            return 1;
-        }
-        g_PresentationParameters.BackBufferFormat = Mode.Format;
-    } else {
-        g_PresentationParameters.BackBufferFormat = D3DFMT_X8R8G8B8;
+    if (!Windowed) {
         g_PresentationParameters.FullScreen_PresentationInterval = D3DPRESENT_INTERVAL_IMMEDIATE;
     }
     g_PresentationParameters.hDeviceWindow = hWnd;