IDCompositionDevice2::CreateSurfaceFactory 메서드(dcomp.h)
다른 DirectComposition 표면 또는 가상 표면 개체를 만드는 데 사용할 수 있는 Microsoft DirectComposition Surface 팩터리 개체를 만듭니다.
구문
HRESULT CreateSurfaceFactory(
[in] IUnknown *renderingDevice,
[out] IDCompositionSurfaceFactory **surfaceFactory
);
매개 변수
[in] renderingDevice
DirectComposition 표면 개체를 만드는 데 사용할 DirectX 디바이스에 대한 포인터입니다. IDXGIDevice 또는 ID2D1Device 인터페이스를 구현하는 개체에 대한 포인터여야 합니다. 이 매개 변수는 NULL이 아니어야 합니다.
[out] surfaceFactory
새로 만든 Surface 팩터리 개체입니다. 이 매개 변수는 NULL이 아니어야 합니다.
반환 값
함수가 성공하면 S_OK를 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다. 오류 코드 목록은 DirectComposition 오류 코드를 참조하세요.
설명
Surface 팩터리를 사용하면 애플리케이션이 DirectComposition과 함께 둘 이상의 단일 DXGI 또는 Direct2D 디바이스를 동시에 사용할 수 있습니다. 각 Surface 팩터리는 하나의 DXGI 또는 Direct2D 디바이스와 영구적으로 연결되지만 DirectComposition 디바이스에는 표면 팩터리 수가 없을 수 있습니다.
각 Surface 팩터리는 다른 표면 팩터리와 독립적으로 리소스를 관리합니다. 특히 DirectComposition 풀은 표면 할당 및 할당 취소 비용을 완화하기 위해 할당을 표면화합니다. 이 풀은 표면별 팩터리 기준으로 수행됩니다.
DCompositionCreateDevice2 함수가 NULL이 아닌 renderingDevice 매개 변수를 사용하여 호출되는 경우 반환된 DirectComposition 디바이스 개체는 지정된 렌더링 디바이스와 연결된 커버 아래에 암시적 표면 팩터리를 가집니다. 이 암시적 표면 팩터리는 IDCompositionDevice::CreateSurface, IDCompositionDevice::CreateVirtualSurface, IDCompositionDevice2::CreateSurface 및 IDCompositionDevice2::CreateVirtualSurface 메서드를 서비스하는 데 사용됩니다.
응용 프로그램이 직접 참조를 보유하기 때문에 직접 또는 하나 이상의 이러한 표면이 하나 이상의 시각적 개체와 연결되어 있기 때문에 표면 개체가 생성된 표면이나 가상 표면이 활성 상태로 유지되는 한 표면 개체는 활성 상태로 유지됩니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8.1 [데스크톱 앱만 해당] |
지원되는 최소 서버 | R2 Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | dcomp.h |
라이브러리 | Dcomp.lib |
DLL | Dcomp.dll |