1. 程式人生 > >Unity 中的射線(Ray)

Unity 中的射線(Ray)

一、射線分類:線段,球形二、用途:拾取包裹,尋找附近的怪獸,檢測碰撞三、如何發射兩種射線:1.發射線段//射線只能返回第一碰撞物體資訊Ray ray = Camera.main.ScreenToRay(Input.mousePosition);RaycastHit info;if(Physics.Raycast(ray,info,Mathf.Infinity,1<<LayerMask.NameToLayer("Item"))){Mathf.Infinity 射線長度 無限大LayerMask.NameToLayer("Item")只能碰撞這些層的物體}//射線返回所有碰撞物體的資訊Ray ray = Camera.main.ScreenToRay(Input.mousePosition);RaycastHit[] infoArr =Physics.Raycast(ray,Mathf.Infinity,1<<LayerMask.NameToLayer("Item"));2.發射球形射線Collider[] collider = Physics.OverlapSphere(發射的位置,發射半徑,層);