个人笔记:
IEnumerator SetCullMask()
{
//正数的反码补码都是原码,负数的反码是符号位不变,补码为反码+1
//因此0(32位Int)的补码是 0000 0000 0000 0000 0000 0000 0000 0000
//-1:1111 1111 1111 1111 1111 1111 1111 1111
Debug.Log("渲染所有层");
Camera.main.cullingMask = -1; //渲染所有层
yield return new WaitForSeconds(1);
Debug.Log("不渲染");
Camera.main.cullingMask = 0; //不渲染
yield return new WaitForSeconds(1);
Debug.Log("渲染layer0层");
Camera.main.cullingMask = 1<<0; //渲染layer0层
yield return new WaitForSeconds(1);
Debug.Log("渲染layer8层");
Camera.main.cullingMask = 1 << 8; //渲染layer8层
yield return new WaitForSeconds(1);
Debug.Log("渲染layer8层 layer0层");
Camera.main.cullingMask =1+256;//256=1*2^8 //等同于Camera.main.cullingMask =1+(1<<8)
yield return new WaitForSeconds(1);
Debug.Log("渲染layer8层 layer9层");
Camera.main.cullingMask = (1<<9)+ 256;
yield return new WaitForSeconds(1);
}