概要
Raycastでヒットした特定のレイヤーを判別して処理を分ける、みたいな使い方ができます。
実装
// LayerMaskに含まれていた場合
if (((1 << gameObject.layer) & layerMask) != 0;) {
Debug.Log ("含まれている");
}
// LayerMaskに含まれていない場合
if(((1 << gameObject.layer) & layerMask) == 0) {
Debug.Log ("含まれていない");
}
メソッドにしておくと便利。
// LayerMaskに対象のLayerが含まれているかチェックする
private bool CompareLayer (LayerMask layerMask, int layer) {
return ((1 << layer) & layerMask) != 0;
}
以上。