DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 인터페이스 IDirect3DDevice9 SetDepthStencilSurface [목차열람] [주소복사] [슬롯비우기] |
Microsoft DirectX 9.0 |
스텐실 표면을 설정한다.
구문
HRESULT SetDepthStencilSurface(
IDirect3DSurface9 *pZStencilSurface );
파라미터
- pZStencilSurface
- [in] 스텐실 표면을 나타내는 IDirect3DSurface9 인터페이스의 포인터 주소. NULL 로 설정 하면, 스텐실의 처리가 무효가 되어, 이전의 스텐실 버퍼가 릴리즈 된다.
반환값
성공했을 경우는,D3D_OK 를 돌려준다.
pZStencilSurface 가 NULL 이외의 경우, 스텐실 표면이 무효인 때로는 D3DERR_INVALIDCALL 를 돌려준다.
주의
이 메서드의 사용에 관한 제약을 다음에 나타낸다.
- 렌더링 타겟과 스텐실 표면은, 멀티 샘플링 타입이 같지 않으면 안 된다.
- 렌더링 타겟과 스텐실 표면은, 포맷이 호환이 아니면 안된다. 「IDirect3D9::CheckDepthStencilMatch 」를 참조할것.
- 스텐실 표면의 사이즈는, 렌더링 타겟의 사이즈 이상이 아니면 안된다.
이러한 제약은, 디버그 런타임 사용시에만 IDirect3DDevice9 의 Draw 메서드를 호출했을 때에 검증된다.
큐브 텍스처는, 표면의 집합인 점이 다른 표면와 다르다. 큐브 텍스처를 지정해 IDirect3DDevice9::SetDepthStencilSurface 를 호출하려면 ,IDirect3DCubeTexture9::GetCubeMapSurface 를 사용해 각각의 면을 선택해, 결과 표면을 IDirect3DDevice9::SetDepthStencilSurface 에 건네줄 필요가 있다.
참조
IDirect3DDevice9::GetDepthStencilSurface