射线是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:返回布尔类型,当光线投射与任何碰撞器交叉时为真,不然为假。
(注意:若是从一个球型体的内部到外部用光线投射,返回为假。 )这一点测试不成功!