2011-04-25 3 views
0

게임 엔진이 있지만 속도가 매우 느립니다. 나는 내 은하계에서 약 30-40FPS의 60-80 정사각형 (혼합 된 2 개의 삼각형)을 얻습니다. 이것은 라이브 배경 화면입니다. 내 전설에 80 항목에 불과 10-20 FPS를 얻을 ...Android OpenGL-ES 3D 게임 최적화

나는 VBO 's, 컬링 및 기타 최적화를 사용했습니다. (텍스쳐 아틀라스, 바인딩 텍스처와 같은 속도를 시도 ...)

내가 할 수있는 일은 무엇입니까?

1, 만약 내가 네이티브 OpenGL 렌더링 코드를 사용한다면, 렌더링 속도가 빨라질까요? 2, png-s가 아닌 PVRTC 압축 텍스처를 사용하면 렌더링 속도가 빨라 집니까? 내가 어떻게 할 수 있니?

무엇을 할 수 있습니까?

답변

1

예 ... OpenGL 용 NDK로 전환하면 상당한 속도 향상을 볼 수 있습니다. PVRTC에 관해서 ... 나는 그것이가는 길인 지 100 % 확실하지 않다. 이것이 PowerVR 칩셋에 최적화 된 형식입니다. 그렇습니다. Galaxy S의 다양한 휴대 전화에 적합합니다 ...하지만 Snapdragon 프로세서를 장착 한 모든 휴대 전화는 다른 GPU (Adreno)를 실행합니다. Adreno GPU가이를 잘 활용할 수 있는지 전혀 알 수 없습니다.

+0

오케이, 나는 다른 압축을 보았습니다. 그러나 먼저 : 어떻게 OpenGL에서 .pvr 텍스처를로드 할 수 있습니까? 특별하니? – lacas

+0

불행히도, 나는 잘 모르겠다. 그러나 많은 휴대 전화가 GL_IMG_texture_compression_pvrtc gl 확장을 지원하지 않을 것이기 때문에 솔직하게 말해야합니다. 그래도 알아야 할 모든 것이 PowerVR SDK에 있습니다. Google, 귀하가 보유해야합니다. – Maximus

1

내 지식으로 GPU는 기본적으로 PNG 이미지를 텍스처 형식으로 지원하지 않습니다. 이들은 API/드라이버에 의해 ARGB (아마 @ 32bpp)로 압축 해제되므로, 메모리 공간 및 더 중요한 것은 대역폭 소비면에서 히트가있을 것입니다. PNG는 실제로 응용 프로그램 및 플래시 메모리 저장 공간의 배포 측면에서 이점을 제공합니다.

PVRTC (4bpp 또는 2bpp) 또는 ETC (4bpp)와 같은 (손실이있는) 질감 압축을 사용하면 이미지 품질에 엄청나게 강하지는 않지만 성능면에서 우위가 될 것입니다.