IDCompositionDevice::CreateSurface 메서드(dcomp.h)
컴퍼지션을 위해 하나 이상의 시각적 개체와 연결할 수 있는 업데이트 가능한 Surface 개체를 만듭니다.
구문
HRESULT CreateSurface(
[in] UINT width,
[in] UINT height,
[in] DXGI_FORMAT pixelFormat,
[in] DXGI_ALPHA_MODE alphaMode,
[out] IDCompositionSurface **surface
);
매개 변수
[in] width
형식: UINT
표면의 너비(픽셀)입니다.
[in] height
형식: UINT
표면의 높이(픽셀)입니다.
[in] pixelFormat
형식: DXGI_FORMAT
표면의 픽셀 형식입니다.
[in] alphaMode
형식: DXGI_ALPHA_MODE
알파 채널이 픽셀 형식에 포함된 경우 알파 채널의 형식입니다. 다음 값 중 하나일 수 있습니다.
값 | 의미 |
---|---|
DXGI_ALPHA_MODE_UNSPECIFIED | 알파 채널이 지정되지 않았습니다. 이 값은 DXGI_ALPHA_MODE_IGNORE 효과와 동일합니다. |
DXGI_ALPHA_MODE_PREMULTIPLIED | 색 채널에는 알파 채널로 미리 곱한 값이 포함됩니다. |
DXGI_ALPHA_MODE_IGNORE | 알파 채널은 무시되어야 하며 비트맵은 불투명하게 렌더링되어야 합니다. |
[out] surface
형식: IDCompositionSurface**
새로 만든 Surface 개체입니다. 이 매개 변수는 NULL이 아니어야 합니다.
반환 값
형식: HRESULT
함수가 성공하면 S_OK를 반환합니다. 그러지 않으면 HRESULT 오류 코드를 반환합니다. 오류 코드 목록은 DirectComposition 오류 코드를 참조하세요.
설명
Microsoft DirectComposition 표면은 컴퍼지션을 위해 시각적 개체와 연결할 수 있는 픽셀의 사각형 배열입니다.
새로 만든 Surface 개체가 초기화되지 않은 상태입니다. 초기화되지는 않았지만 표면은 시각적 트리의 컴퍼지션에 영향을 주지 않습니다. 100% 투명 픽셀이 있는 표면과 똑같이 동작합니다.
픽셀 데이터를 사용하여 표면을 초기화하려면 IDCompositionSurface::BeginDraw 메서드를 사용합니다. 이 메서드에 대한 첫 번째 호출은 모든 픽셀에 대한 초기 값을 제공하려면 전체 표면적을 포함해야 합니다. 후속 호출은 업데이트할 표면의 작은 하위 사각형을 지정할 수 있습니다.
DirectComposition 표면은 다음 픽셀 형식을 지원합니다.
- DXGI_FORMAT_B8G8R8A8_UNORM
- DXGI_FORMAT_R8G8B8A8_UNORM
- DXGI_FORMAT_R16G16B16A16_FLOAT
요구 사항
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | dcomp.h |
라이브러리 | Dcomp.lib |
DLL | Dcomp.dll |