【Unity】2DでRaycast

Raycastでタップイベントを拾おうとしたら、すごい時間がかかったのでメモ。

2DでRaycastを使うならPhysics2DのRaycastメソッドを使わなくてはいけない!
ずーとPhysicsのRaycastで検証してて全然Collider拾えなくて悩んでました(*ノω<*)シマッタ!!!。

以下のように書いたら拾えました。

Ray ray = Camera.main.ScreenPointToRay (t.position);
RaycastHit2D hit = Physics2D.Raycast(ray.origin,ray.direction);
if (hit){
	if (hit.collider.gameObject == Cat.gameObject){
		Debug.Log("君は猫だ!");
	}
}