Changeset 95023 in vbox for trunk/src/VBox/Devices/Graphics/DevVGA-SVGA3d-win-dx.cpp
- Timestamp:
- May 16, 2022 3:17:36 PM (3 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Devices/Graphics/DevVGA-SVGA3d-win-dx.cpp
r95022 r95023 947 947 RT_NOREF(pBackend); 948 948 949 if (pDevice->pImmediateContext)950 {951 dxDeviceFlush(pDevice); /* Make sure that any pending draw calls are finished. */952 pDevice->pImmediateContext->ClearState();953 }954 955 949 D3D_RELEASE(pDevice->pStagingBuffer); 956 950 … … 5002 4996 VMSVGA3DBACKENDDXCONTEXT *pBackendDXContext = pDXContext->pBackendDXContext; 5003 4997 4998 if (pBackendDXContext->dxDevice.pImmediateContext) 4999 dxDeviceFlush(&pBackendDXContext->dxDevice); /* Make sure that any pending draw calls are finished. */ 5000 5004 5001 if (pBackendDXContext->paRenderTargetView) 5005 5002 { … … 5386 5383 5387 5384 /* Make sure that the shader resource views exist. */ 5388 for (uint32_t idxShaderState = 0; idxShaderState < SVGA3D_NUM_SHADERTYPE _DX10 /** @todo SVGA3D_NUM_SHADERTYPE*/; ++idxShaderState)5385 for (uint32_t idxShaderState = 0; idxShaderState < SVGA3D_NUM_SHADERTYPE; ++idxShaderState) 5389 5386 { 5390 5387 for (uint32_t idxSR = 0; idxSR < SVGA3D_DX_MAX_SRVIEWS; ++idxSR) … … 5593 5590 */ 5594 5591 5595 for (uint32_t idxShaderState = 0; idxShaderState < SVGA3D_NUM_SHADERTYPE _DX10 /** @todo SVGA3D_NUM_SHADERTYPE*/; ++idxShaderState)5592 for (uint32_t idxShaderState = 0; idxShaderState < SVGA3D_NUM_SHADERTYPE; ++idxShaderState) 5596 5593 { 5597 5594 DXSHADER *pDXShader; … … 5605 5602 { 5606 5603 /* Create a new shader. */ 5607 Log(("Shader: cid=%u shid=%u type=%d \n", pDXContext->cid, shaderId, pDXShader->enmShaderType));5604 Log(("Shader: cid=%u shid=%u type=%d, GuestSignatures %d\n", pDXContext->cid, shaderId, pDXShader->enmShaderType, pDXShader->shaderInfo.fGuestSignatures)); 5608 5605 5609 5606 /* Apply resource types to a pixel shader. */ … … 6280 6277 } 6281 6278 6279 UINT NumRTVs = 0; 6282 6280 ID3D11RenderTargetView *apRenderTargetViews[SVGA3D_MAX_RENDER_TARGETS]; 6283 6281 RT_ZERO(apRenderTargetViews); … … 6289 6287 ASSERT_GUEST_RETURN(renderTargetViewId < pDXContext->pBackendDXContext->cRenderTargetView, VERR_INVALID_PARAMETER); 6290 6288 apRenderTargetViews[i] = pDXContext->pBackendDXContext->paRenderTargetView[renderTargetViewId].u.pRenderTargetView; 6289 ++NumRTVs; 6291 6290 } 6292 6291 } … … 6297 6296 pDepthStencilView = pDXContext->pBackendDXContext->paDepthStencilView[depthStencilViewId].u.pDepthStencilView; 6298 6297 6299 pDevice->pImmediateContext->OMSetRenderTargets (pDXContext->cRenderTargets,6298 pDevice->pImmediateContext->OMSetRenderTargetsAndUnorderedAccessViews(NumRTVs, 6300 6299 apRenderTargetViews, 6301 pDepthStencilView); 6302 // Assert(NumUAVs == 0); 6303 if (NumUAVs != 0) 6304 pDevice->pImmediateContext->OMSetRenderTargetsAndUnorderedAccessViews(D3D11_KEEP_RENDER_TARGETS_AND_DEPTH_STENCIL, 6305 NULL, 6306 NULL, 6307 pDXContext->svgaDXContext.uavSpliceIndex, 6308 NumUAVs, 6309 apUnorderedAccessViews, 6310 aUAVInitialCounts); 6300 pDepthStencilView, 6301 NumRTVs /*pDXContext->svgaDXContext.uavSpliceIndex*/, 6302 NumUAVs, 6303 apUnorderedAccessViews, 6304 aUAVInitialCounts); 6311 6305 return VINF_SUCCESS; 6312 6306 }
Note:
See TracChangeset
for help on using the changeset viewer.