Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

OpenGL_ESとは? わかりやすく解説

OpenGL ES

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/06/25 08:25 UTC 版)

OpenGL ES
開発元 Khronos Group
最新版
3.2 / 2015年8月10日 (7年前) (2015-08-10)
プラットフォーム クロスプラットフォーム
種別 3DグラフィックスAPI
公式サイト https://www.khronos.org/opengles/
テンプレートを表示

OpenGL ES(OpenGL for Embedded Systems)は、主に携帯電話などの組み込みシステムで使用されている3次元コンピュータグラフィックスAPI である。

OpenGL ESは、従来から存在する(主にデスクトップPCワークステーション向けの)クロスプラットフォームなリアルタイム3DグラフィックスAPIである OpenGL のサブセットである。OpenGL同様、グラフィックスハードウェア(GPU)の機能および性能を活用した高速なグラフィックス描画が可能となる。OpenGL ESはオープン仕様でロイヤリティフリーであり、適合試験にパスすれば誰でもOpenGL ES実装を謳えるため、iOSAndroidSymbian OSなどの携帯端末向けオペレーティングシステムで採用されているほか、プレイステーション3ニンテンドー3DSにも採用されており、ゲーム開発でも使用されている。OpenGL ESの仕様は、OpenGLと同様にクロノス・グループによって管理されている。

バージョン

OpenGL ES 1.x系には1.0と1.1の2つが存在する。1.x系は、グラフィックスパイプライン処理が固定されたシェーダー(固定機能シェーダー)のみに対応しており、プログラム可能なシェーディング機能(プログラマブルシェーダー)には対応していない。このため、フラットシェーディングあるいはグーローシェーディングといった、カスタマイズ不可能な頂点単位のシェーディング(陰影計算)や質感表現のみがサポートされている。ハードウェアアクセラレーションがサポートされていない複雑な陰影処理や各種エフェクトなどの高度な特殊効果を実現する場合にはGPU側の支援は受けられなくなるため、特異なコンピュータアーキテクチャ[疑問点]でない限りは動作速度は大きく低下する[疑問点]

OpenGL ES 2.0は、プログラマブルシェーダーに対応した仕様であり、シェーディング言語GLSL ESに対応する一方で固定機能シェーダーは削除されている。OpenGL ES 2.0は1.x系との完全な後方互換性はない。陰影計算・質感表現をプログラマブルシェーダーで記述することによって、GPUによる支援が受けられるようになる。

OpenGL ES 1.0

OpenGL ES 1.0はOpenGL 1.3のサブセットとして2003年に登場した。Symbian OSAndroid プラットフォームの公式3DグラフィックスAPIとして採用されている。また、SCEによるOpenGL ES 1.0の拡張版(PSGL英語版)がプレイステーション3の公式グラフィックスAPIの1つとしてサポートされている[1]

OpenGL ES 1.1

OpenGL ES 1.1はOpenGL 1.5のサブセットとして、2004年8月9日に発表。Android 1.6、iPhoneiPod touchiPad等で広くサポートされている。1.0世代のハードウェアでもドライバーレベルのアップデートで1.1に対応可能とされる。

以下の機能がOpenGL ES 1.0に追加になっている。

  • バッファオブジェクト
  • 自動ミップマップ生成
  • 拡張テクスチャ処理
  • 頂点スキニング機能
  • ユーザー定義クリッププレーン
  • 拡張ポイントスプライト、ポイントスプライト配列
  • 静的・動的状態クエリー
  • テクスチャ描画
  • 新しいコア追加、プロファイル拡張

OpenGL ES 2.0

OpenGL ES 2.0はOpenGL 2.0のサブセットとして2007年に公開された。 iPhoneの3GS以降、iPod Touchの第3世代以降、iPad、Androidのバージョン2.2以降などでサポートされている。 プログラマブルシェーダーステージはバーテックスシェーダー頂点シェーダー)とフラグメントシェーダーピクセルシェーダー)の2つをサポートする。頂点単位やピクセル単位の陰影計算・質感表現の制御がGPUにより支援される。

シェーディング言語はGLSL ES 1.0をサポートする。

なお、本家OpenGLはバージョン4.1でOpenGL ES 2.0互換プロファイルを扱うことができるようになっている (GL_ARB_ES2_compatibility)。

WebGL 1.0は、ブラウザ上で利用できるOpenGL ES 2.0の派生規格であるが、細部に違いがある[2]

OpenGL ES 3.0

OpenGL ES 3.0は2012年に発表された。2.0との後方互換性あり。 DirectX 10 (Direct3D 10) や本家OpenGL 3.2のジオメトリシェーダーはサポートされないが、マルチレンダーターゲット機能やマルチサンプルアンチエイリアス(MSAA)を標準サポートするようになり、またUniform BlockやTransform FeedbackなどのDirectX 10世代(統合型シェーダーアーキテクチャ世代)の機能を多数サポートする。

シェーディング言語はGLSL ES 3.0をサポートする。

なお、本家OpenGLはバージョン4.3でOpenGL ES 3.0互換プロファイルを扱うことができるようになっている (GL_ARB_ES3_compatibility)。

WebGL 2.0は、ブラウザ上で利用できるOpenGL ES 3.0の派生規格であるが、細部に違いがある[3]

OpenGL ES 3.1

OpenGL ES 3.1は2014年3月17日に発表された。ジオメトリシェーダーおよびDirectX 11 (Direct3D 11) や本家OpenGL 4.0のテッセレーションシェーダーはサポートされないが、本家OpenGL 4.3で採用されたコンピュートシェーダーなどを導入している[4]。3.0世代のハードウェアでもドライバーレベルのアップデートで3.1に対応可能とされる[5]

シェーディング言語はGLSL ES 3.1をサポートする。

なお、本家OpenGLはバージョン4.5でOpenGL ES 3.1互換プロファイルを扱うことができるようになっている (GL_ARB_ES3_1_compatibility)。

OpenGL ES 3.2

OpenGL ES 3.2は2015年8月10日に発表された。Google Android Extension Pack (AEP) にて拡張として定義されていた機能[6]、すなわちジオメトリシェーダーおよびテッセレーションシェーダー、そしてテクスチャ圧縮技術であるASTC英語版のサポートが標準化されたほか、本家OpenGL 4シリーズ同等の機能が多数追加される[7]

シェーディング言語はGLSL ES 3.2をサポートする。

なお、本家OpenGLは2015年8月に追加されたARB拡張により、OpenGL ES 3.2互換プロファイルを扱うことができるようになっている (GL_ARB_ES3_2_compatibility)。

ANGLE

ANGLE英語版Googleによって開発・公開されている、Direct3D/デスクトップOpenGL/Vulkanといった様々なグラフィックスAPIをバックエンド実装に利用してOpenGL ES互換レイヤーを提供するオープンソースのライブラリである[8]

ANGLEを利用することで、ベンダーがOpenGL ESのネイティブ実装として提供しているデバイスドライバーに存在する不具合や一貫性のない動作を回避したり[9]、OpenGL ESのネイティブ実装が提供されていないプラットフォームへのアプリケーション移植を容易にしたり、新世代の下位レベルグラフィックスAPIによりドローコール(描画命令呼び出し)のオーバーヘッドを低減することでパフォーマンスを向上したり[10]、といったことが可能となる。

Vulkanによる実装はOpenGL ES 3.1までが完了しており、ES 3.2の実装が進行中である。

OpenGL ES 1.xについては、OpenGL ES 3.0の機能を使って実装されており、OpenGL ES 3.0をサポートするすべてのバックエンドにおいて利用可能となっている[11]

iOS/tvOSでの非推奨化

AppleWWDC 2018で自社プラットフォームにおけるOpenGL/OpenCLの非推奨化を発表し、iOS 12およびtvOS 12において(サポートはまだ打ち切られないものの)OpenGL ESは非推奨APIとなった[12][13]。iOSがネイティブにサポートするOpenGL ESのバージョンは3.0が最後となっている[14]

OpenGL ESの代替として推奨されているAPIはMetalだが、MetalはVulkan同様、OpenGL ESよりもハードウェア層に近い下位レベルのAPIであり、基本的にアプリケーションソフトウェア開発向けではなくミドルウェア開発向けである。Metal APIを利用してOpenGL ESを実現するMoltenGLライブラリ(旧称MetalGL)が Brenwill Workshop によって開発されている[15]

ANGLEでは、macOS/iOS向けとしてMetalをバックエンドに利用するOpenGL ES実装が存在する。OpenGL ES 2.0およびES 3.0の実装が完了している[8]

脚注

出典

  1. ^ 西川善司の3DゲームファンのためのPS3アーキテクチャ講座
  2. ^ WebGL Specification
  3. ^ WebGL 2 Specification
  4. ^ Khronos,「OpenGL ES 3.1」を発表。OpenGL 4.xとの親和性を高める改良を施す - 4Gamer.net
  5. ^ What’s New in OpenGL ES
  6. ^ スマホでPS4世代のグラフィックスを実現? OpenGL ES 3.1の拡張機能「Google AEP」や次世代OpenGLの話をKhronos Group代表に聞いてみた - 4Gamer.net
  7. ^ Khronos Expands Scope of 3D Open Standard Ecosystem - Khronos Group Press Release
  8. ^ a b GitHub - google/angle: A conformant OpenGL ES implementation for Windows, Mac, Linux, iOS and Android.
  9. ^ OpenGL ES に ANGLE を使用する | Android デベロッパー | Android Developers, Internet Archive
  10. ^ Google Developers Japan: Android Q ベータ版の概要
  11. ^ angle/doc/ES1Status.md at main · google/angle · GitHub
  12. ^ iOSの新機能 - Apple Developer
  13. ^ tvOSの新機能 - Apple Developer
  14. ^ OpenGL ES | Apple Developer Documentation
  15. ^ MoltenGL | Metal performance with OpenGL ES

関連項目

外部リンク


「OpenGL ES」の例文・使い方・用例・文例

Weblio日本語例文用例辞書はプログラムで機械的に例文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。



固有名詞の分類


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「OpenGL_ES」の関連用語

OpenGL_ESのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



OpenGL_ESのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのOpenGL ES (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
Tanaka Corpusのコンテンツは、特に明示されている場合を除いて、次のライセンスに従います:
 Creative Commons Attribution (CC-BY) 2.0 France.
この対訳データはCreative Commons Attribution 3.0 Unportedでライセンスされています。
浜島書店 Catch a Wave
Copyright © 1995-2025 Hamajima Shoten, Publishers. All rights reserved.
株式会社ベネッセコーポレーション株式会社ベネッセコーポレーション
Copyright © Benesse Holdings, Inc. All rights reserved.
研究社研究社
Copyright (c) 1995-2025 Kenkyusha Co., Ltd. All rights reserved.
日本語WordNet日本語WordNet
日本語ワードネット1.1版 (C) 情報通信研究機構, 2009-2010 License All rights reserved.
WordNet 3.0 Copyright 2006 by Princeton University. All rights reserved. License
日外アソシエーツ株式会社日外アソシエーツ株式会社
Copyright (C) 1994- Nichigai Associates, Inc., All rights reserved.
「斎藤和英大辞典」斎藤秀三郎著、日外アソシエーツ辞書編集部編
EDRDGEDRDG
This page uses the JMdict dictionary files. These files are the property of the Electronic Dictionary Research and Development Group, and are used in conformance with the Group's licence.

©2025 GRAS Group, Inc.RSS