DrawPrimitive
-
DrawPrimitive, DrawIndexedPrimitive, DrawPrimitiveUP, DrawIndexedPrimitiveUPPrograming/DirectX 2008. 1. 28. 13:46
1. DrawPrimitive DrawPrimitive 는 버텍스 버퍼를 이용해 Draw할때 쓰임. m_pD3DDevice->SetStreamSource( 0, pVB, 0, sizeof(CUSTOMVERTEX)); m_pD3DDevice->SetFVF( D3DFVF_CUSTOMVERTEX ); m_pD3DDevice->DrawPrimitive( D3DPT_TRIANGLELIST, 0, 2); 2. DrawIndexedPrimitive 인덱스 버퍼의 장점은 정점을 여러번 나열하는 메모리 소모량을 줄일수 있고 정점 캐시에 저장해서 높은 효율을 낼수 있다. 예를 들어서 사각형은 삼각형이 2개가 필요하다. 이걸 버텍스 버퍼를 이용해 그리게 되면 정점을 6개 선언해야하지만 사실 정점은 4개만 선언하고 그릴수 있..
-
버텍스 렌더링 하기Programing/DirectX 2008. 1. 26. 21:26
버텍스 버퍼를 만들고 렌더링을 하기 위하여 아래와 같은 3단계를 거쳐야 한다. 1. 정점 정보가 담겨 있는 정점 버퍼를 출력 스트림으로 할당 (SetStreamSource 메서드 사용) HRESULT SetStreamSource( UINT StreamNumber, IDirect3DVertexBuffer9 * pStreamData, UINT OffsetInBytes, UINT Stride ); StreamNumber : 버텍스 버퍼를 연결할 스트림 소스를 지정, 스트림을 사용하지 않을시에 0 pStreamData : 스트림과 연결하고자 하는 버텍스 버퍼로의 포인터 OffsetInBytes : 렌더링 파이프라인으로 공급될 버텍스 데이터의 시작을 지정하는 스트림의 시작 오프셋 보통 0 Stride : 스트림에..