Hi All.
I'm using Direct3D11 with GDI compatible, but i have some artifacts on some new Intel GPU(530, 630)
For creating IDXGISwapChain with GDI compatible i use the following code:
DXGI_SWAP_CHAIN_DESC::Flags = DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH; DXGI_SWAP_CHAIN_DESC::BufferDesc.Format = DXGI_FORMAT_B8G8R8A8_UNORM;
//Rendering prevcode:
ID3D11Context->OMSetRenderTargets(....); //Draw 3D data normaly... IDXGISwapChain->GetBuffer(0, __uuidof(IDXGISurface1), reinterpret_cast<void **>(&pDXGISurface)); HDC dxgiHDC = 0; pDXGISurface->GetDC(FALSE, &dxgiHDC); //DrawText using GDI functions pDXGISurface->ReleaseDC(0); IDXGISwapChain::Present(0, 0);
Result o Intel HD 530, Intel HD 630:
Result on Intel HD 4000, Intel HD 4600, Any AMD/nVidia card:
What i do wrong ?