アクターの見た目を動的に変える際にはマテリアルの値をパラメーター化し、Material Instance Dynamic(以下MID)にしたマテリアルのパラメーターを変える方法とマテリアルそのものをスワップしてしまう方法がありますが、パフォーマンスの違いや使い分け方を教えてください。
また、以下の自分の理解で間違っていることがあれば教えてください。
①MIDを使うのと、同じマテリアルを親とした別のインスタンスにスワップする場合では、どちらもインスタンスなので基本的にはパフォーマンスに大きな差はない。
②パラメーターを使った場合にはロジックをひとつに集約できるというメリットがあるが、すべてのノードを実行してしまうので渡されたパラメーターで条件分岐して複雑な処理をするという場合には遅くなる。このような場合には軽いマテリアルと重いマテリアルに分けてマテリアルごとスワップするほうがよい。
③マテリアルが増えるとアセットのロードやコンパイルの時間が増えてしまう。(エディター上の読み込みのみ?ビルドしたゲームのマップのロードには影響無い?) よって、マテリアルがたくさんある場合でパラメーターを使うことで数を減らせるという場合にはひとつのマテリアルにまとめてしまったほうがいい。もちろん②のようなことが起きることは考慮しないといけない。