OpenGL 単語


ニコニコ動画でOpenGLの動画を見に行く

オープンジーエル

1.7千文字の記事
これはリビジョン 2843276 の記事です。
内容が古い・もしくは誤っている可能性があります。
最新版をみる

OpenGL(Open Graphics Library、オープングラフィックスライブラリー)とは、クロノスグループが策定したコンピューターグラフィックAPIの仕様である。

概要

元々はシリコングラフィックスによる内部グラフィックスシステムであったIrisGLを改良し、そのAPI仕様を公開したもの。一般公開されているため、多くの機器、OSに対応するクロスプラットフォーム設計(WindowsMacOSLinuxなど基本ソフトを気にしなくてもいいまさに神様仏様のような設計)である。

OpenGLはソフトウェアのように説明されるが、ソフトウェアではなくプログラムする上でのお約束みたいなもの。

モバイルデバイス向けに機能が簡略化された「OpenGL ES」や、Web上での軽快な動作を目的とした「WebGL」も開発されている(話が長くなるのでそれぞれのページに丸投げ)。

3DCG用の機能中心だが、2Dにも十分利用可能。ただしあくまでグラフィックAPI仕様であるため、音声や入出力などは他のライブラリ、コードが必要。またレイトレーシングや文字表示も単体では処理できない。得意分野についてもOpenGLを直接使うのは敷居が高く、FreeGLUTなどのプログラミング補助ライブラリが用いられることが多い。

Windowsに代表されるマイクロソフト社製プラットフォーム限定のDirect3Dは一度統合を目指したこともあったが結局頓挫しており、要求するハードウェアの特性やAPIの違いは埋められていない。

かつては更新が遅いことで知られていたが、近年はDirect3Dにほぼ歩調を合わせた進歩を遂げるようになっている。

実際のソフトウェア開発現場ではOpenGLを直接扱うのは大変なので、有能でかつかわいいユニティちゃん(Unity3D)などゲームエンジンに丸投げするのが主流である。

CPUオーバーヘッド等の問題

OpenGLにはGPUの仕様の差を埋める目的もあり、その差分計算はCPUが担当する(CPUオーバーヘッド)。当然CPUに余計な計算をさせてしまい本来の性能が発揮できない。近年はこのようなことをしないようにライブラリを作る方向である※1。そのような新たな設計をされた後継ライブラリがVulkanである。

アップル社の非推奨化

2018年6月5日、米アップル社は今後はOpenGLを非推奨とするアナウンスを行った。同社のOSでのOpenGL環境をいつまで維持するかは不明である。同社は代わりとして独自のグラフィックAPI「Metal」を徐々に採用している。

推奨しないよなので今後も使えると思う。安心してね。


※1 ローオーバーヘッドAPI、ローレベルAPI(Low level API)

歴史

  • 1992年 Ver.1.0リリース(初版)。
  • 1997年 Ver.1.1リリース。Windows標準VGA標準ドライバーに同梱されているのがこれである
  • 1998年 Ver.1.2リリース。
    参考文献 History of OpenGL(英語) OpenGLWiki

主なアプリケーションソフト

  • Minecraft(マインクラフト) - マイクロソフト社のサンドボックスゲーム
  • SecondLife(セカンドライフ) - 米LindenResearch(リンデンリサーチ)社の開発スタジオLindenLab(リンデンラボ)のメタバース

関連動画

プログラミング環境としてはたとえばMicrosoft社VisualStudioのVisualC++を用いる。→VisualStudio

外部リンク

公式サイト
http://www.opengl.org/

日本SGI
http://www.sgi.co.jp/

関連項目

  • OpenGL ES
  • WebGL
  • GLUT - OpenGL Utility Toolkit。20年以上メンテナンスがされていない。
  • FreeGLUT - 2020年現在こちらを用いて開発をするもよう。Windows上であればNuGetを使い簡単に導入できる。
  • DirectX - Windows用のライブラリ。2020年現在最新版はDirectX12。

おすすめトレンド

ニコニ広告で宣伝された記事

記事と一緒に動画もおすすめ!
もっと見る

急上昇ワード改

最終更新:2025/12/15(月) 01:00

ほめられた記事

最終更新:2025/12/15(月) 01:00

ウォッチリストに追加しました!

すでにウォッチリストに
入っています。

OK

追加に失敗しました。

OK

追加にはログインが必要です。

           

ほめた!

すでにほめています。

すでにほめています。

ほめるを取消しました。

OK

ほめるに失敗しました。

OK

ほめるの取消しに失敗しました。

OK

ほめるにはログインが必要です。

タグ編集にはログインが必要です。

タグ編集には利用規約の同意が必要です。

TOP