Changeset 70051 in vbox
- Timestamp:
- Dec 10, 2017 8:02:31 PM (7 years ago)
- Location:
- trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm
- Files:
-
- 3 edited
-
VBoxD3DIf.h (modified) (2 diffs)
-
VBoxDispD3D.cpp (modified) (4 diffs)
-
VBoxDispD3D.h (modified) (2 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxD3DIf.h
r69976 r70051 130 130 #endif 131 131 132 HRESULT hr = VBoxD3DIfDeviceCreateDummy(pDevice);132 HRESULT hr = pDevice->pfnCreateDirect3DDevice(pDevice); 133 133 Assert(hr == S_OK); NOREF(hr); 134 134 Assert(pDevice->pDevice9If); … … 136 136 } 137 137 138 #define VBOXDISPMODE_IS_3D(_p) ( !!((_p)->D3D.pD3D9If))138 #define VBOXDISPMODE_IS_3D(_p) ((_p)->f3D) 139 139 #ifdef VBOXDISP_EARLYCREATEDEVICE 140 140 #define VBOXDISP_D3DEV(_p) (_p)->pDevice9If -
trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispD3D.cpp
r69976 r70051 61 61 void postProcess() 62 62 { 63 if (m_pDevice->pDevice9If )63 if (m_pDevice->pDevice9If && m_pDevice->pAdapter->D3D.D3D.pfnVBoxWineExD3DDev9Finish) 64 64 m_pDevice->pAdapter->D3D.D3D.pfnVBoxWineExD3DDev9Finish((IDirect3DDevice9Ex *)m_pDevice->pDevice9If); 65 65 } … … 5881 5881 * Release may not work in case of some leaking, which will leave the crOgl context refering the destroyed VBOXUHGSMI */ 5882 5882 if (pDevice->pDevice9If) 5883 pDevice->pAdapter->D3D.D3D.pfnVBoxWineExD3DDev9Term((IDirect3DDevice9Ex *)pDevice->pDevice9If); 5883 { 5884 if (pDevice->pAdapter->D3D.D3D.pfnVBoxWineExD3DDev9Term) 5885 pDevice->pAdapter->D3D.D3D.pfnVBoxWineExD3DDev9Term((IDirect3DDevice9Ex *)pDevice->pDevice9If); 5886 } 5884 5887 } 5885 5888 … … 6302 6305 { 6303 6306 pDevice->cRTs = pAdapter->D3D.cMaxSimRTs; 6307 pDevice->pfnCreateDirect3DDevice = VBoxD3DIfDeviceCreateDummy; 6304 6308 pDevice->hDevice = pCreateData->hDevice; 6305 6309 pDevice->pAdapter = pAdapter; … … 6704 6708 } 6705 6709 } while (0); 6710 6711 /* Flag indicating that the adapter instance is running in 3D mode. */ 6712 pAdapter->f3D = (pAdapter->D3D.pD3D9If != NULL); 6706 6713 } 6707 6714 #ifdef VBOX_WITH_VIDEOHWACCEL -
trunk/src/VBox/Additions/WINNT/Graphics/Video/disp/wddm/VBoxDispD3D.h
r69500 r70051 79 79 VBOXWDDMDISP_FORMATS Formats; 80 80 uint32_t u32VBox3DCaps; 81 bool f3D; 81 82 #ifdef VBOX_WDDMDISP_WITH_PROFILE 82 83 VBoxDispProfileFpsCounter ProfileDdiFps; … … 180 181 } VBOXWDDMDISP_SWAPCHAIN, *PVBOXWDDMDISP_SWAPCHAIN; 181 182 183 typedef HRESULT FNVBOXWDDMCREATEDIRECT3DDEVICE(PVBOXWDDMDISP_DEVICE pDevice); 184 typedef FNVBOXWDDMCREATEDIRECT3DDEVICE *PFNVBOXWDDMCREATEDIRECT3DDEVICE; 185 182 186 typedef struct VBOXWDDMDISP_DEVICE 183 187 { 184 188 HANDLE hDevice; 185 189 PVBOXWDDMDISP_ADAPTER pAdapter; 190 PFNVBOXWDDMCREATEDIRECT3DDEVICE pfnCreateDirect3DDevice; 186 191 IDirect3DDevice9 *pDevice9If; 187 192 RTLISTANCHOR SwapchainList;
Note:
See TracChangeset
for help on using the changeset viewer.

