当场景中包含大量模型时,造成渲染效率的降低(即帧速率FPS的降低),采用遮挡剔除技术,可以使得那些被阻挡的物体不被渲染提高渲染效率
若场景中存在大量的小“物件”,使用“层消隐距离”来优化场景,较远距离将小物件剔除,减少绘图调用的数量
(1)场景
(2)除了主角,摄像机,直线光,地面。把层级视图中的所有游戏对象标记为“遮挡静态”(Occluder Static/Occludee Static)
(3)执行菜单命令“Windows”—>“Rendering”—>“Occlusion Culling”,弹出“遮挡剔除”面板,单击下方的“Back”按钮,开始烘焙
(4)将小物件放入一个单独的层(Separate Layer)中,并使用Camera.main.layerCullDistances函数设置层的消隐距离
void Start()
{
float[] f = new float[32];
//这里定义的数组下标“8”表明层级第8层
f[8] = 10;
//当摄像机距离这些小物件超过10m的时候,就不可见了
Camera.main.layerCullDistances = f;
}