PhysX
開発元NVIDIA Corporation
最新版9.18.0907 / 2018年9月18日 (5年前) (2018-09-18)
リポジトリ
github.com/NVIDIAGameWorks/PhysX-3.4
PhysX(フィジックス/フィジクス[1])とはNVIDIAが開発・提供している、リアルタイムの物理演算エンジン。 ソフトウェアがPhysXのハードウェアアクセラレーションに対応している場合、CUDAが使用可能なGeForce(8シリーズ以降の製品)のうち、32以上のコア、256MB以上のグラフィックスメモリを搭載する製品でハードウェアアクセラレートが可能である[2]。 PhysXのハードウェアアクセラレーションは、日夜進化を続けるコンピュータゲームにおける物理演算をCPUから肩代わりする事で動作スピードの上昇を目指したものである。汎用プロセッサであるCPUのパフォーマンスでは不可能に近い「爆発によって飛び散った破片を毎回ランダムに演算する」等の複雑かつ高負荷な描写を、事前作成済み動画の読み出しなどではなく、実際にその場で演算してリアルタイムに描写することが可能になるとされている。対抗とされる物理演算システムとしてはHavokが挙げられる。 PhysXは様々なプラットフォームで500以上のゲームに使われている[3]。 開発元は米カリフォルニア州に本拠を置いていたAgeia
概要
歴史
PhysX SDK 2.8.3からPhysics processing unit(英語版)(PPU)のサポートが打ち切られた[5]。 PhysXは以下のプラットフォーム上で動作する[6]。 いずれのプラットフォーム用SDKも無料で配布されている。これらのうち、PC用のSDKはNVIDIA社のPhysX SDK ダウンロードページ[7]より直接入手する事ができる。NVIDIA社スタッフによるサポート及び開発支援ツールが有償で提供されているが、これらを利用しない限りは商用利用を含めて無料である。 PhysXはUnreal EngineやUnity (ゲームエンジン)にも統合されている。 PhysXでは2023年@media screen{.mw-parser-output .fix-domain{border-bottom:dashed 1px}}現在[いつ?]、以下の機能がサポートされている。 この節には独自研究が含まれているおそれがあります。問題箇所を検証し出典を追加して、記事の改善にご協力ください。議論はノート
対応プラットフォーム
PC (Windows/Linux/macOS)
PlayStation 3
PlayStation 4
Xbox 360
Xbox One
Wii
Android
iOS
PhysXの機能
剛体物理
衝突判定
各種関節
ラグドール
摩擦力の考慮
衝突の検知
オブジェクトをグループ化し、衝突判定のON・OFF切り替え
1軸方向のみに物理作用を限定
接触通知
先進的なキャラクタコントロール
乗り物のための動力学
マルチスレッド・マルチプラットフォーム
流体シミュレーション
布シミュレーション
軟体の表現
フォースフィールドの表現
問題点と今後.mw-parser-output .ambox{border:1px solid #a2a9b1;border-left:10px solid #36c;background-color:#fbfbfb;box-sizing:border-box}.mw-parser-output .ambox+link+.ambox,.mw-parser-output .ambox+link+style+.ambox,.mw-parser-output .ambox+link+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+style+.ambox,.mw-parser-output .ambox+.mw-empty-elt+link+link+.ambox{margin-top:-1px}html body.mediawiki .mw-parser-output .ambox.mbox-small-left{margin:4px 1em 4px 0;overflow:hidden;width:238px;border-collapse:collapse;font-size:88%;line-height:1.25em}.mw-parser-output .ambox-speedy{border-left:10px solid #b32424;background-color:#fee7e6}.mw-parser-output .ambox-delete{border-left:10px solid #b32424}.mw-parser-output .ambox-content{border-left:10px solid #f28500}.mw-parser-output .ambox-style{border-left:10px solid #fc3}.mw-parser-output .ambox-move{border-left:10px solid #9932cc}.mw-parser-output .ambox-protection{border-left:10px solid #a2a9b1}.mw-parser-output .ambox .mbox-text{border:none;padding:0.25em 0.5em;width:100%;font-size:90%}.mw-parser-output .ambox .mbox-image{border:none;padding:2px 0 2px 0.5em;text-align:center}.mw-parser-output .ambox .mbox-imageright{border:none;padding:2px 0.5em 2px 0;text-align:center}.mw-parser-output .ambox .mbox-empty-cell{border:none;padding:0;width:1px}.mw-parser-output .ambox .mbox-image-div{width:52px}html.client-js body.skin-minerva .mw-parser-output .mbox-text-span{margin-left:23px!important}@media(min-width:720px){.mw-parser-output .ambox{margin:0 10%}}