OpenGL Utility Toolkit

OpenGL Utility Toolkit (GLUT) とは、リアルタイム3次元コンピュータグラフィックスAPIのひとつであるOpenGLのバージョン1.1[1]に準拠したユーティリティツールキット(ライブラリ)である。GLUTはC言語形式の関数群で構成されている。

OpenGL Utility Toolkit (GLUT)
作者Mark J. Kilgard
開発元シリコングラフィックス
最新版
3.7 / 1998年5月7日 (26年前) (1998-05-07)
リポジトリ ウィキデータを編集
プログラミング
言語
C/C++
対応OSWindows, macOS, Linux
プラットフォームクロスプラットフォーム
種別ライブラリ/フレームワーク
公式サイトwww.opengl.org/resources/libraries/glut/
テンプレートを表示

シリコングラフィックス (SGI) やマーク・キルガード英語版Mark J. Kilgard)によって開発された。

WindowsmacOSLinuxなどのUnix系オペレーティングシステム (OS) で使用できる。

概要

OpenGL向けの基本的な拡張ライブラリとしては、同次変換行列の生成などを補助するGLU (OpenGL Utility Library英語版) が存在するが、GLUTはGLUにない下記の機能を持つ。

GLUTは単なるユーティリティにとどまらず、フレームワーク的な機能も併せて持っており、シンプルな構成でありながら初学者にとって面倒なウィンドウウィジェットの生成処理などを自動化してくれるため、OpenGLの補助ライブラリの中でも特に広く使用されており、グラフィックスプログラムのプロトタイピングや入門書などでも用いられている[2]

OpenGL関数にglプレフィックスが付けられているのと同様に、GLU関数にはgluプレフィックスが、またGLUT関数にはglutプレフィックスがそれぞれ付けられている。

GLUTはソースコードが公式サイトにて公開されている。パブリックドメインではなく、また無保証だが、ライセンス料を支払うことなく無償で利用できる[3]

なお、Microsoft DirectX (Direct3D) 用のGLUT風フレームワークライブラリとして、DXUTが存在する[4]。DXUTはC++専用で、GLUTのようなコールバック形式のフレームワークに加えて、ボタンやドロップダウンリストなどのGUI部品もサポートしている。

問題点

GLUTはメインループに突入した後、終了時にウィンドウをクローズする際にメインループから抜け出す手段が用意されておらず、exit関数を使うなどして半強制終了するしかない。また、マウスホイールなどのサポートがない。GLUTからフォークし、これらの欠点を改善したFreeGLUTなどの派生ライブラリが開発されている。

なお、GLUTは最終版3.7のリリースが1998年であるが、その後グラフィックスカードの進化とともに廃止されたOpenGL固定機能(OpenGL 3.1以降で廃止)に依存している。そのため、最新のOpenGL機能を利用するときに、OpenGLレンダリングコンテキストの作成処理が隠ぺいされているGLUTでは不都合がある[5]。レンダリングコンテキストの作成時にプロファイル種別を指定できるGLFW英語版などの新しい後発ライブラリやツールキットによって、GLUTはとって代わられつつある。

脚注

関連項目

外部リンク

🔥 Top keywords: 中村靖日メインページ特別:検索北条時行伊礼彼方ドナルド・トランプ斎藤元彦石丸伸二アメリカ合衆国シークレットサービスカルロス・アルカラス高橋マイケル藤原彰子膳場貴子紫式部KEYTALK逃げ上手の若君ブラックペアン1988ウイリー・ドーシー新木優子安野貴博キングダム (漫画)SHISHAMOシークレットサービスノバク・ジョコビッチ海の日シャナン・ドハーティー一条天皇鈴木保奈美藤原定子大弐三位五大院宗繁岡部たかし菊池こころキングダムの登場人物一覧大空幸星時々ボソッとロシア語でデレる隣のアーリャさんケネディ大統領暗殺事件藤原道長安倍晋三銃撃事件