以下轉載於:https://blog.csdn.net/adamwu1988/article/details/55253138
camera剔除主要是把不需要渲染的物體提前剔除 不送去gpu渲染 減少dc、渲染tris。消耗cpu來減輕gpu的壓力。
主要用三種形式Frustum Culling(視錐體剔除)、Occlusion Culling(遮擋剔除)、layerCullDistances(遠近剔除)。
1、Frustum Culling
視錐體剔除是用camera的frustum matrix剔除不該顯示的物體,簡單的說就是camera后面的物體不顯示。unity默認開啟。
2、Occusion Culling
遮擋剔除,顧名思義,就是把被遮住的物體剔除掉。unity里需設置遮擋標識(occluder flag)。
3、layerCullingDistance
遠近剔除,就是把超過一定距離的物體剔除掉,設置方法:
float[] distances = new float[32];
distances[LayerMask.NameToLayer(“grass”)] = 50;
camera.layerCullSpherical = true;
camera.layerCullDistances = distances;
當物體離開視線超過50m后,物體就會消失。一般用來設置小的物體。
遮擋剔除使用幫助
https://gameinstitute.qq.com/community/detail/101996
https://blog.csdn.net/leeby100/article/details/94373878
https://blog.csdn.net/yangxuan0261/article/details/91345209
用InstantOC(使用射線)檢測物體插件使用