「プログラミング」タグアーカイブ

Irrlicht日本語対応版IrrlichtML 1.4をリリースしました

報告が遅れましたが、IrrlichtML 1.4をリリースしました。

Irrlicht 1.4

今バージョンから実行ファイルコンパイル時に使われていたFreeType2ヘッダーが不要になりました。通常のIrrlichtと同じ感覚で使用出来ます。しかし、この変更に伴いCGUITTFontクラスに直接アクセス出来なくなります。AntiAliasやTransParencyの設定はフォント読み込み時だけ可能です。

また、Linux用Makeファイルも添付しました。Ubuntu7.10でテストしてあります。実は今まで些細なミスによりLinuxでコンパイル出来ない状態でした。uirou氏が以前報告してくれたミスはこれだったようです。修正を忘れてしまって申し訳ありませんでした。

ちなみにUbuntu上では、コンパイルは通るようにしてありますが、日本語入力が機能していません。今回は不具合のあるままリリースしてあります。 Linuxプログラミングは始めたばかりなので修正には時間がかかりそうです。もし、LinuxでIrrlichtを使用している方がおられましたら、XIM周りのソースをチェックしてくれると嬉しいです。

Irrlicht 1.4、大規模な修正を施して正式リリースされる

Irrlicht 3D Engine

12月1日未明、ついにIrrlicht 1.4が正式リリースされました。変更点は過去の記事「Irrlicht 1.4βリリース」、「const修飾子の受難」等を参照してください。

β版ではアプリケーションを終了するとデバイスエラーを起こすバグもありましたが、正式版ではしっかりと修正されたようです。

ダウンロードはこちらから。

Irrlicht 1.4 (Irrlicht公式)

Linuxに統合環境Code::Blocksをインストールする方法

開発統合環境(IDE)の一つであるCode::Blocks(i386版)Ubuntu7.10 gutsy ja版にインストールする方法を紹介します。英語版も同様の手順。Code::BlocksはwxWidgetsをGUIライブラリに使うC/C++コンパイラで、nightly buildからはD言語等に対応しました。Visual Studioのような使用感の統合環境です。

※上から順を追ってコマンドを入力して行って下さい。スクロールバーに隠れてコマンドが読めない場合は、ブラウザの横幅を可能な限り広げてみて下さい。

始めに開発用パッケージ一式(g++)をインストールします。

$ > sudo apt-get install build-essential

デバッガをインストールします。

$ > sudo apt-get install gdb

wxWidgetsの最新版をインストールします。元からあるUbuntuリポジトリのものは古いのでwxWidgets公式のリポジトリから取得します。もし、Ubuntu側のパッケーを既にインストールしているのならば、不具合が起きないように念のため削除しておくといいでしょう。

wxWidgets公式リポジトリを追加します。[システム]-[システム管理]-[ソフトウェア・ソース]-[サードパーティのソフトウェア]に以下のURLを入力してください。distnameはお使いのバージョンに合わせて置き換えてください。

deb http://apt.wxwidgets.org/ distname main
>>distname = gutsy-wx, feisty-wx, edgy-wx

タブ[認証]にwxWidgets公式パッケージの公開暗号鍵を登録します。

$ > wget -q http://apt.wxwidgets.org/key.asc -O- | sudo apt-key add -

wxWidgetsをインストールします。バージョン番号はCode::Blocksに合わせ最新のもの置換してください。

$ > sudo apt-get install libwxgtk2.8-0 libwxgtk2.8-dev wx2.8-headers wx-common

ここからメインのCode::Blocksのインストールです。現在、公式サイトからは安定版が配信されていません。nightly buildも長らくWindows用バイナリしか公開されていないようです。そこで、pasgui氏が用意してくれた公開リポジトリからLinux(i386)版をインストールしましょう。

pasgui氏のサイトLGPをリポジトリに登録します。wxWidgetsの登録方法と同様に以下のURLを追加してください。

deb http://lgp203.free.fr/ubuntu/ distname universe
>>distname = gutsy,feisty,edgy

必要ならソースコードのリポジトリも追加。

deb-src http://lgp203.free.fr/ubuntu/ distname universe
>>distname = gutsy,feisty,edgy

LGPの公開暗号鍵を登録します。

$ > wget -q http://lgp203.free.fr/public.key -O- | sudo apt-key add -

ソフトウェア・ソース リポジトリ一覧

Code::Blocksパッケージ一式をインストールします。

$ > sudo apt-get install libcodeblocks0 codeblocks libwxsmithlib0 codeblocks-contrib

以上でCode::Blocksのインストールが完了しました。[アプリケーション]-[プログラミング]-[Code::Blocks IDE]から起動できます。初回にインストール済みコンパイラを自動検出して設定してくれますので、表示されたウィンドウのOKボタンを押して作業を再開してください。

Code::Blocks nightly build on Ubuntu(i386)

それにしても煩雑な作業でした。Ubuntu公式リポジトリに登録されて、もっと楽にインストール出来るようにして欲しいです。2008年11月03日追記:Ubuntu 8.10以降はパッケージマネージャから公式版をインストール出来るようになりました。nightly buildでなくても構わないなら使ってみてはいかがでしょうか。

ちなみに、この他のIDEにKDevelopというのも存在します。こちらはパッケージマネージャに登録されていますので簡単にインストール可能です。

参考文献:How to download binaries (LGP) / Ubuntu packages of Code::blocks nightly builds (LGP) / Installing Code::Blocks nightly build on Ubuntu (Code::Blocks)

LinuxでIrrlichtをコンパイルする方法

Ubuntu7.10 gutsy ja版でIrrlichtをコンパイルする方法を紹介します。英語版でも手順は同じです。

Irrlichtサンプル 01.HelloWorld on Ubuntu7.10

まずはIrrlicht公式サイトからSDKをダウンロードし解凍てください。

Irrlicht SDK ダウンロード (公式)

解凍後、gcc等の開発用パッケージをインストールします。

$ > sudo apt-get install build-essential

コンパイルが可能になりました。source/Irrlichtをカレントディレクトリにしてmakeしてみましょう。

$ > make

OpenGLとX11関連の定義が足りないと言うエラーが出ると思います。そこで、これらの開発用ライブラリを追加します(既にランタイムだけはインストール済のものです)

$ > sudo apt-get install freeglut3-dev libxxf86vm-dev

再度makeをしてみればlib/LinuxにlibIrrlicht.aが無事作成されます。Irrlicht本体のコンパイルはこれで完了!

*もし、まだエラーが出たら?

include/IrrCompileConfig.hを使用環境に合わせて編集します。

$ > gedit include/IrrCompileConfig.h

OpenGLエラーなら_IRR_OPENGL_USE_EXTPOINTER_をdefineします。その他X11関連のエラーなら_IRR_LINUX_X11_VIDMODE_をコメントアウトするか、_IRR_LINUX_X11_RANDR_を定義してみてください。X11の定義はどちらかが有効になっていないと、フルスクリーンモードが使えなくなります。

最後にサンプルのコンパイル方法を補足しておきます。サンプルは該当ディレクトリでmakeすればbin/Linuxに実行ファイルが作成されます。しかし、01.HelloWorld以外はソースコードの修正が必要。大半のサンプルはデバイスが実行時選択方式になっているかDirectX9が指定されてします。このままでは上手く起動しません。ドライバタイプをvideo::EDT_OPENGLに固定してしまいましょう。

その他、compiz fusionの3Dデスクトップをお使いの場合は、IrrlichtをOpenGLデバイスで動かしたときに、タイトルバーが消失する不具合があります。ウィンドウが移動出来なくなるだけで特に問題でもないですが、鬱陶しいと思われたら[システム]-[設定]-[外観の設定]-[視覚効果]効果なしにしてください。

参考文献:Compiling On Linux (Irrlicht wiki) / Installing Irrlicht - Ubuntu (Irrlicht wiki)