本文整理汇总了C++中Window::GetHWnd方法的典型用法代码示例。如果您正苦于以下问题:C++ Window::GetHWnd方法的具体用法?C++ Window::GetHWnd怎么用?C++ Window::GetHWnd使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类Window
的用法示例。
在下文中一共展示了Window::GetHWnd方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: ReceiveCOM
SwapChain::SwapChain(Device& device, Window& window)
: device_(device),
window_(window)
{
MEMBER_LOG_STRING_TAG(L"SwapChain");
MEMBER_LOG << L"Initializing for window: " << window_.GetWindowProperties().name;
dxgiSwapChainDesc_.BufferDesc.Width = window.GetWindowProperties().dimensions.GetHeight();
dxgiSwapChainDesc_.BufferDesc.Height = window.GetWindowProperties().dimensions.GetWidth();
// TODO: Add custom refresh rate
dxgiSwapChainDesc_.BufferDesc.RefreshRate.Numerator = 0;
dxgiSwapChainDesc_.BufferDesc.RefreshRate.Denominator = 0;
// TODO: Add custom formatting
dxgiSwapChainDesc_.BufferDesc.Format = DXGI_FORMAT_R8G8B8A8_UNORM;
dxgiSwapChainDesc_.BufferDesc.ScanlineOrdering = DXGI_MODE_SCANLINE_ORDER_PROGRESSIVE;
dxgiSwapChainDesc_.BufferDesc.Scaling = DXGI_MODE_SCALING_UNSPECIFIED;
// TODO: Add multi sampling options
dxgiSwapChainDesc_.SampleDesc.Count = 1;
dxgiSwapChainDesc_.SampleDesc.Quality = 0;
dxgiSwapChainDesc_.BufferUsage = DXGI_USAGE_RENDER_TARGET_OUTPUT;
dxgiSwapChainDesc_.BufferCount = 2;
dxgiSwapChainDesc_.OutputWindow = window.GetHWnd();
// Set this to true now, change actual fullscreen state on resize
dxgiSwapChainDesc_.Windowed = TRUE;
dxgiSwapChainDesc_.SwapEffect = DXGI_SWAP_EFFECT_DISCARD;
dxgiSwapChainDesc_.Flags = 0;
e_throw_com_ret_error(device.GetDXGIFactory()
.CreateSwapChain(&device.GetD3DDevice(),
&dxgiSwapChainDesc_,
ReceiveCOM(dxgiSwapChain_)), "IDXGIFactory::CreateSwapChain");
// Finish setup in Resize
Resize(window.GetWindowProperties().dimensions);
}