質問: いつもお世話になっております。 今回は衝突判定についてご教授いただければ幸いです。 まず、現在落ちゲームを作っていて、Aのオブジェクトを固定、Bのオブジェクトを動かすようにしています。 Bのオブジェクトを動かすのは、Scriptにて、カーソルキーを押した時にtransform.positionを座標が1動くようにして移動させています。 そのせいか、固定されているAのオブジェクトをすり抜けてしまいます。 衝突した時にそこで止まるように設定できますでしょうか? addforceで座標移動させることも考えたのですが、座標を1づつ動かしたいのでその方法は取れないのかなと。それともaddforceで1づつ移動させることは可能ですか?? Bのオブジェクトに移動制限をかける方法もやってみました。 しかし、このオブジェクトは形の違うものが数種類あり、ランダムに落ちてくるようにしているので、形によって制限する座標が違い、一定に設定することができません。 良い方法がありますでしょうか。 何卒よろしくお願いいたします。
回答: 同じサイズの2次元配列を2個用意してフィールドとします。 配列AにはAがあるところは1、ないところは0。 配列BにはBの存在情報をAと同じように。 移動キーを押されたら、その方向にBの情報を動かした配列とAを足し合わせます。 ぶつかる(重なる)場合は2になります。ぶつからなければ0と1で構成された配列のはずです。 これでBを移動更新させるか判別できるかと思います。たぶん