2017-01-15 5 views
0

タッチ後にこのコードが何も印刷しないのはなぜですか?レイキャストはオブジェクトにヒットしません

void Update() 
{ 
    if (Input.touchCount > 0) 
    { 
     RaycastHit2D hit = Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.GetTouch(0).position), Vector2.zero); 
     if (hit) 
     { 
      print(hit.transform.name); 
     } 
    } 
} 
+0

を。例えば。レイキャストでヒットしようとするオブジェクトには、ある種のcollider2dがありますか?レイキャストを無視するように設定されていますか? –

+0

どのタイプのオブジェクトをヒットしようとしていますか?それが選択されている間、それのスクリーンショットを置くことは役に立ちます。また、 'if(Input.touchCount> 0)'に 'print(" inside touch ");を入れてください。コードで何が失敗しているか教えてください。 – Programmer

+0

また、トランスフォームが接続されているゲームオブジェクトの名前を探してはいけませんか?だから 'hit.transform.gameObject.name'のようなもの? – UnholySheep

答えて

-1

このお試しください:それはあなたが私たちに多くの情報を提供したいと考えていますので

if (Input.touchCount > 0) 
    { 
     RaycastHit2D hit; 

     if (Physics2D.Raycast(Camera.main.ScreenToWorldPoint(Input.GetTouch(0).position), Vector2.zero, out hit)) 
     { 
      print(hit.transform.name); 
     } 
    } 
関連する問題