「OpenGL ES」を編集中
この編集を取り消せます。 下記の差分を確認して、本当に取り消していいか検証してください。よろしければ変更を保存して取り消しを完了してください。
最新版 | 編集中の文章 | ||
8行目: | 8行目: | ||
OpenGL ESは無印OpenGL同様に「拡張」が許されているため互換性は絶望的な状況にある。無印OpenGLのように[[NVIDIA]]と[[AMD]]と[[Intel]]の実質三社しか存在しない環境とは異なり、OpenGL ES製品は新興国の新興メーカーも次々と新製品を出しては消えており、その全てが挙動が違うという冗談顔だけにしてほしい状況となっている。 | OpenGL ESは無印OpenGL同様に「拡張」が許されているため互換性は絶望的な状況にある。無印OpenGLのように[[NVIDIA]]と[[AMD]]と[[Intel]]の実質三社しか存在しない環境とは異なり、OpenGL ES製品は新興国の新興メーカーも次々と新製品を出しては消えており、その全てが挙動が違うという冗談顔だけにしてほしい状況となっている。 | ||
− | このため[[Android]]向けの[[ゲーム]]などの[[ | + | このため[[Android]]向けの[[ゲーム]]などの[[アプ]]リでは、世界で一番売れている[[サムスン電子]]のGalaxyシリーズが搭載する[[Snapdragonシリーズ]]に内蔵される[[GPU]]である[[Adrenoシリーズ]]しかサポートしないという製品も多い。[[Antutu]]や[[Passmark]]などの[[ベンチマーク]]でSnapdragonシリーズを超える数値を叩き出した[[SoC]]は過去に幾度となく存在したが、OpenGL ESがクソ仕様なせいで実際には[[ゲーム]]で遊べないという苦情が多発し、性能を抜きにしてSnapdragonシリーズを採用するという風潮が醸し出され、最終的に[[Snapdragon 810]]の爆死に繋がった。 |
+ | |||
+ | == バージョン == | ||
− | |||
− | + | OpenGL ES 2.0は、[[プログラマブルシェーダー]]に対応した仕様であり、シェーディング言語[[GLSL]] ESに対応する一方で固定機能シェーダーは削除されている。OpenGL ES 2.0は1.x系との完全な後方[[互換性]]はない。陰影計算・質感表現をプログラマブルシェーダーで記述することによって、GPUによる支援が受けられるようになる。 | |
=== OpenGL ES 1.0 === | === OpenGL ES 1.0 === | ||
34行目: | 35行目: | ||
=== OpenGL ES 2.0 === | === OpenGL ES 2.0 === | ||
− | OpenGL ES 2.0はOpenGL 2. | + | OpenGL ES 2.0はOpenGL 2.0のサブセットとして2007年に公開された。 |
+ | [[iPhone 3GS]]以降、[[iPod Touch]]の第3世代以降、[[iPad]]、[[Android]] 2.2以降などでサポートされている。 | ||
+ | 2016年現在の[[iPhone 6s]]や[[Android 6.0]]も基本はOpenGL ES 2.0である。 | ||
+ | 現実問題としてまともに動くのはこれしかない。 | ||
− | + | [[シェーディング言語]]は時代遅れ感が満載のGLSL ES 1.0をサポートする。 | |
− | + | プログラマブルシェーダーステージは[[バーテックスシェーダー]]([[頂点シェーダー]])と[[フラグメントシェーダー]]([[ピクセルシェーダー]])の2つをサポートする。頂点単位やピクセル単位の陰影計算・質感表現の制御が[[GPU]]により支援される。[[シェーダー]]は書き込みのみで読み出しはできないクソ仕様である。 | |
− | |||
− | |||
− | |||
− | |||
− | [[シェーディング言語]]は時代遅れ感が満載のGLSL ES 1.0をサポートする。 | ||
なお、本家OpenGLはバージョン4.1でOpenGL ES 2.0プロファイルを扱うことができるようになっている。 | なお、本家OpenGLはバージョン4.1でOpenGL ES 2.0プロファイルを扱うことができるようになっている。 | ||
78行目: | 77行目: | ||
{{stub}} | {{stub}} | ||
− | |||
− |