2011-03-10 4 views

답변

0

하나의 스프라이트를 그리는 데는 그다지 문제가 없지만 glRotate/glTranslate를 사용하여 스프라이트를 배치한다고 가정 할 때 이점이 없습니다. 그렇게 많은 게임이 쓰여졌습니다.

제 게임에서는 GL_DYNAMIC_DRAW가있는 버텍스 버퍼 객체를 사용하여 각 텍스처 아트릴을 공유하는 모든 스프라이트를 저장합니다. 나는 CPU의 vert 위치를 업데이트하고 한 번의 그리기 호출로 전체 배치를 보냅니다. 이 접근법을 사용하여 더 많은 스프라이트를 그릴 수 있습니다. 더 많이 그릴 필요가 있다면 버텍스 쉐이더의 위치를 ​​사용할 수 있습니다.

또한 OpenGL ES2는 표시 목록을 지원하지 않으므로 ES2 장치로 이식 할 생각이라면 다시해야합니다. (iPhone/iPad는 ES1을 지원하지만 ES2와 혼합 및 일치시킬 수는 없으며 디스플레이 목록 또는 쉐이더를 사용할 수 있지만 둘 다 사용할 수는 없습니다.