はなちるのマイノート

Unityをメインとした技術ブログ。自分らしくまったりやっていきたいと思いますー!

【Unity】Simplest Mesh Bakerを使ってメッシュを結合してみる

はじめに

今回はSimplest Mesh Bakerというアセットを用いてメッシュを結合し,その効果をみていきたいと思います。

使い方についても紹介したいと思いますが,詳細は公式動画を参照してみてください。(といっても名前の通り超簡単ですが)
https://www.youtube.com/watch?v=UxkcC0uZ6D8&feature=youtu.be

使い方

Bake Bonesという機能を使えばボーンがついているゲームオブジェクトから骨を焼くこともできますが、今回はメッシュの結合のみ扱います。

まずメッシュを結合したいゲームオブジェクトを複数選択し、Bake Meshsを選択。

f:id:hanaaaaaachiru:20201024005625p:plain
複数選 -> Bake Meshes

質問が二回されますが、以下の通りです。

  • 異なるマテリアルのゲームオブジェクトは分けますか?(異なるマテリアルのゲームオブジェクトを選択した場合のみ聞かれる)
  • 元のゲームオブジェクトは削除しますか?
f:id:hanaaaaaachiru:20201024010118p:plain
質問1
f:id:hanaaaaaachiru:20201024010139p:plain
質問2

基本的にYesでOKだと思います。

実験

現在進行形で作成しているゲームに対して適応してみます。

f:id:hanaaaaaachiru:20201024002931p:plainf:id:hanaaaaaachiru:20201024002935p:plain
←実行前  実行後→
種類 実行前 実行後
Batches 499 177
SetPass Call 84 86
Verts 37.6k 50.2k

とりあえずステージの床と壁が複数のゲームオブジェクトにより構成されていたのですが,それらを結合してみました。

Batches499 -> 177と一気に減らすことができましたが.頂点数は37.6k -> 50.2kと増えてしまいました。

ただ頂点数はモバイルでも数万は余裕だといわれているので、状況によりけりでしょうか。

さいごに

似たようなアセットでもっと有名なMesh Bakerというアセットもありますが、こちらは本当にシンプルなところが取り柄でしょう。

まあ結局なところは好みだと思いますが、本格的に最適化する必要があるなら有料アセットを買っておいた方が良いのかもしれません。

ではまた。