DrowCall数について分かっていることまとめ【随時更新】
はじめに
DrowCallがどの様な時に増加or減少するかを分かり次第追記していきます。
分かっていること
増加編
基本
1オブジェクト1DrowCall…のはず?
影の描写で一気にDrowCallが増える
カメラに写っているものが影響する
3D Object
※光源があると影の描写によってdrowCallが増えてしまうので光源はないものとして考えています
Cube/Plane/Quad/Cylinder
オブジェクト増やしてもMaterialが異ならない限り1のまま。変形してもなんのその。もちろんCubeとPlaneを同時に使用すれば2になります。Sphere/Capsule
オブジェクト増やすごとに1つずつ増えてしまう。丸が難しいのではと個人的に解釈。
UI(初期値)
Text
1:文字数増やしても変わらないImage
1:特になしRaw Image
1:特になしButton
2:Button内部のTextを消すと1になるToggle
3:内部パーツを消せば1ずつ減るSlider
3:内部パーツを消せば…(ryScrollbar
2:内部パーツを消せ…(ry ただし、使い物になるかは微妙DropDown 2:一覧を出すとさらに増加する(初期だと6程度)
InputField
1:入力の時のチカチカするやつが出ると+1、1文字以上入力でさらに+1Canvas
0:描画されないので安定の0Panel
1:特になしScroll View
4~5:茶目っ気を出してきて値がブレましたEventSystem
0:仲間外れにするのもアレなので一応入れました
減少編
- StaticなオブジェクトにすればMaterialが同じである限り、形が異なっていてもまとめて1となる。
例1)CubeとSphereをStaticにすると同一のMaterialを使用であれば1
例2)CubeとSphereをStaticにすると異なるMaterialを使用であれば2
ちなみに、同じMaterialを設定したのちに色を変えてMaterialを節約しようとすると逆に増加するので注意!(別のMaterial作って設定した方が良い)理由はわかりません。((内部でMaterialコピーしてコネコネするから…?
おわり
減少させる方法少なくてすいません…orz
ただ、ググって見つかる全ての方法を書こうとするとめんどくさい時間かかるので私自身が実践したものだけ書いていこうと思います!
なお、「こういう手軽な方法があるよ」や「間違ったこと書いているよ」等ありましたらコメントやtwitterのDMで教えて下さると助かります( ´ ▽ ` )
最終更新:2017/9/7