「OpenGL」の版間の差分
(→互換性) |
(→互換性) |
||
18行目: | 18行目: | ||
こんな酷い状況であったが20世紀末までは大量にあったGPUメーカーやグラフィックボードメーカーも21世紀に入ってから淘汰されまくり、[[パソコン]]や[[ワークステーション]]向けの[[GPU]]の種類も[[グラフィックボード]]の種類もの激減したことでかなりマシになった。 | こんな酷い状況であったが20世紀末までは大量にあったGPUメーカーやグラフィックボードメーカーも21世紀に入ってから淘汰されまくり、[[パソコン]]や[[ワークステーション]]向けの[[GPU]]の種類も[[グラフィックボード]]の種類もの激減したことでかなりマシになった。 | ||
− | 一方、[[OpenGL ES]]は[[スマートフォン]] | + | 一方、[[OpenGL ES]]は[[スマートフォン]]の大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ、再び互換性問題が発生しまくっている。とくに[[スマートフォン]]は毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとすると[[ソースコード]]はif文の嵐となる。もらでは[[OpenGL ES]]よりも、[[GPS]]や[[電子コンパス]]などの各種センサーの方がヤバいと言われているのが唯一の救いである。 |
=== 独自拡張が許可された背景 === | === 独自拡張が許可された背景 === | ||
OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。 | OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。 | ||
− | + | 「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これは[[UNIX戦争]]における[[Open Software Foundation]]([[OSF]])陣営が犯した失敗と非常に似ている。 | |
その裏でグラフィックボードメーカー各社の出した改善案を[[マイクロソフト]]の独断と偏見で採用不採用を決めるという大統領制を採用していた[[DirectX]]([[Direct3D]])の快進撃、怒涛の進化に大幅に後れを取ることとなった。 | その裏でグラフィックボードメーカー各社の出した改善案を[[マイクロソフト]]の独断と偏見で採用不採用を決めるという大統領制を採用していた[[DirectX]]([[Direct3D]])の快進撃、怒涛の進化に大幅に後れを取ることとなった。 |
2012年9月3日 (月) 08:05時点における版
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世紀末までは大量にあったGPUメーカーやグラフィックボードメーカーも21世紀に入ってから淘汰されまくり、パソコンやワークステーション向けのGPUの種類もグラフィックボードの種類もの激減したことでかなりマシになった。
一方、OpenGL ESはスマートフォンの大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ、再び互換性問題が発生しまくっている。とくにスマートフォンは毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとするとソースコードはif文の嵐となる。もらではOpenGL ESよりも、GPSや電子コンパスなどの各種センサーの方がヤバいと言われているのが唯一の救いである。
独自拡張が許可された背景
OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。
「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これはUNIX戦争におけるOpen Software Foundation(OSF)陣営が犯した失敗と非常に似ている。
その裏でグラフィックボードメーカー各社の出した改善案をマイクロソフトの独断と偏見で採用不採用を決めるという大統領制を採用していたDirectX(Direct3D)の快進撃、怒涛の進化に大幅に後れを取ることとなった。
そのため仕方なくその場しのぎの独自拡張を許すこととなった。 OpenGLがKhronos Groupに管理が移管したことで、進化は再開したが、互換性問題は相変わらずである。
関連項目
- DirectX
- PlayStation Suite SDK - OpenGLをDirect3D風にした奇妙なライブラリを搭載している。
参考文献