DirectX Graphics 프로그래밍 가이드 Direct3D 의 기초지식 장치 장치로 지원 되는 기본도형의 종류 삼각형 스트립   [목차열람] [주소복사] [슬롯비우기]
삼각형 스트립
 
Microsoft DirectX 9.0

삼각형 스트립


삼각형 스트립이란, 일련의 결합된 삼각형이다. 삼각형은 결합되고 있기 (위해)때문에, 각 삼각형에 대해서 3 개의 정점 모든 것을 애플리케이션으로 반복해 지정할 필요는 없다. 예를 들어, 다음의 삼각형 스트립을 정의하는 경우, 필요한 것은 7 개의 정점 뿐이다.

삼각형 스트립

시스템에서는, 정점의 v1, v2, v3 를 사용해 최초의 삼각형을, v2, v4, v3 를 사용해 2 번째의 삼각형을, v3, v4, v5 를 사용해 3 번째의 삼각형을, v4, v6, v5 를 사용해 4 번째의 삼각형을, 이라고 하는 순서로 드로잉(Drawing) 해 나간다. 2 번째와 4 번째의 삼각형의 정점이 순서 대로가 아닌 것에 주의한다. 이것은, 모든 삼각형이 시계회전의 방향으로 드로잉(Drawing) 되는 것을 보증하기 위해서 필요하다.

3D 장면의 대부분의 개체는 삼각형 스트립으로 구성되어 있다. 이것은, 삼각형 스트립을 사용해 복잡한 개체를 지정 하면, 메모리를 효율적으로 이용해 처리 시간을 단축할 수 있기 때문이다.

다음 그림은 렌더링 되는 삼각형 스트립을 나타내고 있다.

렌더링 된 삼각형 스트립

다음 코드는, 삼각형 스트립에 대해서 정점을 생성 하는 방법을 나타내고 있다.

struct CUSTOMVERTEX
{
    float x, y, z;
};

CUSTOMVERTEX Vertices[] = 
{
    {-5. 0, -5. 0, 0.0},
    { 0.0,  5.0, 0.0},
    { 5.0, -5. 0, 0.0},
    {10.0,  5.0, 0.0},
    {15.0, -5. 0, 0.0},
    {20.0,  5.0, 0.0}
};

다음 코드는,IDirect3DDevice9::DrawPrimitive 를 사용해, 삼각형 스트립을 렌더링 하는 방법을 나타내고 있다.

//
// It is assumed that d3dDevice is a valid
// pointer to a IDirect3DDevice9 interface.
//
d3dDevice->DrawPrimitive( D3DPT_TRIANGLESTRIP, 0, 4);


© 2002 Microsoft Corporation. All rights reserved.
↑TOP