Borland C++ 5.5 で Windows 用の OpenGL プログラムを作成する

OpenGL は Silicon Graphics Inc. によって オープンソースとして,ソースレベルで公開されている マルチプラットフォームの 3D グラフィックスライブラリだ。 つまり,Windows でも Mac でも Linux でも,あるいは 最先端の SGI のグラフィックスサーバや IDL という 描画システムでも,共通に 利用できる優れた財産なのだ。端的にいえば, これだけマスターしておけばどこにいっても グラフィックスはやれることになる。それがなんとタダで 利用できるのだから,使わない法はない。


コンパイル環境の構築

Borland C++ 5.5 はすでにインストールされているものとし, インストール先を c:\borland\bcc55\ であるものとして説明する。 そうでない場合には適宜読み替えること。

  1. Auxilliary OpenGL Library をインストールする
    1. Auxilliary OpenGL Libraryの圧縮ファイルをダウンロードして展開する。 →glauximp.lib, glauximp.dll が生成
    2. glauximp.libc:\Borland\bcc32\lib\PSDK に移す。
    3. glauximp.dllc:\Borland\bcc32\bin\ に移す(パスの通ったディレクトリならどこでもよい)。
  2. GLUT (OpenGL Utilty Tool Kit) をインストールする
    1. http://www.xmission.com/~nate/glut.html から, glut-3.x.x-bin.zip をダウンロードして解凍する。 → glut.h, glut.dll, glut.lib が生成。
      (同梱されたREADME-win32.txt の内容は参考にしなくてよい)

    2. 次のように各ファイルを移動する。
      glut.dll &rarr c:\borland\bcc55\bin\
      glut.h &rarr c:\borland\bcc55\include\GL\
      glut.lib, glut.def &rarr c:\borland\bcc55\lib\PSDK\
    3. glut_libs.zip をダウンロードして解凍 &rarr glu32.lib, glut.lib, glut32.lib, opengl32.lib, winmm.lib が生成。
      これらすべての lib ファイルを移動する。 &rarr c:\borland\bcc55\lib\PSDK\
    4. opengl.ft c:\borland\bcc55\include\GL\ に保存する。

  3. c:\borland\bcc55\bin\bcc32.cfg に次の行を追加する。
    -L"c:\Borland\Bcc55\lib\psdk"

    結果として bcc32.cfg は次のようになる。
    -I"c:\Borland\Bcc55\include"
    -L"c:\Borland\Bcc55\lib"
    -L"c:\Borland\Bcc55\lib\psdk"
    

以上で,OpenGL をコンパイルして実行ファイルを作成できる。

コンパイルの仕方

WinAPI を使ったソース

ソースが main 関数の代わりに WinMain を含んでいるものは, WinAPI を利用している。その場合には bcc32 のコンパイルオプションに -W を入れなければならない。
ソースファイルを foo.c とする。


bcc32 -W foo.c

OpenGL/GLUT ライブラリを使ったソース

OpenGL/GLUT ライブラリは,OpenGL で書かれたソースに互換性を持たせるための ものである。この場合にはふつうの C/C++ のように main 関数が 使われる。コンパイルにも特別のオプションは不要である。


bcc32 -W foo.c

glaux.hで定義されている関数を使う場合のコンパイル

glaux.h で定義されている定数,マクロ,関数名は AUX, auxで始まる 。→ glaux.hの内容

このときには,次のようにライブラリファイルを呼び込む必要がある。


bcc32 [-W] foo.c glauximp.lib

サンプルプログラム

SGI の OpengGLサイトから

サンプルプログラムとしては,Silicon Graphics Inc. の OpenGL 関連サイト http://www.sgi.com/software/opengl/examples/win32_tutorial/ に置かれているものが使いやすい。 → zip ファイル
これを解凍すると,下のようなファイル群が現われる。
ただし,同梱されている exe ファイルの方は DLL の問題があって 走らない。 このアーカイブファイルに 含まれている C のソースとヘッダファイル

animate.c
image.c
image.rgb
minimal.c
mouse.c
readme
simpledib.c
texture.c
texture.h
wglinfo.c
opengl.h

OpenGL/GLUT

この内容は別にまとめたコンテンツを作ったので,それを参考にしてほしい。


参考にしたサイト
これは日本語 (リンクが切れているし,記述もちょっと)
Configuring Borland C++ 5.5 for GLUT/OpenGL スウェーデンのサイト。使える。(英語)
OpenGL.org
GLUT Tutorial
SGI/OpenGL サイトの OpenGL/GLUT サンプルプログラム集