Crystal Spaceは、Jorrit Tyberghein氏によって
C++で開発された、3Dアプリケーション開発のための包括的なフレームワークです。1997年
8月26日に最初の一般向けリリースが行われました。当初はゲームエンジンとしての利用が主でしたが、その汎用性の高さから、さまざまな3D視覚化の分野で活用されています。
幅広いプラットフォームに対応
Crystal Spaceは、移植性に優れており、
Microsoft Windows、GNU/
Linux、
UNIX、Mac OS Xといった主要なオペレーティングシステムで動作します。
ライセンスは
GNU Lesser General Public Licenseに準拠しており、自由ソフトウェアとして提供されています。その功績から、2003年2月には
SourceForge.netのProject of the Monthに選出されました。
オプション機能
グラフィックスAPIとして
OpenGLを標準でサポートしていますが、オプションで
SDL、X11、SVGALibなども利用できます。また、パフォーマンス向上のために、NASMと
MMXを活用したアセンブリ言語ルーチンを組み込むことも可能です。
Crystal Spaceは、
オブジェクト指向の
C++で記述されており、高いモジュール性を誇ります。各機能は独立した
プラグインとして構成されており、クライアントプログラムはこれらの
プラグインを必要に応じて組み合わせて利用できます。例えば、
OpenGL 3Dレンダラーなどの
プラグインを利用するには、Crystal SpaceのShared Class Facility (SCF) に登録する必要があります。
豊富な機能
Crystal Spaceは、2Dグラフィックス、3Dグラフィックス、サウンド、衝突検出、ODEやBulletを用いた物理演算など、多岐にわたる機能を備えています。
グラフィックス
OpenGLレンダリングに対応
主要なグラフィックカードの
ハードウェアアクセラレーションをサポート
シェーダーの利用が可能
法線マッピング、視差マッピング、ハードウェアスキニングなど、高度なシェーダーライブラリを提供
ソフトウェアレンダリングもサポート(機能は限定的)
メッシュオブジェクト
プラグインベースのメッシュシステムを採用
三角形メッシュ(フレームおよび骨格アニメーションをサポート)
衝突検出と力学計算
ODEとBulletによる本格的な力学計算
簡易な衝突検出も可能
関連情報
Crystal Spaceは、ゲームエンジンとしてだけでなく、3Dシミュレーション、可視化、インタラクティブアプリケーションなど、幅広い分野で利用されています。その柔軟性と拡張性の高さから、プロフェッショナルからアマチュアまで、多くの開発者に支持されています。
外部リンク
公式サイト
コミュニティサイト
Crystal Spaceの詳細およびレビュー