다음을 통해 공유


IDXGIFactory2::CreateSwapChainForHwnd 메서드(dxgi1_2.h)

HWND 핸들과 연결된 스왑 체인을 스왑 체인의 출력 창에 만듭니다.

구문

HRESULT CreateSwapChainForHwnd(
  [in]           IUnknown                              *pDevice,
  [in]           HWND                                  hWnd,
  [in]           const DXGI_SWAP_CHAIN_DESC1           *pDesc,
  [in, optional] const DXGI_SWAP_CHAIN_FULLSCREEN_DESC *pFullscreenDesc,
  [in, optional] IDXGIOutput                           *pRestrictToOutput,
  [out]          IDXGISwapChain1                       **ppSwapChain
);

매개 변수

[in] pDevice

Direct3D 11 및 이전 버전의 Direct3D의 경우 스왑 체인용 Direct3D 디바이스에 대한 포인터입니다. Direct3D 12의 경우 직접 명령 큐에 대한 포인터입니다( ID3D12CommandQueue 참조). 이 매개 변수는 NULL일 수 없습니다.

[in] hWnd

CreateSwapChainForHwnd에서 만드는 스왑 체인과 연결된 HWND 핸들입니다. 이 매개 변수는 NULL일 수 없습니다.

[in] pDesc

스왑 체인 설명에 대한 DXGI_SWAP_CHAIN_DESC1 구조체에 대한 포인터입니다. 이 매개 변수는 NULL일 수 없습니다.

[in, optional] pFullscreenDesc

전체 화면 스왑 체인에 대한 설명을 위한 DXGI_SWAP_CHAIN_FULLSCREEN_DESC 구조체에 대한 포인터입니다. 필요에 따라 이 매개 변수를 설정하여 전체 화면 스왑 체인을 만들 수 있습니다. NULL로 설정하여 창이 있는 스왑 체인을 만듭니다.

[in, optional] pRestrictToOutput

콘텐츠를 제한할 출력의 IDXGIOutput 인터페이스에 대한 포인터입니다. 또한 IDXGISwapChain1::P resent1 호출에 DXGI_PRESENT_RESTRICT_TO_OUTPUT 플래그를 전달하여 콘텐츠가 다른 출력에 검은색으로 표시되도록 해야 합니다. 콘텐츠를 다른 출력으로 제한하려면 새 스왑 체인을 만들어야 합니다. 그러나 DXGI_PRESENT_RESTRICT_TO_OUTPUT 플래그에 따라 콘텐츠를 조건부로 제한할 수 있습니다.

콘텐츠를 출력 대상으로 제한하지 않으려면 이 매개 변수를 NULL 로 설정합니다.

[out] ppSwapChain

CreateSwapChainForHwnd가 만드는 스왑 체인에 대한 IDXGISwapChain1 인터페이스에 대한 포인터를 수신하는 변수에 대한 포인터입니다.

반환 값

CreateSwapChainForHwnd는 다음을 반환합니다.

  • 스왑 체인을 성공적으로 만들었는지 S_OK.
  • E_OUTOFMEMORY 메모리를 사용할 수 없는 경우 작업을 완료합니다.
  • 호출 애플리케이션이 잘못된 데이터를 제공한 경우(예: pDesc 또는 ppSwapChainNULL이거나 pDesc 데이터 멤버가 잘못된 경우)를 DXGI_ERROR_INVALID_CALL.
  • pDevice에 전달하는 디바이스 유형으로 정의된 DXGI_ERROR 항목에 설명된 다른 오류 코드일 수 있습니다.

Windows 7용 플랫폼 업데이트: windows 7용 플랫폼 업데이트 가 설치된 Windows 7 또는 Windows Server 2008 R2에서는 DXGI_SCALING_NONE 지원되지 않으며, 호출 시 CreateSwapChainForHwnd가 DXGI_ERROR_INVALID_CALL 반환합니다. Windows 7용 플랫폼 업데이트에 대한 자세한 내용은 Windows 7용 플랫폼 업데이트를 참조하세요.

설명

참고 Windows 스토어 앱에서는 이 메서드를 사용하지 마세요. 대신 IDXGIFactory2::CreateSwapChainForCoreWindow를 사용합니다.
 
스왑 체인의 너비, 높이 또는 둘 다(pDesc가 가리키는 DXGI_SWAP_CHAIN_DESC1WidthHeight 멤버)를 0으로 지정하면 런타임은 hWnd 매개 변수가 지정하는 출력 창에서 크기를 가져옵니다.

이후에 IDXGISwapChain1::GetDesc1 메서드를 호출하여 할당된 너비 또는 높이 값을 검색할 수 있습니다.

한 번에 하나의 플립 프레젠테이션 모델 스왑 체인을 HWND와 연결할 수 있으므로 개체 파기를 지연하는 Microsoft Direct3D 11 정책은 플립 프레젠테이션 모델 스왑 체인을 삭제하고 다른 스왑 체인으로 바꾸려고 하면 문제를 일으킬 수 있습니다. 이 상황에 대한 자세한 내용은 Flip 프레젠테이션 스왑 체인의 지연된 소멸 문제를 참조하세요.

스왑 체인의 백 버퍼에 대한 형식을 선택하는 방법에 대한 자세한 내용은 색 공간에 대한 데이터 변환을 참조하세요.

요구 사항

요구 사항
지원되는 최소 클라이언트 windows 7용 Windows 8 및 플랫폼 업데이트 [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2008 R2용 Windows Server 2012 및 플랫폼 업데이트 [데스크톱 앱만 해당]
대상 플랫폼 Windows
헤더 dxgi1_2.h
라이브러리 Dxgi.lib

추가 정보

최상의 성능을 위해 DXGI 대칭 이동 모델을 사용합니다.

IDXGIFactory2