public class GridLayerMask
{
int _LayerMask = 0;
public int LayerMask
{
get
{
return _LayerMask;
}
}
//例:ContainLayer( ~(1 << 2 | 1 << 5))
public bool ContainLayers(int layerMask)
{
return (_LayerMask & layerMask) > 0;
}
//例:AddLayers((1 << 2 | 1 << 5))
public void AddLayers(int layerMask)
{
_LayerMask = _LayerMask | layerMask;
}
//例:RemoveLayers( ~(1 << 2 | 1 << 5))
public void RemoveLayers(int layerMask)
{
_LayerMask = (_LayerMask & (_LayerMask ^ layerMask));
}
public static bool ValidateLayerMask(int sourceLayerMask, int layerMask)
{
return (sourceLayerMask & layerMask) > 0;
}
}
Unity的Layer原理
最新推荐文章于 2024-03-19 11:38:26 发布