Unity中相机的应用遮罩应用:
camera.cullingMask = ~(1 << x); // 渲染除去层x的所有层
camera.cullingMask &= ~(1 << x); // 关闭层x
camera.cullingMask |= (1 << x); // 打开层x
camera.cullingMask = 1 << x | 1 << y | 1 << z; // 摄像机只显示第x层,y层,z层.
位运算往往在游戏用来记录一些状态,一个32位的整数,就能记录32种状态,并且只需要一个int就够了。 在游戏中的应用:技能状态、等其他状态中。
//检查state的第pos位是否为1 int bitCheck(int state, int pos)
{
return state & 1<< pos - 1;
}
//将state的第pos位的值设为1 int bitAdd(int state, int pos)
{
return state | (1 << (pos - 1));
}
//将state的第pos位的值设为0 int bitDel(int state, int pos)
{
return state & (~(1 << (pos - 1)));
}