1

私はこれまでずっと、この衝突応答に悩まされてきました。皆さんの指導をお願いしたいと思いました。

http://jsbin.com/qoyuciti/1 編集リンク: http://jsbin.com/qoyuciti/1/edit?html (jsbin 編集モードでは移動キーを使用できないことに注意してください (知る))

この JSBin は、私が現在持っているものを示しています。私は動き回ることができ、ボックスに当たったときに谷に行かず、ボックスから滑り落ちます。2 つの問題があります。

  1. 左に滑空するとすべてうまくいき、右に滑空すると「ホッピング」が始まります。
  2. 20 秒ほど衝突した後、球体がボックスを通過することがあります。これは、右に滑空するときに経験している「ホッピング」と何か関係があるのではないかと思います。

私のアプローチの簡単な説明

ユーザーが歩き始め、ボックスと交差するとすぐに、球の前にある 180 度の円錐 (ユーザーが向いている方向) で交差のテストを開始します。空いている場所が見つかるとすぐに、そこにプレイヤーが配置されます。

誰かがより良いアプローチを持っている場合は、私に知らせてください。コードを説明していると、これはより効率的になるようですが、お知らせください:)

前もって感謝します!

4

2 に答える 2

2

おそらく内部衝突システムを使用できますが、偽のフリーカメラを作成し、球をカメラの子として追加します。次に、キーを使用してカメラを移動すると、自動的に babylonjs が衝突を計算します。

それ以外の場合は、プライベート関数 scene._getNewPosition を使用して衝突エンジンを直接使用することもできます

于 2014-05-05T15:33:51.873 に答える