![]() | |
![]() | |
| 開発者 | ソースフォージのプロジェクト |
|---|---|
| 書かれた | C、C++ |
| オペレーティング·システム | クロスプラットフォーム |
| タイプ | ミドルウェア |
| ライセンス | 3条項BSDライセンス |
| Webサイト | www.adrianboeing.com/pal/index.html |
物理抽象化レイヤー( PAL ) は、オープンソースのクロスプラットフォーム物理シミュレーションAPI抽象化システムです。物理エンジンラッパーに似ていますが、はるかに柔軟性が高く、拡張機能を備えています。PAL はフリー ソフトウェアであり、BSD ライセンスの下でリリースされています。[1]
PAL は、ゲーム、シミュレーション システム、その他の 3D アプリケーションで使用される低レベルの物理エンジン用の高レベルのインターフェイスです。剛体、液体、ソフト ボディ、ラグドール、車両ダイナミクスなど、さまざまな動的シミュレーション手法をサポートしています。PAL は、シンプルなC++ APIと直感的なオブジェクト (ソリッド、ジョイント、アクチュエータ、センサー、マテリアルなど)を備えています。また、 COLLADA、Scythe Physics Editor、XMLベースのファイル ストレージも備えています。
物理抽象化レイヤーを使用すると、物理エンジンを直接使用する場合に比べて、次のような多くの利点が得られます。
- 柔軟性 - 開発者はさまざまな物理エンジンを切り替えて、どのエンジンがニーズを満たしているかを確認したり、新しいエンジンをすばやくテストしたりできます。
- ポータブル- 開発者は、さまざまなプラットフォームで最高のパフォーマンスを提供する物理エンジンを使用でき、プラットフォームに依存しないコードを作成できます。
- セキュリティ -ミドルウェアプロバイダーが別の会社に買収されたり、開発が中止されたりした場合、開発者はエンジンを切り替えることができます。
- スケーラブル– 抽象化レイヤーにより、開発者はハンドヘルドコンソールプラットフォームからスーパーコンピューターまで、さまざまなプラットフォームでコードを実行できます。
- 使いやすさ - 物理エンジンの実装の詳細が抽象化され、開発者にとってよりクリーンなインターフェースが提供されます。
- ベンチマーク- 研究者はさまざまな動的シミュレーションシステムのパフォーマンスを直接比較できます。
PAL はプラグ可能な 抽象ファクトリを使用して設計されており、コードを一度記述してコンパイルするだけで、実行時にさまざまな物理エンジンを選択したり、機能をアップグレードしたりすることができます。
サポートされているエンジン
PAL は、以下を含む複数の物理エンジンをサポートしています。
- ボックス2D
- 弾丸
- ニュートンゲームダイナミクス
- オープンダイナミクスエンジン
- PhysX (旧 NovodeX、Meqon を組み込んだもの)
- トカマク物理エンジン
サポートされているファイル形式
PALは、以下の複数のファイル形式をサポートしています。[2]
- コラーダ
- Scythe Physics Editorファイル形式
- テキスト
ベンチマーク
PAL プロジェクトは、一連の標準ベンチマークを提供します。これにより、開発者は物理エンジンを直接比較し、計算効率と物理的精度の点で最適なソリューションを提供するエンジンを選択できます。ただし、エンジンは PAL がサポートしていない方法で調整される可能性があるため、実際に使用するエンジンを決定する際には注意が必要です。
参考文献
- ^ 「PAL: Physics Abstraction Layer: Home」。www.adrianboeing.com 。 2024年11月3日閲覧。
- ^ 「OPAL: Open Physics Abstraction Layer」. tyl.st . 2024年11月3日閲覧。
外部リンク
- PAL公式サイト
- インタラクティブPALベンチマーク


