「OpenGL」の版間の差分
(→互換性) |
Administrator (トーク | 投稿記録) |
||
(4人の利用者による、間の6版が非表示) | |||
1行目: | 1行目: | ||
− | '''OpenGL''' | + | '''OpenGL'''(読み:おーぷんじーえる)とは、Khronosグループが策定している[[コンピューターグラフィックス]]関連のオープンな[[低レベル]]なAPI仕様のことである。 |
− | OpenGLのサブセットとして主に携帯電話など向けにシンプル化した[[OpenGL ES]] | + | OpenGLのサブセットとして主に携帯電話など向けにシンプル化した[[OpenGL ES]]というものがある。多くの場合においてOpenGLも[[OpenGL ES]]も同列に語れることが多いが微妙に別物なのでこのページでは主に無印OpenGLについて記述する。 |
== 概要 == | == 概要 == | ||
− | + | 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) となった。 | |
== 互換性 == | == 互換性 == | ||
− | OpenGLはオープンな仕様であるため、各種[[OS]] | + | OpenGLはオープンな仕様であるため、各種[[OS]]に移植され、または互換GLが作成された。さらにグラフィックチップベンダーも[[プロプライエタリ]]や[[オープンソース]]を問わず様々な[[OS]]用の[[ドライバー]]を用意するなどし、非常に汎用性に富む[[ライブラリ]]となっている。 |
と書くと凄い良いものに思えるが、OpenGLはあくまで[[仕様書]]だけの存在なので、その[[実装]]は様々であり、その互換性も微妙なのが実情であった。 | と書くと凄い良いものに思えるが、OpenGLはあくまで[[仕様書]]だけの存在なので、その[[実装]]は様々であり、その互換性も微妙なのが実情であった。 | ||
− | + | しかもOpenGLは「独自拡張OK」というクソ仕様であったがために、結局のところ独自色を出そうとするメーカー達により特定の[[グラフィックボード]]でないと動かない[[ソフトウェア]]が乱造されまくった。 | |
− | + | 20世紀末まではこんな酷い状況であったが、21世紀に入ってから大量にあったGPUメーカーやグラフィックボードメーカーも淘汰されまくり、[[パソコン]]や[[ワークステーション]]向けの[[GPU]]の種類も[[グラフィックボード]]の種類もの激減したことでかなりマシになった。 | |
− | 一方、[[OpenGL ES]]は[[スマートフォン]] | + | 一方、[[OpenGL ES]]は[[スマートフォン]]の大流行とともにゴールドラッシュのごとく新規メーカーが次々と現れ再び互換性問題が発生しまくっている。とくに[[スマートフォン]]は毎月何台発売するんだよという状況であり、そのシェアも分散しまくっているため、それらを広くサポートしようとすると[[ソースコード]]はif文の嵐となる。もらでは[[OpenGL ES]]よりも、[[GPS]]や[[電子コンパス]]などの各種センサーの方がヤバいと言われているのが唯一の救いである。 |
=== 独自拡張が許可された背景 === | === 独自拡張が許可された背景 === | ||
OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。 | OpenGLにおいて独自拡張が許可された背景にはARBが大手メーカーの集まりであったことが大きい。 | ||
− | + | 「大手メーカーが協力して」というのは建前であり、実のところ全社ライバルであるため、ある新機能についてA社が提案すればB社も似たような提案をし、投票をおこなえば各社自社の案に投票するという映画パイレーツ・オブ・カリビアン~ワールド・エンド~で海賊王を決めるシーンそのものな状況が続きまったく進化しなくなった。これは[[UNIX戦争]]における[[Open Software Foundation]]([[OSF]])陣営が犯した失敗と非常に似ている。 | |
− | + | これによりグラフィックボードメーカー各社の出した改善案を、[[マイクロソフト]]の独断と偏見で採用・不採用を決めるという大統領制を採用していた[[DirectX]]([[Direct3D]])の快進撃と怒涛の進化に大幅に後れを取ることとなり、仕方なくその場しのぎの独自拡張を許すこととなった。 | |
− | + | なお、Direct3Dの大統領制に追従できず淘汰されたメーカーが続出したことにより、メーカーの多さが問題の根底にあったOpenGLも改善してきたという側面もあり、OpenGLの管理がKhronos Groupに移管した時期ぐらいから進化は再開しだしている。なお今なお互換性問題は減りはしたものの相変わらずである。 | |
− | |||
== 関連項目 == | == 関連項目 == | ||
36行目: | 35行目: | ||
== 参考文献 == | == 参考文献 == | ||
− | + | {{reflist}} | |
− | + | {{stub}} | |
− | + | [[category: コンピューター・グラフィックス]] |
2022年10月26日 (水) 06:52時点における最新版
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 Foundation(OSF)陣営が犯した失敗と非常に似ている。
これによりグラフィックボードメーカー各社の出した改善案を、マイクロソフトの独断と偏見で採用・不採用を決めるという大統領制を採用していたDirectX(Direct3D)の快進撃と怒涛の進化に大幅に後れを取ることとなり、仕方なくその場しのぎの独自拡張を許すこととなった。
なお、Direct3Dの大統領制に追従できず淘汰されたメーカーが続出したことにより、メーカーの多さが問題の根底にあったOpenGLも改善してきたという側面もあり、OpenGLの管理がKhronos Groupに移管した時期ぐらいから進化は再開しだしている。なお今なお互換性問題は減りはしたものの相変わらずである。
関連項目編集
- DirectX
- PlayStation Suite SDK - OpenGLをDirect3D風にした奇妙なライブラリを搭載している。