射線是3D世界中一個點向一個方向發射的一條無終點的線。在發射的軌跡中,一旦與其餘物體發生碰撞,它就會中止。html
方法一:Physics.Raycast 光線投射測試
1.static function Raycast (origin : Vector3, direction : Vector3, distance : float = Mathf.Infinity, layerMask : int = kDefaultRaycastLayers) : boolspa
解釋:htm
一個靜態的發射射線的方法,在場景中投下可與全部碰撞器碰撞的一條光線。ip
參數介紹:get
origin:射線起始點it
direction:射線方向io
distance:射線長度ast
layerMask:只選定Layermask層內的碰撞器,其它層內碰撞器忽略。function
(我想多是layer值沒有設置正確,layer的值應該是等於2的n次方,這個n是layer面板上的值)
Bool:返回布爾類型,當光線投射與任何碰撞器交叉時爲真,不然爲假。
(注意:若是從一個球型體的內部到外部用光線投射,返回爲假。 )這一點測試不成功!