2017-05-24 5 views
0

ランダムレイキャストメカニックでは、私はexpremientingですが、私は問題を抱えています: 私は空気中で撮影します私の光線は、私のカメラtransform.forwardで平行にレンダリングする必要がありますDebug.DrawRay)。問題は、LineRendererが奇妙な方向を取ることです。レイキャスト、transform.forwardとの競合

ここに私のコードです: `void Shoot(){ RaycastHit hit;

if (Physics.Raycast(Camera.main.transform.position, cam.transform.forward, out hit, range)) 
    { 
     GameObject b = Instantiate(bulletPrefab, hit.point, transform.rotation); 
     b.GetComponent<LineRenderer>().SetPosition(0, shootOrigin.transform.position); 
     b.GetComponent<LineRenderer>().SetPosition(1, hit.point); 
    }else 
    { 
     Debug.DrawRay(cam.transform.position, cam.transform.forward, Color.green, 100); 
     GameObject b = Instantiate(bulletPrefab, transform.position, transform.rotation); 
     b.GetComponent<LineRenderer>().SetPosition(0, shootOrigin.transform.position); 
     b.GetComponent<LineRenderer>().SetPosition(1, cam.transform.forward); 
     b.transform.GetChild(0).gameObject.SetActive(false); 
    } 
}` 

お勧めはありますか?大丈夫です

enter image description here

答えて

関連する問題