2012-05-15 2 views
1

2D Open GL 게임을 개발 중이며 타일 맵의 화면에 많은 사각형을 그려야합니다. 다른 텍스처는 glTexCoordPointer입니다.어떻게 많은 사각형에 대해 gldrawelements를 사용할 수 있습니까?

이제 많은 사각형을 그려야한다면 인덱스의 구조가 될 많은 사각형을 그리는 데 Gldrawelements을 어떻게 사용할 지 모르겠습니까?

그리고 각 사각형의 좌표가 포함 된 각 배열 (vertices)을 어떻게 넣을 수 있습니까? vertexbuffer?

또한 메서드마다 한 번만 호출하여 각 사각형에 서로 다른 glTexCoordPointer을 설정하거나 GlDrawArrays과 같은 루프가 필요합니까? 하지만, 나는 각주마다 gldrawarrays을 여러 번 실행하는 루프를 만들고 싶지 않기 때문에 gldrawelements을 사용하고 싶습니다. 내 fps이 눈에 잘 띄게 떨어집니다.

답변

2

사각형이 서로 인접하는 경우, 쿼드 스트립 (또는 등가 적으로 삼각형 스트립) 사용 제곱이 끊긴 경우 단순히 쿼드

를 사용

quad-strip of adjacent quads

enter image description here

또한 축퇴 쿼드 (삼각형)을 첨가하여,이 경우에는 쿼드 스트립 (등가 삼각형 스트립)을 사용하여

:

GLushort indices[] = {A, B, C, D, D, E, E, F, G, H, H, I, I, J, K, L} 

동일한 꼭지점 위치를 갖지만 텍스처 좌표가 다른 두 개의 사각형은 다른 쿼드로 표시되어야합니다.

관련 문제