MCPcopy Create free account
hub / github.com/beefytech/Beef / Resized

Method Resized

BeefySysLib/platform/win/DXRenderDevice.cpp:1755–1802  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1753}
1754
1755void DXRenderWindow::Resized()
1756{
1757 mRenderDevice->mResizeCount++;
1758 mResizeNum = mRenderDevice->mResizeCount;
1759
1760 RECT rect;
1761 GetClientRect(mHWnd, &rect);
1762
1763 if (rect.right <= rect.left)
1764 return;
1765
1766 mWidth = rect.right - rect.left;
1767 mHeight = rect.bottom - rect.top;
1768
1769 if (mDXSwapChain != NULL)
1770 {
1771 mD3DBackBuffer->Release();
1772 mD3DDepthBuffer->Release();
1773 mD3DRenderTargetView->Release();
1774 mD3DDepthStencilView->Release();
1775
1776 CheckDXResult(mDXSwapChain->ResizeBuffers(0, mWidth, mHeight, DXGI_FORMAT_UNKNOWN,
1777 DXGI_SWAP_CHAIN_FLAG_ALLOW_MODE_SWITCH /*| DXGI_SWAP_CHAIN_FLAG_FRAME_LATENCY_WAITABLE_OBJECT*/));
1778
1779 D3D11_TEXTURE2D_DESC descDepth;
1780 ZeroMemory(&descDepth, sizeof(descDepth));
1781 descDepth.Width = mWidth;
1782 descDepth.Height = mHeight;
1783 descDepth.MipLevels = 1;
1784 descDepth.ArraySize = 1;
1785 descDepth.Format = DXGI_FORMAT_D24_UNORM_S8_UINT;
1786 descDepth.SampleDesc.Count = 1;
1787 descDepth.SampleDesc.Quality = 0;
1788 descDepth.Usage = D3D11_USAGE_DEFAULT;
1789 descDepth.BindFlags = D3D11_BIND_DEPTH_STENCIL;
1790 descDepth.CPUAccessFlags = 0;
1791 descDepth.MiscFlags = 0;
1792 mDXRenderDevice->mD3DDevice->CreateTexture2D(&descDepth, NULL, &mD3DDepthBuffer);
1793
1794 CheckDXResult(mDXSwapChain->GetBuffer(0, __uuidof(ID3D11Texture2D), (LPVOID*)&mD3DBackBuffer));
1795 CheckDXResult(mDXRenderDevice->mD3DDevice->CreateRenderTargetView(mD3DBackBuffer, NULL, &mD3DRenderTargetView));
1796 CheckDXResult(mDXRenderDevice->mD3DDevice->CreateDepthStencilView(mD3DDepthBuffer, NULL, &mD3DDepthStencilView));
1797
1798 /*if (mRenderDevice->mCurRenderTarget == this)
1799 mRenderDevice->mCurRenderTarget = NULL;
1800 PhysSetAsTarget();*/
1801 }
1802}
1803
1804void DXRenderWindow::Present()
1805{

Callers 3

WindowProcMethod · 0.45
SetMinimumSizeMethod · 0.45
ResizeMethod · 0.45

Calls 1

ReleaseMethod · 0.45

Tested by

no test coverage detected