DirectX Graphics 레퍼런스 Direct3D C/C++ 레퍼런스 인터페이스 IDirect3DDevice9 GetFrontBufferData   [목차열람] [주소복사] [슬롯비우기]
IDirect3DDevice9::GetFrontBufferData 메서드
 
Microsoft DirectX 9.0

IDirect3DDevice9::GetFrontBufferData 메서드


장치의 프론트 버퍼의 복사를 생성해, 애플리케이션이 제공하는 시스템 메모리 버퍼에 그 복사를 저장 한다.

구문

HRESULT GetFrontBufferData(      

    UINT iSwapChain,     IDirect3DSurface9 *pDestSurface );

파라미터

iSwapChain
[in] 스왑 체인을 지정하는 부호 없음 정수.
pDestSurface
[in] IDirect3DSurface9 인터페이스의 포인터. 프론트 버퍼의 내용의 복사를 받는다. 데이터는, 장치의 출력의 맨 위의 행으로부터 시작해 맨 밑의 행까지, 사이에 스페이스를 사이에 두지 않는 연속한 행으로 반환된다.

윈도우 모드의 경우, 목적지 표면의 사이즈는, 데스크탑의 사이즈가 아니면 안된다. 풀 스크린 모드의 경우, 목적지 표면의 사이즈는, 스크린의 사이즈가 아니면 안된다.

반환값

성공했을 경우는,D3D_OK 를 돌려준다.

실패했을 경우는, 다음의 몇개의 값을 돌려준다.

D3DERR_DEVICELOST장치는, 손실하고 있지만, 현재 리셋 할 수 없다. 따라서, 렌더링은 불가능하다.
D3DERR_INVALIDCALL메서드의 호출이 무효이다. 예를 들어, 메서드의 파라미터에 무효인 값이 설정되어 있는 경우 등이다.


주의

pDestSurface 로 나타나는 버퍼에는, 프론트 버퍼의 표시를 표준의 32bpp 포맷인 D3DFMT_A8R8G8B8 로 변환한 것이 저장 된다.

이 메서드는, 에일리어징 제거 된 screen shot를 캡춰 하는 유일한 방법이다.

이 함수는, 설계상 매우 저속이기 (위해)때문에, 퍼포먼스가 중요시되는 흐름 중(안)에서는 사용해야 하는 것이 아니다.

더 자세한 정보는, 「장치의 손실」을 참조할것.



© 2002 Microsoft Corporation. All rights reserved.
↑TOP