iPhone 3G S 支援 OpenGL ES 1.1 / 2.0;3G 僅支援 ES 1.1,所以呢?


前天的 iPhone 3G / iPhone 3G S 的比較文當中,主站推測兩者對於 OpenGL ES 方面的支援,都應該有到 2.0 版本,可惜,事與願違,對於 OpenGL ES 2.0 的支援,只有在 iPhone 3G S 上面才有(包括 1.1,採用的影像處理晶片為 PowerVR SGX),而 iPhone 3G 用的是 PowerVR MBX,只有支援到 OpenGL ES 1.1。

談談這件事情對兩代 iPhone 3G 的差異之前,先簡單說一下 OpenGL ES 是啥,基本上就是 OpenGL 的簡易版,裡頭包括許多即時 3D 影像處理所用的 API;而現今市面上大多數的手機、手持裝置,只有支援到 1.1 版本,而 2.0 除了數字大一點之外,能夠處理更複雜的 3D 物件貼圖(texture)、著色(shading),可以讓遊戲畫面更加精緻就是。

而由於目前 OpenGL ES 1.1 跟 2.0 彼此間完全不相容,軟體如果要同時支援兩種版本,則必須要被重新撰寫;同時一個僅支援 2.0 的軟體,並不能在僅能支援 1.1 的硬體上面執行;如果事情這樣發展下去的話,將來就會有部份軟體僅能在 iPhone 3G S 上面執行,跟目前 iPod touch 不能吃某些軟體的狀況類似。

而如果軟體開發者要讓自己的軟體被更多人使用的話,那目前看來,最保險的方法,就是讓自己的軟體支援 OpenGL ES 1.1;而這對於使用者最大的問題,是在假如不是那麼需要錄影、電子指南針功能(以及其他相關軟體)的情況下,還是可能需要換新機,特別是對於遊戲畫面頗要求的朋友而言,這中間的價差,就得靠消費者自行評斷到底值不值得了。

[原文連結]