こんにちは!
早速ですが、現在Unityで3Dのゲームを作っていて、困ったことがあります。タイトルに書いた通り、ゲームオブジェクトが勝手に動き出すのです…(自分でも何を言ってるかよくわかってません)
ゲームの簡単な全体像は、円柱の上の面に置かれている敵の円盤に向かって、自分の円盤を投げつけて、敵の円盤を円柱の上から落としたら勝ちという感じです。大きな立方体が円柱を囲んでいて、立方体に敵の円盤が当たったら敵を倒せたと判定します。
まずはこれを見てください。見ての通りPositionがどんどん変わっていってます。
次にこれを見てください。こちらは何の変化もありません。
上のgifと下のgifで違うのは、Mesh Colliderのチェックを入れているかいないかだけです。チェックを入れるか入れないかの違いだけなので、このゲームオブジェクトではないゲームオブジェクトにアタッチされているスクリプトの問題ではなさそうです。
以上のことから、Mesh Colliderにチェックを入れたから、ゲームオブジェクトが勝手に動き出したのではないかと考えられるのですが、果たしてそんなことはあるのでしょうか?
私の結論は、円盤のMesh Colliderと立方体のMesh Colliderとの当たり判定によってゲームオブジェクトが動かされているのではないか、ということです。ただ、円盤が立方体の外に出ても、円盤は動き続けていますし、立方体内の他の円盤は同じコンポーネントを持ち、Mesh Colliderをオンにしているのに動き出すことはありません。
参考までに…立方体のMesh Colliderをオフにすると円盤が勝手に動き出すことはなくなりました。また、当該の円盤をDuplicateしても同じ現象が起こりました。
回答よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
退会済みユーザー
2017/09/27 03:45
2017/09/27 03:53