Qt Quick 3D Physics 料理

コリジョンシェイプとしてメッシュを使用する場合、効率的なコリジョン検出のためにメッシュを処理し、データフォーマットに変換する必要があります。これを「クッキング」と呼びます。使用する前にクックする必要があるシェイプタイプは、ConvexMeshShapeTriangleMeshShapeHeightFieldShape の3つです。これらのシェイプを使用する場合、クッキングはシミュレーションの最初のフレームで自動的に行われます。このクッキングには顕著なパフォーマンスコストがかかるため、ロード時間を短縮するために、メッシュを事前にクッキングし、直接ロードすることが可能です。これにはキャッシュディレクトリを使う方法とクッカーツールを使う方法があります。

キャッシュ・ディレクトリ

キャッシュ・ディレクトリを使用するには、QT_PHYSICS_CACHE_PATH 環境変数に任意のディレクトリを設定します。アプリケーションが初めて実行されたとき、使用されたメッシュはすべてクックされ、このディレクトリに保存されます。次にアプリケーションを実行するときは、クックされたメッシュはクックされる代わりにディスクから読み込まれます。

クッカーツール

もうひとつの方法はcooker 。これをビルドし、メッシュまたはハイトフィールド画像を入力引数としてツールを呼び出すだけです:

cooker input.mesh

または

cooker input.png

入力がメッシュの場合、2つのファイルが生成されます:

  • input.cooked.tri
  • input.cooked.cvx

1つのファイルは調理された三角メッシュで、もう1つは調理された凸メッシュです。これらはTriangleMeshShape::sourceConvexMeshShape::source のソースとして使用することができ、メッシュはクックすることなく読み込まれます。同様に、入力が画像ファイルの場合、input.cooked.hf というheightfieldが生成され、HeightFieldShape::source プロパティで参照することで読み込むことができます。

© 2025 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.