Index: /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp
===================================================================
--- /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp	(revision 71513)
+++ /trunk/src/VBox/Additions/WINNT/Graphics/Video/mp/wddm/VBoxMPWddm.cpp	(revision 71514)
@@ -814,10 +814,24 @@
     VBoxVidPnTargetsInit(pDevExt->aTargets, RT_ELEMENTS(pDevExt->aTargets), 0);
 
+    BOOLEAN f3DSupported = FALSE;
     uint32_t u32 = 0;
     if (VBoxVGACfgAvailable())
     {
+        VBoxVGACfgQuery(VBE_DISPI_CFG_ID_3D, &u32, 0);
+        f3DSupported = RT_BOOL(u32);
+
         VBoxVGACfgQuery(VBE_DISPI_CFG_ID_VMSVGA, &u32, 0);
     }
+
     pDevExt->enmHwType = u32 ? VBOX_HWTYPE_VMSVGA : VBOX_HWTYPE_CROGL;
+
+    if (pDevExt->enmHwType == VBOX_HWTYPE_CROGL)
+    {
+        pDevExt->f3DEnabled = VBoxMpCrCtlConIs3DSupported();
+    }
+    else
+    {
+        pDevExt->f3DEnabled = f3DSupported;
+    }
 }
 
@@ -1143,6 +1157,4 @@
             {
 #ifdef VBOX_WITH_CROGL
-                pDevExt->f3DEnabled = VBoxMpCrCtlConIs3DSupported();
-
                 if (pDevExt->f3DEnabled)
                 {
