【Unity 入門】DrawCallが多かった原因

raharu(仮名)(プログラマー)
これがダイバージェンス1%の先の世界か。。。

初めまして、技術部raharuです。
今回は前にUnityを勉強していた際に気づいた事を一つ。

とりあえず動くものを作る事を目標に今までつくってみましたが
他の方の記事をみていたらDrawCallなる物がFPSおよび負荷に多大な影響を与えているとのこと。
自分のつくった物を見てみたらなんと最大値160!これはちょっと多すぎる。

New Project

基準としてはスマホも対応させるなら40が程度に押さえるのが良いそうです。
で、なにかこんなにDrawCallを増やしているのかしらべてみました。
色々調べた結果遂に原因がわかりました。原因はライトです。

New Project

今回プレイヤーの周りだけを明るくする為に追尾カメラにPointLightを入れていたのですが、
このライトが壁のプレハブを照らすのが良くない様です。
ライトが照らす壁やオブジェクトが多いとDrawCallが多くなってしまうのでしょうか。
これは予想ですが、照らされている場所と暗い場所は別にCallしてるのかもしれません(どなたかわかる方教えてください。)
兎にも角にもこのライトが原因だったのでこのpointLightをやめて全体を照らすDirectional Lightにしてみました。

New Project

その結果最大値9!

New Project

そんなに違うんですか!そうですか!
もしかしたらUnityユーザーの方達の間では当たり前の事なのかもしれませんが、
劇的に値が違ったので備忘録として残しておきます。
DrawCallライトには気をつけろ。
肝に命じておく事にします。

本家はとあるプログラマの備忘録こっち