unity中怎么动态改变相机渲染的层级
我们大多数都知道怎样手动改变相机的渲染层级,但是对于动态的改变还不是很了解。下面是一个小例子介绍怎样动态的改变渲染层级。
这个例子实现的功能是点击鼠标左键,相机不对与Cube进行渲染。点击鼠标右键相机对Cube进行渲染
1.首先新建一个场景,在场景中新建一个Cube。
2.新建一个层级3DObject,然后修改Cube的层级为3DObject。
3.然后新建一个脚本挂载相机上。
代码如下:
//相机
private Camera camera;
void Start()
{
camera = GetComponent<Camera>();
}
void Update()
{
if (Input.GetMouseButtonDown(0))
{
//选中3DObject(为11)层
camera.cullingMask |= (1 << 11);
}
if (Input.GetMouseButtonDown(1))
{
//取消选中3DObject(为11)层
camera.cullingMask &= ~(1 << 11);
}
}
效果如图: