BROKEN's Advanced Vehicle Laboratory

Real-Time Linuxによるリアルタイム処理とOpenGL によるシミュレータの構築 (3)

index section 1 section 2 section 3 section 4 section 5 section 6
bibrography appendix A appendix B appendix C

3. OpenGLによる3次元アニメーション

OpenGLは、約350のコマンドから構成されるグラフィクス・ライブラリである。 OpenGLは以下のような特徴を持っている。

3.1 OpenGL と Mesa

OpenGL は元々、シリコン・グラフィクス社(SGI)が 商業用に開発したものであるため、無料で使用することはできない。 しかし、ウィスコンシン大学のブレイン・ポールによって開発された OpenGLと互換性を持つ Mesa ライブラリならば、 GPLというライセンスのもとで無料で使用することができる。 Mesa ライブラリはOpenGLの適合検査を通過していないため、 正式には「OpenGL」ということができない。

3.2 Mesa の入手とインストール

Mesaはインターネットで公開されているので、www.mesa3d.org から入手可能である。 インストールするには ソースコードをどこか適当なところに展開する必要があるが、 /usr/local/src あたりが妥当であろう。 ソースコードをコンパイルした後、 ヘッダファイルを /usr/local/include/GL に、 ライブラリを /usr/local/lib にコピーしてインストール完了する。 この手順については、README.X11に書いてあるので、 詳しくはそちらを参照してほしい。

3.3 簡単なアニメーションプログラム

ここでは、OpenGLによる簡単なアニメーションプログラムについて説明する。 X上で動作するサンプルプログラムを付録Bに載せておく。 サンプルプログラムには、OpenGLの作成を簡単にしてくれる glut という ツールキットを使用した。 プログラムの流れは、以下の通りである。

  1. glutおよびウィンドウの初期化、生成
  2. イベントハンドラ(コールバック関数)の登録
  3. イベント処理の開始

ここではソースコードの詳細については説明しない。 OpenGLについては文献[赤本]文献[青本]を参照してほしい。

next >>