다음을 통해 공유


IDirect3DDevice9::BeginScene 메서드(d3d9.h)

장면을 시작합니다.

구문

HRESULT BeginScene();

반환 값

형식: HRESULT

메서드가 성공하면 반환 값이 D3D_OK. IDirect3DDevice9::BeginScene이미 IDirect3DDevice9::BeginScene IDirect3DDevice9::EndScene/ 쌍에 있는 동안 호출되면 메서드가 D3DERR_INVALIDCALL 실패합니다. 이 문제는 IDirect3DDevice9::EndScene 을 처음 호출하지 않고 IDirect3DDevice9::EndScene을 두 번 호출하는 경우에만 발생합니다.

설명

애플리케이션은 렌더링을 수행하기 전에 IDirect3DDevice9::BeginScene 을 호출해야 하며 렌더링이 완료되면 IDirect3DDevice9::BeginScene 을 다시 호출하기 전에 IDirect3DDevice9::EndScene 을 호출해야 합니다.

IDirect3DDevice9::BeginScene이 실패하면 디바이스가 장면을 시작할 수 없으며 IDirect3DDevice9::EndScene을 호출할 필요가 없습니다. 실제로 이전 IDirect3DDevice9::BeginScene 이 실패하면 IDirect3DDevice9::EndScene 에 대한 호출이 실패합니다. 이는 여러 스왑 체인을 만드는 모든 애플리케이션에 적용됩니다.

표시할 연속 호출 간에 하나의 IDirect3DDevice9::BeginScene/IDirect3DDevice9::EndScene 쌍이 있어야 합니다( IDirect3DDevice9::P resent 또는 IDirect3DSwapChain9::P resent). 렌더링을 수행하기 전에 IDirect3DDevice9::BeginScene을 한 번 호출해야 하며 프레임에 대한 모든 렌더링이 런타임에 제출된 후 IDirect3DDevice9::EndScene을 한 번 호출해야 합니다. 중첩되지 않은 여러 IDirect3DDevice9::BeginScene/IDirect3DDevice9::EndScene 쌍은 현재 호출 간에 합법적이지만 둘 이상의 쌍이 있으면 성능이 저하될 수 있습니다. CPU와 그래픽 가속기 간에 최대 병렬 처리를 사용하도록 설정하려면 IDirect3DDevice9::EndScene 을 가능한 한 호출하기 전에 호출하는 것이 유리합니다.

요구 사항

요구 사항
대상 플랫폼 Windows
헤더 d3d9.h(D3D9.h 포함)
라이브러리 D3D9.lib

추가 정보

IDirect3DDevice9