Irrlicht Engine

From Wikipedia, the free encyclopedia

Irrlicht Engine(イルリヒト・エンジン)は、C++で書かれたオープンソースの3次元ゲームエンジン。公式にも WindowsmacOSLinuxWindows CE とクロスプラットフォームで動作し、そのオープンな性質からXboxPlayStation Portable[2]Symbian OS[3]iPhone[4]Google Native Client[5]にも移植されている。

開発元 Nikolaus Gebhardt 他
初版 14 March 2003
最新評価版
ウィキデータを編集
安定版
1.8.5[1] / 2021年11月1日 (4年前)
概要 開発元, 初版 ...
Irrlicht 3D Engine
 ウィキデータを編集
Irrlicht 3D Engine の公式ロゴマーク。
開発元 Nikolaus Gebhardt 他
初版 14 March 2003
最新評価版
ウィキデータを編集
安定版
1.8.5[1] / 2021年11月1日 (4年前)
リポジトリ ウィキデータを編集
プログラミング
言語
公式:C++
非公式:.NET Framework、Java、Perl、Rub、Python、FreeBASIC、Lua、Delphi、C++ Builder、AutoIt、Game Maker
対応OS Linux、Microsoft Windows、macOS、Solaris
対応言語 英語のみ(?)日本語対応しているかは分かりません。
種別 アプリケーションフレームワーク、無料且つオープンソース3次元ゲームエンジン
ライセンス zlib License
公式サイト irrlicht.sourceforge.net ウィキデータを編集
テンプレートを表示
閉じる

Irrlichtは、オブジェクトが小さく、各種ハードウェアへの移植性・互換性が高く、学習が容易で、コミュニティ[6][7]が活発である。非公式の各種言語バインディングにより、.NET[8]Java[9]Perl[10]Ruby[11]Python[12]FreeBASICLua[13]Delphi[14][15]C++ Builder[16]AutoIt[17]Game Maker[18] などに対応している。

Irrlichtの開発は2003年に Nikolaus Gebhardt がたった1人で始めた[19]。2006年に 1.0 をリリースすると、開発チームは10人となった[20]

機能・特徴

Irrlichtは、OpenGLDirectX 8 および 9、内部のソフトウェアラスタライザ経由での3次元グラフィックスのレンダリングを対応(サポート)している。外部レンダラーやウィンドウシステムは単純なインタフェースでプラグインでき、それによってSDLiPhoneSymbian OS への対応がコミュニティでなされた。エンジンには標準的なマテリアルレンダラーのライブラリが付属しており、ユーザーのハードウェアが処理できない高度な技法を使っている場合に代替マテリアルを提供できる。新たなマテリアルは実行時にエンジンに追加でき、ユーザー独自のマテリアルを好きなように追加可能である。従来からの固定機能パイプラインのマテリアルに加え、プログラマブルなピクセルシェーダーとバーテックスシェーダー(1.1 から 3.0)、ARBフラグメント/バーテックスプログラム、HLSLCgおよびGLSLマテリアルを対応(サポート)している。

Irrlichtでのピクセル単位照明

Irrlichtは豊富なファイルフォーマットを対応(サポート)している。3ds Max のファイル、Quake 2 MD2 モデル、Maya .obj オブジェクト、Quake 3 .bsp マップ、MilkShape 3D のオブジェクト、DirectXの .x ファイルなどをロードし表示できる[21]。さらなる3Dフォーマットは外部プラグインで対応(サポート)している。照明、カメラ、3Dオブジェクトは 'Scene Nodes' と呼ばれる木構造として、汎用アニメータで管理されるか、ノードが相互に管理するか、ユーザーが手動で操作する。組み込みの各種ノード型があり、それらを利用して複雑なシーンを描くことができ、新たなノード型を実行時に追加することも容易で、追加ノード型はコミュニティからも供給されている。組み込みのノード型としては、屋外シーン描画用の地形レンダラーや天球、屋内シーン描画用のBSP、骨格ベースのアニメーション用メッシュ、ステンシルシャドウ、ビルボードシステムやパーティクルシステム、水面などがある。

スキンを設定可能な2DGUIがあり、ユーザーは実行時に独自(またはコミュニティ製)のウィジェットをプラグインして使うことができる。Irrlichtのイベントシステムはマウス、キーボード、ジョイスティック、GUIイベントなどを直接扱うことができ、別のライブラリを必要としない。

ファイルシステムアクセスはプラットフォームに依存しないようファイルとフォルダに抽象化されていて、Zipアーカイブ内のファイルにも透過的にアクセスできる。その他の入出力関連機能としては、XMLの読み書き、スクリーンショットをとる機能、画像やメッシュの操作機能、各種ファイルフォーマットでのセーブ機能がある。

Irrlichtは単純な衝突検出機能を対応(サポート)しているが、完全な物理演算エンジンの代替として利用することは推奨されていない。

拡張

そのオープン性から多くのプログラマや開発者がIrrlicht用ワールドエディタを開発している。Irrlichtには、現在のシーンをXMLファイルとしてロード/セーブする機能がある。作者である Nikolaus Gebhardt の会社 Ambiera が開発したワールドエディタとして irrEdit[22] がある。まだ初期のベータ版ながら、IrrEditには強力なラジオシティライトマップ生成器とSquirrelスクリプトを使ったインタフェースがあり、Irrlichtを強力に対応(サポート)する。他にも Sourena 3D World Editor などが開発中である。

Irrlichtは音声を対応(サポート)していないため、AmbieraはIrrlichtと連携して使用する音声ライブラリ irrKlang も開発している。irrKlang対応のDLLをirrEditで使うことができ、同等の音声をirrEditでも対応(サポート)できる。

他にもAmbieraはIrrlichtのXMLパーサ irrXML も開発している。

その他の拡張は関連するコミュニティのサイトなどにある。

関連項目

脚注・出典

外部リンク

Related Articles

Wikiwand AI