ユーザ用ツール

サイト用ツール


opengl:platform_3dapi

差分

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

この比較画面へのリンク

両方とも前のリビジョン前のリビジョン
次のリビジョン
前のリビジョン
次のリビジョン両方とも次のリビジョン
opengl:platform_3dapi [2014/04/17 19:05] ogaopengl:platform_3dapi [2014/07/31 14:33] – [比較] oga
行 1: 行 1:
-====== Platform 毎の 3D API 対応 ======+====== Platform 毎の 3D API 対応状況 ======
  
 +===== 3D API =====
  
-^ OS                 ^ HOST                ^ App 言語                                    ^ Framework       ^ Native SDK                  ^ 3D API                ^ Shader Language ^ Shader Model ^ +^ OS                 ^ App 記述言語                                        ^ 3D API                      ^ Native からの利用            ^ Shadering 言語      ^ 
-| iOS                | Mac OS X            | Objective-C/<nowiki>Objective-C++</nowiki>  | Cocoa           | <nowiki>C/C++</nowiki>      | OpenGL ES 2.0/3.0     | GLSL 1.0/3.0    | SM 4.0       +| iOS                | Objective-C/Swift/<nowiki>Objective-C++</nowiki>    | EAGL / GLK + ES 2.0 / 3.0 / Metal                          || GLSL 1.0/3.0/Metal 
-| Android            | Windows/OS X/Linux  | Java                                        | Android         NDK <nowiki>C/C++</nowiki>  | OpenGL ES 2.0/3.0     | GLSL 1.0/3.0    | SM 4.0       +| Android            | Java                                                | Java ES 2.0 / 3.0 / 3.1 Ext | EGL + ES 2.0 / 3.0 / 3.1 Ext  | GLSL 1.0/3.0/3.1    | 
-| Windows Phone 8    | Windows 7/(x64)   | C#                                          | .NET Framework  | <nowiki>C/C++</nowiki>      | XNA/Direct3D          | HLSL            | SM 3.0       | +| Windows Phone 8    | C#/<nowiki>C/C++</nowiki>                           | XNA/Direct3D11(9_3)         | Direct3D11(9_3)               | hlsl 3.0            | 
-| PS Mobile          | Windows             | C#                                          | PS Mobile SDK   | --                          | 独自 + Cg             | Cg              | SM 3.0       | +| PS Mobile          | C#                                                  | 独自 + Cg                   | --                            | Cg                  | 
-| webOS              | Windows/OS X        | HTML5/JavaScript                            |                 PDK <nowiki>C/C++</nowiki>  | OpenGL ES 2.0         | GLSL 1.0        | SM 3.0       | +| webOS              | HTML5/JavaScript                                    |                             | OpenGL ES 2.0                 | GLSL 1.0            | 
-| Ubuntu Touch       | Ubuntu              | QML/JavaScript/Python/<nowiki>C++</nowiki>  | Qt              | <nowiki>C/C++</nowiki>      | OpenGL ES 2.0         | GLSL 1.0        | SM 3.0       | +| Ubuntu Touch       | QML/JavaScript/Python/<nowiki>C++</nowiki>          |                             | OpenGL ES 2.0                 | GLSL 1.0            | 
-| Firefox OS         Browser?            | HTML5/JavaScript                            |                 | --                          | WebGL (GLES 2.0)      | GLSL 1.0        | SM 3.0       | +| Firefox OS         | HTML5/JavaScript                                    | WebGL (GLES 2.0)            | --                            | GLSL 1.0            | 
-| Tizen              | Windows/OS X/Ubuntu | HTML5/JavaScript/<nowiki>C++</nowiki>       |                 | <nowiki>C/C++</nowiki>      | OpenGL ES 2.0         | GLSL 1.0        | SM 3.0       | +| Tizen              | HTML5/JavaScript/<nowiki>C++</nowiki>                                           | OpenGL ES 2.0                 | GLSL 1.0            | 
-| NaCl               | Windows/OS X/Linux  | <nowiki>C/C++</nowiki>                      |                 | <nowiki>C/C++</nowiki>      | OpenGL ES 2.0         | GLSL 1.0        | SM 3.0       | + 
-| WebGL/HTML5        | Browser             | HTML5/JavaScript                            |                 | --                          | WebGL (GLES 2.0)      | GLSL 1.0        | SM 3.0       | + 
-| Chrome OS          |                                                                 |                                                                                   |              |+ 
 + 
 + 
 + 
 + 
 +===== 比較 ===== 
 + 
 + 
 +^ OS                 ^ HOST                ^ App 言語                                          ^ Framework       ^ Native SDK                        ^ 3D API                        ^ Shader Language     ^ Shader Model ^ 
 +| iOS                | Mac OS X            | Objective-C/<nowiki>Objective-C++</nowiki>/Swift  | Cocoa           | <nowiki>C/C++</nowiki>            | OpenGL ES 2.0/3.0/Metal       | GLSL 1.0/3.0/Metal  | SM 4.0/5.0   
 +| Android            | Windows/OS X/Linux  | Java                                              | Android         | <nowiki>C/C++</nowiki> NDK (jni)  | OpenGL ES 2.0/3.0/3.1 Ext     | GLSL 1.0/3.0/3.1    | SM 4.0/5.0   
 +| Windows Phone 8    | Windows 8 x64       | C#/<nowiki>C/C++</nowiki>                         | .NET Framework  | <nowiki>C/C++</nowiki>            | XNA/Direct3D11(9_3) (*1)      | HLSL                | SM 3.0       | 
 +| PS Mobile          | Windows             | C#                                                | PS Mobile SDK   | --                                | 独自 + Cg                     | Cg                  | SM 3.0       | 
 +| webOS              | Windows/OS X        | HTML5/JavaScript                                  |                 | <nowiki>C/C++</nowiki> PDK        | OpenGL ES 2.0                 | GLSL 1.0            | SM 3.0       | 
 +| Ubuntu Touch       | Ubuntu              | QML/JavaScript/Python/<nowiki>C++</nowiki>        | Qt              | <nowiki>C/C++</nowiki>            | OpenGL ES 2.0                 | GLSL 1.0            | SM 3.0       | 
 +| Firefox OS                             | HTML5/JavaScript                                  |                 | --                                | WebGL (GLES 2.0)              | GLSL 1.0            | SM 3.0       | 
 +| Tizen              | Windows/OS X/Ubuntu | HTML5/JavaScript/<nowiki>C++</nowiki>             |                 | <nowiki>C/C++</nowiki>            | OpenGL ES 2.0                 | GLSL 1.0            | SM 3.0       | 
 +^ OS                 ^ HOST                ^ App 言語                                          ^ Framework       ^ Native SDK                        ^ 3D API                        ^ Shader Language     ^ Shader Model ^ 
 +| NaCl               | Windows/OS X/Linux  | <nowiki>C/C++</nowiki>                            |                 | <nowiki>C/C++</nowiki>            | OpenGL ES 2.0                 | GLSL 1.0            | SM 3.0       | 
 +| WebGL/HTML5        | Browser             | HTML5/JavaScript                                  |                 | --                                | WebGL (GLES 2.0)              | GLSL 1.0            | SM 3.0       | 
 +^ OS                 ^ HOST                ^ App 言語                                          ^ Framework       ^ Native SDK                        ^ 3D API                        ^ Shader Language     ^ Shader Model ^ 
 +| Windows            | Windows             | C#/<nowiki>C/C++</nowiki> ~                      | .NET Framework  | <nowiki>C/C++</nowiki>            | Direct3D11 / OpenGL 4.4 (*2)  | HLSL / GLSL ~4.4   | SM 5.0       | 
 +| Mac OS X           | Mac OS X            | Objective-C/<nowiki>Objective-C++</nowiki> ~     | Cocoa           | <nowiki>C/C++</nowiki>            | OpenGL 4.1                    | OpenGL ~ 4.1       | SM 5.0       | 
 +| Linux              | Linux               | <nowiki>C/C++</nowiki> ~                                         | <nowiki>C/C++</nowiki>            | OpenGL 4.4 (*2)               | OpenGL ~ 4.4       | SM 5.0       | 
 +| Chrome OS          |                                                                       |                                                                                                     |              | 
 + 
 +  * (*1)  Direct3D11 9_3 = API セットは D3D11 だが使える機能は Direct3D9 相当 
 +  * (*2)  GPU に依存します (Intel HD Graphics : 4.0~4.2、 GeForce: 4.4、RADEON HD : 4.3 ) 
 + 
 + 
 + 
 +===== コード共有化など ===== 
 + 
 +<nowiki>C/C++</nowiki> で書いたコードは多くのプラットフォームに移植可能。 
 +Native Code のサポートは動作速度目的だけでなく、プラットフォームを超えた共通言語としての側面も併せ持っています。 
 +ただし UI など専用 API は <nowiki>C++</nowiki> から呼び出せないケースがほとんどです。 
 + 
 +3D API は一部を除いてほぼ OpenGL ES 2.0 で統一されています。 
 +Native から OpenGL を呼べない場合でも、 GLSL は共有できることになります。
  
  
opengl/platform_3dapi.txt · 最終更新: 2015/03/03 21:50 by oga

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki