日別アーカイブ: 2011年10月21日

OpenGL ES 2.0 Mobile GPU の比較、重いテクスチャ

テクスチャ負荷が高いケースでのテスト

GPU             fps       display pix/sec
--------------------------------------------------
Adreno 220      28.88fps  960x540  15.0M
Mali-400MP      20.08fps  800x480   7.7M  
ULP GeForce(8)   4.37fps 1280x752   4.2M  (Tegra250)
PVR SGX543MP2   20.65fps 1024x768  16.2M
PVR SGX535       8.70fps  480x320   1.3M

背景データ
 ・170000 ポリゴン
 ・1024×1024 カラーテクスチャ 5枚
 ・2048×2048 非圧縮ノーマルマップ 2枚
 ・ライティングあり(directional x2 + point x1)

キャラクタ
 ・10000ポリゴン前後 x5 (animation あり)
 ・ColorMap + NormalMap + SpecularMap
 ・ライティングあり(directional x2 + point x1)

背景の normal map は非圧縮 mip 無しで 1枚 12MByte もあります。
それでも Adreno 220/PVR SGX543MP2 はよくこの速度で動いています。

Color Texture の一部は alpha が入っており、
ETC1 しか使えない Mali-400MP では圧縮できませんでした。
このあたりが速度に影響しているかもしれません。

                alpha無し      alpha 1bit     alpha
---------------------------------------------------------
Mali-400MP      ETC1  4bpp     非圧縮         非圧縮
Adreno 220      ATC   4bpp     ATCA  8bpp     ATCI  8bpp
ULP GeForce     DXT1  4bpp     DXT1  4bpp     DXT5  8bpp
PVR SGX543MP2   PVRTC 4bpp     PVRTC 4bpp     PVRTC 4bpp

圧縮テクスチャ対応表

高負荷で長時間走らせていると端末も結構熱を持ちます。
Tablet は大丈夫ですが、うっかり雑誌の上においた EVO 3D が熱くなり
LED が点滅してました。

関連エントリ
頂点性能の比較 その2 (OpenGL ES 2.0 Mobile GPU)
OpenGL ES 2.0 Mobile GPU の頂点性能を比較する
A5 PowerVR SGX543MP2 は iOS 5 だと速い
さらに OpenGL ES 2.0 Mobile GPU の速度比較
OpenGL ES 2.0 Mobile GPU の速度比較 (dual core世代) 更新