layerMask參數:
Raycast (ray : Ray, out hitInfo : RaycastHit, distance : float = Mathf.Infinity, layerMask : int = kDefaultRaycastLayers)
int layer = LayerMask.NameToLayer("Ground"); //假設=10
LayerMask.GetMask(("Ground"); //相當於 1 << 10
其實很簡單:
1 << 10 打開第10的層。 等價於【1 << LayerMask.NameToLayer("Ground");】 也等價於【 LayerMask.GetMask(("Ground");】
~(1 << 10) 打開除了第10之外的層。
~(1 << 0) 打開所有的層。
(1 << 10) | (1 << 8) 打開第10和第8的層。等價於【 LayerMask.GetMask(("Ground", "Wall");】
