LayerMask小結


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");】


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM