threejs-physics について
Three.jsプロジェクトへの物理エンジン統合を支援するスキルです。シミュレーションの時間管理、コライダーの選択、トランスフォームの管理、ライフサイクルのテストを案内します。
主な機能
- 01既存エンジンとバージョンの維持
- 02ワールド作成前のランタイム初期化
- 03固定タイムステップのシミュレーション
- 04適切なコライダーの選択
- 05トランスフォームと衝突イベントの管理
- 06終了処理と実行条件のテスト
活用シーン
- 01Three.jsプロジェクトへの物理シミュレーション追加
- 02高速移動する物体の衝突調整
- 03低フレームレート時の不安定さの診断
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ cesartevisual/ threejs-skills --skill threejs-physicsインストール後、Claude Code で/threejs-physicsを入力して読み込まれたか確認します。
詳細
物理演算の統合
プロジェクトにインストール済みのバージョンと既存のアーキテクチャを使用してください。これらの指示はユーザーのタスクを補足するものであり、無関係な変更や外部での操作を許可するものではありません。
既存のエンジンとそのバージョンを確認し、要求された動作に変更が必要な場合を除き、維持してください。ワールドを作成する前に、WASM/ランタイムを初期化してください。単位、重力の方向、コライダーのスケール、各トランスフォームの制御元を設定してください。
固定タイムステップと上限付きアキュムレーターを使ってシミュレーションを進めてください。サブステップ数に上限を設け、処理停止後に余剰の経過時間を破棄するかどうかを明示的に選択してください。必要に応じて、描画時に前回と現在の物理ポーズを補間してください。複数のループからシミュレーションを進めないでください。
操作を適切に再現できる場合は、プリミティブコライダーや複合コライダーを優先してください。動的な三角形メッシュ、スケーリング、凸包に関するエンジンの制約を確認してください。見た目のメッシュが安定したコライダーになるとは限りません。高速な剛体には、コストを測定したうえで、対象を絞って連続衝突検出を使用してください。
キネマティックボディはエンジンの API を通じて動かしてください。描画用のトランスフォームを書き換えれば物理演算にも反映されると考えないでください。意図した頻度で力やインパルスを適用し、スリープ状態と衝突イベントの有効期間を適切に処理してください。イベント処理によって UI の操作が重複して発生しないようにしてください。
終了処理ではワールドオブジェクトとリスナーを解放してください。最高想定速度での衝突、静止時の安定性、低フレームレート、タブ復帰、スケール変更、リセットの繰り返しをテストしてください。選択したエンジンと設定をテストせずに、クロスプラットフォームでの決定論的なリプレイを保証しないでください。
API リファレンス
正確なシグネチャとリビジョン固有の動作については、公式ドキュメントを参照してください。ドキュメントにアクセスできない場合は、インストール済みの型やソースを確認し、残る不確実性を明記してください。