ユーザ用ツール

サイト用ツール


opengl:opengllist

差分

このページの2つのバージョン間の差分を表示します。

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
opengl:opengllist [2014/04/16 21:17] – [OpenGL ES 3.0] ogaopengl: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~ を流用する。
  
行 120: 行 120:
 ===== OpenGL ES 3.1 ===== ===== OpenGL ES 3.1 =====
  
-バージョン番号はマイナーなアップデートですが、+バージョン番号は 0.1 とマイナーなアップデートですが、
 仕様的には OpenGL ES 3.0 よりもさらに 1世代上に相当します。 仕様的には OpenGL ES 3.0 よりもさらに 1世代上に相当します。
  
 OpenGL ES 3.1 は Direct3D 11 / OpenGL 4.x のモバイル向け API です。 OpenGL ES 3.1 は Direct3D 11 / OpenGL 4.x のモバイル向け API です。
- +最大の特徴は Compute Shader に対応したこと。
- +
-最大の特徴は Compute Shader に対応したことです。 +
- +
-Direct3D 11 では、Shader Model 4.0 GPU 向けに機能を簡略化した Compute Shader (DirectCompute 4.x) を定義しています。 +
-バッファに対してランダム書き込みできない制限があり、Pixel Shader とさほど違いがありません。 +
- +
-OpenGL ES 3.1 の Compute Shader はバッファ (いわゆる UAV) への書き込みアクセスが可能なので +
-DirectCompute 5 相当です+
  
 ただし Tessellator は存在しておらず、Direct3D 11 の特徴のひとつであった HalShader / DomainShader がありません。 ただし Tessellator は存在しておらず、Direct3D 11 の特徴のひとつであった HalShader / DomainShader がありません。
 Tessellator は Rasterizer と同じで HW 固定機能のサポートが必要です。 Tessellator は Rasterizer と同じで HW 固定機能のサポートが必要です。
-ハードウエアの負担を減らしたためではないかと考えられます。 +ハードウエアの負担を減らしつつ、効果的な機能を優先したためではないかと考えられます。
- +
- +
-Windows Tablet の登場により、Mobile GPU も DirectX11 対応を強化しつつあります。 +
-Mobile 向けにも DirectX11 世代の API が必要になったものと考えられます。 +
-その反面、Desktop API と Mobile API を分ける必要性が薄れているのも事実です。+
  
 +また OpenGL ES 3.0 世代の GPU は OpenCL に対応しているものが少なくありません。
 +すでに ComputeShader を走らせるだけの機能が GPU に備わっていたことも理由のひとつといえるのではないでしょうか。
  
-Desktop OpenGL の GLSL Version  3.0~3.2 は未使用なので、GLSL 3.1 といえば必ず OpenGL ES 3.1 の GLSL を指します。 +  * [[http://wlog.flatlib.jp/archive/1/2014-3-18|2014/03/18 OpenGL ES 3.1 は OpenGL 4.x 相当で ComputeShader に対応]]
-もしかしたら名称が 3.ある理由のひとつかもしれません。+
  
  
行 163: 行 151:
 | OpenGL 4.3    | GLSL 4.3   | | OpenGL 4.3    | GLSL 4.3   |
 | OpenGL 4.4    | GLSL 4.4   | | OpenGL 4.4    | GLSL 4.4   |
 +| OpenGL 4.5    | GLSL 4.5   |
  
  
行 168: 行 157:
  
  
 +===== OpenGL ES 3.1 AEP (Android Extension Pack) =====
  
 +  * [[https://www.khronos.org/registry/gles/extensions/ANDROID/ANDROID_extension_pack_es31a.txt|GL_ANDROID_extension_pack_es31a]]
  
 +OpenGL ES 3.1 に OpenGL 4.x 相当の Extension を追加したものです。
 +Geometry Shader (gs), Tessellation Control Shader (tcs, hs), Tessellation  Evaluation Shader (tes, ds) が含まれています。
 +ShaderModel は 5.0 (Direct3D11) 世代となり、Desktop GPU との機能面での差はほぼ無くなっています。
  
 +Android 5.0 (Lollipop) 及び NVIDIA Tegra K1 が対応しています。
  
  
opengl/opengllist.1397650672.txt.gz · 最終更新: 2014/04/16 21:17 by oga

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki