「OpenGL」の版間の差分

提供: MonoBook
ナビゲーションに移動 検索に移動
imported>Administrator
1行目: 1行目:
'''OpenGL'''(おーぷんじーえる)とは、Khronosグループが策定している[[コンピューターグラフィックス]]関連のオープンな低API仕様のことである。
+
'''OpenGL'''(読み:おーぷんじーえる)とは、Khronosグループが策定している[[コンピューターグラフィックス]]関連のオープンな[[低レベル]]なAPI仕様のことである。
  
OpenGLのサブセットとして主に携帯電話など向けにシンプル化した[[OpenGL ES]]というものがある。多くの場合、OpenGLも[[OpenGL ES]]も同列に語れることが多いが、微妙に別物なので、このページでは主に無印OpenGLについて記述する。
+
OpenGLのサブセットとして主に携帯電話など向けにシンプル化した[[OpenGL ES]]というものがある。多くの場合においてOpenGLも[[OpenGL ES]]も同列に語れることが多いが微妙に別物なのでこのページでは主に無印OpenGLについて記述する。
  
 
== 概要 ==
 
== 概要 ==
OpenGLは、元々は[[SGI]]が自社[[ワークステーション]]で使用していた[[IRIS GL]]というシステムを改良し、移植性を高めたものである。
+
OpenGLは元々は[[SGI]]が自社[[ワークステーション]]で使用していた[[IRIS GL]]というシステムを改良し[[移植]]性を高めたものである。
  
それが1992年にOpenGL Architecture Review Board (ARB)という大手コンピューターメーカーの集まりにより監修されるようになった。
+
それが1992年にOpenGL Architecture Review Board (ARB)という大手コンピューターメーカーの集まりにより引き継がれた。
  
2006年9月21日以降からは、中小企業も交え100以上の企業で構成される標準化団体クロノス・グループ (The Khronos Group) へ管理が移行し、OpenGL ARB Working Group (OpenGL ARB WG) となった。
+
2006年9月21日以降からは中小企業も交え100以上の企業で構成される標準化団体クロノス・グループ (The Khronos Group) へ管理が移行し、OpenGL ARB Working Group (OpenGL ARB WG) となった。
  
 
== 互換性 ==
 
== 互換性 ==
OpenGLはオープンな仕様であるため、各種[[OS]]に移植され、または互換GLが作成された。さらにグラフィックチップベンダーもオープンソースOS用の[[ドライバー]]を用意するなど汎用性に富む[[ライブラリ]]となっている。
+
OpenGLはオープンな仕様であるため、各種[[OS]]に移植され、または互換GLが作成された。さらにグラフィックチップベンダーも[[プロプライエタリ]]や[[オープンソース]]を問わず様々な[[OS]]用の[[ドライバー]]を用意するなどし、非常に汎用性に富む[[ライブラリ]]となっている。
  
 
と書くと凄い良いものに思えるが、OpenGLはあくまで[[仕様書]]だけの存在なので、その[[実装]]は様々であり、その互換性も微妙なのが実情であった。
 
と書くと凄い良いものに思えるが、OpenGLはあくまで[[仕様書]]だけの存在なので、その[[実装]]は様々であり、その互換性も微妙なのが実情であった。
しかもOpenGLは「独自拡張OK」というクソ仕様であったがために、結局のところ特定メーカーの[[グラフィックボード]]でないと動かない[[ソフトウェア]]が乱造されまくった。
+
しかもOpenGLは「独自拡張OK」というクソ仕様であったがために、結局のところ独自色を出そうとするメーカー達により特定の[[グラフィックボード]]でないと動かない[[ソフトウェア]]が乱造されまくった。
  
こんな酷い状況であったが20世紀末までは大量にあったGPUメーカーやグラフィックボードメーカーも21世紀に入ってから淘汰されまくり、[[パソコン]]や[[ワークステーション]]向けの[[GPU]]の種類も[[グラフィックボード]]の種類もの激減したことでかなりマシになった。
+
20世紀末まではこんな酷い状況であったが、21世紀に入ってから大量にあったGPUメーカーやグラフィックボードメーカーも淘汰されまくり、[[パソコン]]や[[ワークステーション]]向けの[[GPU]]の種類も[[グラフィックボード]]の種類もの激減したことでかなりマシになった。
  
一方、[[OpenGL ES]]は[[スマートフォン]]の大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ、再び互換性問題が発生しまくっている。とくに[[スマートフォン]]は毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとすると[[ソースコード]]はif文の嵐となる。もらでは[[OpenGL ES]]よりも、[[GPS]]や[[電子コンパス]]などの各種センサーの方がヤバいと言われているのが唯一の救いである。
+
一方、[[OpenGL ES]]は[[スマートフォン]]の大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ再び互換性問題が発生しまくっている。とくに[[スマートフォン]]は毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとすると[[ソースコード]]はif文の嵐となる。もらでは[[OpenGL ES]]よりも、[[GPS]]や[[電子コンパス]]などの各種センサーの方がヤバいと言われているのが唯一の救いである。
  
 
=== 独自拡張が許可された背景 ===
 
=== 独自拡張が許可された背景 ===
25行目: 25行目:
 
「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これは[[UNIX戦争]]における[[Open Software Foundation]]([[OSF]])陣営が犯した失敗と非常に似ている。
 
「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これは[[UNIX戦争]]における[[Open Software Foundation]]([[OSF]])陣営が犯した失敗と非常に似ている。
  
その裏でグラフィックボードメーカー各社の出した改善案を、[[マイクロソフト]]の独断と偏見で採用・不採用を決めるという大統領制を採用していた[[DirectX]]([[Direct3D]])の快進撃と怒涛の進化に大幅に後れを取ることとなり、仕方なくその場しのぎの独自拡張を許すこととなった。
+
これによりグラフィックボードメーカー各社の出した改善案を、[[マイクロソフト]]の独断と偏見で採用・不採用を決めるという大統領制を採用していた[[DirectX]]([[Direct3D]])の快進撃と怒涛の進化に大幅に後れを取ることとなり、仕方なくその場しのぎの独自拡張を許すこととなった。
  
 
なお、Direct3Dの大統領制に追従できず淘汰されたメーカーが続出したことにより、メーカーの多さが問題の根底にあったOpenGLも改善してきたという側面もあり、OpenGLの管理がKhronos Groupに移管した時期ぐらいから進化は再開しだしている。なお今なお互換性問題は減りはしたものの相変わらずである。
 
なお、Direct3Dの大統領制に追従できず淘汰されたメーカーが続出したことにより、メーカーの多さが問題の根底にあったOpenGLも改善してきたという側面もあり、OpenGLの管理がKhronos Groupに移管した時期ぐらいから進化は再開しだしている。なお今なお互換性問題は減りはしたものの相変わらずである。
35行目: 35行目:
  
 
== 参考文献 ==
 
== 参考文献 ==
<references/>
+
{{reflist}}
 
 
== 外部リンク ==
 
  
 
{{stub}}
 
{{stub}}

2015年11月20日 (金) 05:57時点における版

OpenGL(読み:おーぷんじーえる)とは、Khronosグループが策定しているコンピューターグラフィックス関連のオープンな低レベルなAPI仕様のことである。

OpenGLのサブセットとして主に携帯電話など向けにシンプル化したOpenGL ESというものがある。多くの場合においてOpenGLもOpenGL ESも同列に語れることが多いが微妙に別物なのでこのページでは主に無印OpenGLについて記述する。

概要

OpenGLは元々はSGIが自社ワークステーションで使用していたIRIS GLというシステムを改良し移植性を高めたものである。

それが1992年にOpenGL Architecture Review Board (ARB)という大手コンピューターメーカーの集まりにより引き継がれた。

2006年9月21日以降からは中小企業も交え100以上の企業で構成される標準化団体クロノス・グループ (The Khronos Group) へ管理が移行し、OpenGL ARB Working Group (OpenGL ARB WG) となった。

互換性

OpenGLはオープンな仕様であるため、各種OSに移植され、または互換GLが作成された。さらにグラフィックチップベンダーもプロプライエタリオープンソースを問わず様々なOS用のドライバーを用意するなどし、非常に汎用性に富むライブラリとなっている。

と書くと凄い良いものに思えるが、OpenGLはあくまで仕様書だけの存在なので、その実装は様々であり、その互換性も微妙なのが実情であった。 しかもOpenGLは「独自拡張OK」というクソ仕様であったがために、結局のところ独自色を出そうとするメーカー達により特定のグラフィックボードでないと動かないソフトウェアが乱造されまくった。

20世紀末まではこんな酷い状況であったが、21世紀に入ってから大量にあったGPUメーカーやグラフィックボードメーカーも淘汰されまくり、パソコンワークステーション向けのGPUの種類もグラフィックボードの種類もの激減したことでかなりマシになった。

一方、OpenGL ESスマートフォンの大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ再び互換性問題が発生しまくっている。とくにスマートフォンは毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとするとソースコードはif文の嵐となる。もらではOpenGL ESよりも、GPS電子コンパスなどの各種センサーの方がヤバいと言われているのが唯一の救いである。

独自拡張が許可された背景

OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。

「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これはUNIX戦争におけるOpen Software FoundationOSF)陣営が犯した失敗と非常に似ている。

これによりグラフィックボードメーカー各社の出した改善案を、マイクロソフトの独断と偏見で採用・不採用を決めるという大統領制を採用していたDirectXDirect3D)の快進撃と怒涛の進化に大幅に後れを取ることとなり、仕方なくその場しのぎの独自拡張を許すこととなった。

なお、Direct3Dの大統領制に追従できず淘汰されたメーカーが続出したことにより、メーカーの多さが問題の根底にあったOpenGLも改善してきたという側面もあり、OpenGLの管理がKhronos Groupに移管した時期ぐらいから進化は再開しだしている。なお今なお互換性問題は減りはしたものの相変わらずである。

関連項目

参考文献