二つの2D Object(Sprite)に衝突判定を付けたいのですが、素通りしてしまって困っています。
2D Object Sprite 『One』にテクスチャ(420600)とBox Collider 2Dとメインのスクリプト
もう一つのObjectが
2D Object Sprite 『Two』にテクスチャ(420600)とBox Collider 2D
それぞれのBox Collider 2DのsizeはX:4.2,Y:6とあるのでテクスチャ画像と同じサイズの
当たり判定が入っていると考えています。
メインのスクリプトで「One」の方に右に移動させ、
「Two」に衝突時に停止するように考えているのですが、完全に素通りします。
わざとOnCollisionStayも加えてみたのですが、こちらも無視されているので、
メソッド自体に入っていないようです。
ですので、極めて初期での見落としがあると思うのですが、ご指導いただけたらと存じます。
One(スクショの時はPlayerOne)とTwoのInspector欄です
Unity
1using System.Collections; 2using System.Collections.Generic; 3using UnityEngine; 4 5public class Battlemain : MonoBehaviour 6{ 7 //宣言 8 public float speed = 5.0f; 9 public bool goalCheck; 10 11 // Start is called before the first frame update 12 void Start() 13 { 14 goalCheck = false; 15 } 16 17 void OnCollisionEnter2D(Collision2D col) 18 { 19 20 if (col.gameObject.name == "Two") 21 { 22 Debug.Log("Hit"); 23 goalCheck = true; 24 return; 25 } 26 } 27 28 void OnCollisionStay2D(Collision2D col) 29 { 30 31 if (col.gameObject.name == "Two") 32 { 33 Debug.Log("Hit"); 34 //goalCheck = true; 35 return; 36 } 37 } 38 39 // Update is called once per frame 40 void Update() 41 { 42 if (goalCheck) 43 { 44 return; 45 } 46 transform.position = new Vector3(transform.position.x + speed * Time.deltaTime, transform.position.y, 0.0f); 47 } 48} 49
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/03/10 13:45
2021/03/10 15:34
2021/04/14 03:26