こんにちは、SAT-BOXのコアラです
LOD (Level of Detail) を使って描画の負荷を軽減するのはよくあることですが、Unityで少し引っかかりそうだなと思った落とし穴があるので紹介します
Unityでは LOD Group というコンポーネントでLODを設定できます
試しにCubeとQuadを設定してシーンカメラで見てみれば、距離によって切り替わる様子が確認できます
カメラが近いとき↓
遠いとき↓
カメラの距離がパーセントで出てますね
ただ、とある状態だとこうなります
明らかにさっきより断然近い状態なんですが、距離のパーセントはさっきのQuadとほぼ変わりません
Cubeになってないとおかしい距離ですよね
これは、Qualityの設定が原因です
Project Settings > Qualityの項目の中に LOD Bias というものがあり、これが LOD Group のカメラ距離に関わっています
1を基準とすると、2のときは LOD 0 から LOD 1に切り替わるまでの距離が2倍になります
逆に0.5だと、1のときの2分の1の距離ですね
要は、数字が大きいほど高品質な設定になります
さっきの画像で、かなり近いのにQuadだったのはここの数値が低かったからなんですね
QualityごとにLODも調整したいので有って当然な項目なのですが、存在を知ってないと後で大変なことになるかもしれないですね
LODの設定をする際は、LOD Biasも確認してから行うようにしましょう!
以上です