トップコンテンツプログラムノベルゲーム>ライブラリの導入とか(OpenGL編)



ライブラリの導入とか(OpenGL編)

ここは、このサイトでのノベルゲームプログラム作成に使うライブラリ、その中でも OpenGL で直接操作するものの紹介をします。
紹介だけで、詳しいインストール方法とかは書かないので、参考 URL を見るか、自分自身で調べるなどして各自インストールしてください。
インストール方法とかは、気が向いたときに書くこともあるかもしれない。

それでは、最初にこのページで扱うライブラリの名前を書き連ねていきます。


OpenGL 関数本体

3D のオブジェクト・アニメーションを表示するためのライブラリですが、2D の画面描画にも使えます。
ライセンスについてはよくわからないが、X11 ライセンスに似たもの?英語がわかる方はこちらのページをお読みください。
そして、理解できたら、“自分”に教えていただけるとありがたいです。

(インストール方法)
Windows →
多分 Visual C++ (無償の Express Edition で OK)をインストールすれば、最初から付いてくると思われる。 “自分”の環境の場合は、C:\Program Files\Microsoft SDKs\Windows\v7.1\Include\GL フォルダの中に GL.h, GLU.h があるので、それをインクルードすれば OK なはず。
ちなみに、lib ファイルは C:\Program Files\Microsoft SDKs\Windows\v7.1\Lib の中に OpenGL32.Lib, Glu32.Lib という名前で置いてあった。
ファイル自体がない場合、自分で SDK を落としてくる必要があり?
(注意) VC++ 2010 だと、古いバージョンのプロジェクトファイルの変換が出来ない場合もあるので、2005 とか 2008 も必要になることがあるかも

Mac → Developer Tools のインストールをしておけば、最初からついてくるはず。
linux → 不明(すいません)


GLUT ライブラリ(freeglut)

OpenGL を使って書いたプログラムの表示を行なえる、マルチプラットフォームな GUI ツール。
ただし、OpenGL の練習用に使うだけで、“自分”の場合はノベルゲームプログラム本体には使わないかも。

freeglut は MIT ライセンス。元々の GLUT は不明。
Windows はこちらのリンクからソースコードを入手してビルドしてください。
Mac の場合、freeglut ではないが、Developer Tools をインストールする時、一緒に GLUT がインストールされているはず。
Linux の場合、元から入っている場合と入ってない場合があるらしいので、入ってない場合のみ自力でインストールすること。
(参考)「GLUTによる「手抜き」OpenGL入門」インストール方法とコンパイル方法の説明は 2.3.


FreeType

フォントの描画を行なうためのライブラリ。
GPL か BSD に似た独自のライセンスかのどちらかを選べます。英語が読める方はこちら。“自分”は無理かも……。

Windows でのビルド方法は「WindowsでFTGLを使ってOpenGLで日本語フォントを表示する - yukkeのノート」を参考にどうぞ。
Mac と Linux の場合は、上記のリンクからソースコードをダウンロードしてもいいとは思いますが、パッケージ管理ソフトを使うとかなり楽です。
Mac なら、“自分”は 「MacPorts」, およびに GUI 化ツールの「Porticus」(両方とも英語版のみ?)を利用しています。
Linux の場合は、パッケージ管理ソフトが OS に最初から入っている場合が多いはず。よくわからないが。

最初は 「FTGL」 ライブラリを使おうと思ったのですが、ライセンスが LGPL だったため使うのをやめました。
趣味の範囲だけなら LGPL で構わないのですが……この先作成したプログラムを何に使うかわからないので。

すいません。上記は勘違いです。MIT License または LGPLのどちらかを選択できるみたい。
詳細はこちら


最後に

当たり前ですが、ライブラリをビルドできても、コンパイラ側がヘッダファイルやライブラリファイルの場所を見つけられないと、コンパイルに失敗します。
ライブラリファイルを VC++ などの統合開発環境で使う場合は、プロジェクトにヘッダファイル, ライブラリファイルがあるフォルダへのパスを忘れずに登録してください。
gcc を使うならコンパイルオプション(-lGLUなど) を忘れないようにしてください。
(ライブラリをビルドするときにも言えることだが。)
……まあ、パスを通していなかったせいで、昔“自分”がコンパイルミスしまくったことがあったので、念のため書いておきました。

1. ウィンドウ(OpenGL 編)へ