glm とは,OpenGL ベースで動く,OBJ 形式ファイル (Wavefront obj, mtl 形式ファイル)の読み込みと描画の機能を持ったソフトウエア.
ソースコードが公開されいますので,C++ プログラムに組み込んで使うのに便利でしょう(ライセンス条項は各自で確認のこと)
インストール前に「yum check-update; yum update」を実行しておくとトラブルが減るでしょう. これは更新可能な全パッケージを更新するという操作です.
yum check-update yum update
次のソフトウエアをインストール済みであること.
※ 下記のように「yum install <パッケージ名>」で簡単にインストールできる.
yum install gcc yum install libtool yum install make yum install libjpeg* yum install libpng-devel yum install libtiff-devel yum install allegro* yum install SDL-static yum install SDL_* yum install mingw-SDL yum install boost* yum install OpenGL* yum install freeglut*
cd /tmp tar -xvzof simage-1.6.1.tar.gz cd simage-1.6.1 ./configure make make install
※ ビルド時にエラーが出ることがある. その場合には,http://www.coin3d.org/lib/simage/ から Linux 用のパッケージをダウンロードしインストールすることを検討する. なお,「simage が必須」というわけではないので,深く悩まないこと.
DevIL とは,種々の画像を簡単にロード,セーブ,変換,操作,フィルタ,表示できるライブラリプログラム
cd /tmp unzip DevIL-1.7.8.zip cd devil-1.7.8 chmod 755 configure ./configure --with-examples make make install
cd /tmp tar -xvzof /tmp/glm-0.3.1.tar.gz
変更前
int Help_Font = (int) GLUT_BITMAP_8_BY_13
変更後
void * Help_Font = GLUT_BITMAP_8_BY_13
cd /tmp cd glm-0.3.1 ./configure --with-devil=/usr/local --with-sdl-image=/usr
※ エラーメッセージが出ないことを確認すること.
make
※ エラーメッセージが出ないことを確認すること.
make install
ビューワ・プログラムが examples/smooth, examples/glutobj, examples/game_glutobj というファイル名で生成される
最初の 3つは, http://devernay.free.fr/hacks/glm/ で配布されているサンプルデータのもの
./game_glutobj hurt.obj
./game_glutobj HOUSTON.obj
./game_glutobj ansgenx3_last.obj
※ 3次元地図表示の例
簡単にビルドできる.
設定例
OBJ ファイルの種類によっては,Linux では表示できるけれども,Cygwin では表示できないという現象が出る(同じソフトで,同じようにビルドしたのに・・・).