opengl:opengllist
差分
このページの2つのバージョン間の差分を表示します。
両方とも前のリビジョン前のリビジョン次のリビジョン | 前のリビジョン | ||
opengl:opengllist [2014/04/16 20:58] – [OpenGL ES 3.0] oga | opengl:opengllist [2014/10/26 15:57] (現在) – [OpenGL ES 3.1] oga | ||
---|---|---|---|
行 39: | 行 39: | ||
* Pixel Shader の Program サイズは、Color 64 step + Texture 32 step の合計 96 step のみ | * Pixel Shader の Program サイズは、Color 64 step + Texture 32 step の合計 96 step のみ | ||
* Texture Fetch 制限が分離 (同じテクスチャを複数読める) ただし上限あり | * Texture Fetch 制限が分離 (同じテクスチャを複数読める) ただし上限あり | ||
- | * Fog など固定機能を併用する | + | * Fog / AlphaTest |
* 汎用補間 Register (varying) はなく Texcoord0~ を流用する。 | * 汎用補間 Register (varying) はなく Texcoord0~ を流用する。 | ||
行 96: | 行 96: | ||
- | API 的には OpenGL 3.3 から機能を削減したものに相当します。 | + | 機能的には |
削除された機能でわかりやすいのは GeometryShader でしょう。 | 削除された機能でわかりやすいのは GeometryShader でしょう。 | ||
Direct3D 10 の目玉のひとつでしたが、OpenGL で対応したのは OpenGL 3.2 からです。 | Direct3D 10 の目玉のひとつでしたが、OpenGL で対応したのは OpenGL 3.2 からです。 | ||
行 113: | 行 113: | ||
ところが Mobile 向け GPU の多くは OpenGL ES 2.0 (ShaderModel 3.0) の時点で Unified Shader 化されたものが多かったので、 | ところが Mobile 向け GPU の多くは OpenGL ES 2.0 (ShaderModel 3.0) の時点で Unified Shader 化されたものが多かったので、 | ||
それほど目新しさがありません。 | それほど目新しさがありません。 | ||
+ | MRT 対応化など、最低要件を引き上げたことが重要なポイントといえるでしょう。 | ||
+ | ===== OpenGL ES 3.1 ===== | ||
+ | バージョン番号は 0.1 とマイナーなアップデートですが、 | ||
+ | 仕様的には OpenGL ES 3.0 よりもさらに 1世代上に相当します。 | ||
+ | OpenGL ES 3.1 は Direct3D 11 / OpenGL 4.x のモバイル向け API です。 | ||
+ | 最大の特徴は Compute Shader に対応したこと。 | ||
+ | ただし Tessellator は存在しておらず、Direct3D 11 の特徴のひとつであった HalShader / DomainShader がありません。 | ||
+ | Tessellator は Rasterizer と同じで HW 固定機能のサポートが必要です。 | ||
+ | ハードウエアの負担を減らしつつ、効果的な機能を優先したためではないかと考えられます。 | ||
+ | また OpenGL ES 3.0 世代の GPU は OpenCL に対応しているものが少なくありません。 | ||
+ | すでに ComputeShader を走らせるだけの機能が GPU に備わっていたことも理由のひとつといえるのではないでしょうか。 | ||
+ | * [[http:// | ||
+ | ^ OpenGL | ||
+ | | OpenGL ES 2.0 | GLSL 1.0 | | ||
+ | | OpenGL 2.0 | GLSL 1.1 | | ||
+ | | OpenGL 2.1 | GLSL 1.2 | | ||
+ | | OpenGL 3.0 | GLSL 1.3 | | ||
+ | | OpenGL 3.1 | GLSL 1.4 | | ||
+ | | OpenGL 3.2 | GLSL 1.5 | | ||
+ | | OpenGL ES 3.0 | GLSL 3.0 (es) | | ||
+ | | OpenGL ES 3.1 | GLSL 3.1 (es) | | ||
+ | | OpenGL 3.3 | GLSL 3.3 | | ||
+ | | OpenGL 4.0 | GLSL 4.0 | | ||
+ | | OpenGL 4.1 | GLSL 4.1 | | ||
+ | | OpenGL 4.2 | GLSL 4.2 | | ||
+ | | OpenGL 4.3 | GLSL 4.3 | | ||
+ | | OpenGL 4.4 | GLSL 4.4 | | ||
+ | | OpenGL 4.5 | GLSL 4.5 | | ||
行 129: | 行 157: | ||
+ | ===== OpenGL ES 3.1 AEP (Android Extension Pack) ===== | ||
+ | * [[https:// | ||
+ | OpenGL ES 3.1 に OpenGL 4.x 相当の Extension を追加したものです。 | ||
+ | Geometry Shader (gs), Tessellation Control Shader (tcs, hs), Tessellation | ||
+ | ShaderModel は 5.0 (Direct3D11) 世代となり、Desktop GPU との機能面での差はほぼ無くなっています。 | ||
- | + | Android 5.0 (Lollipop) 及び NVIDIA Tegra K1 が対応しています。 | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
opengl/opengllist.1397649508.txt.gz · 最終更新: 2014/04/16 20:58 by oga