Unity AssetStoreまとめ

アセットストア日替わりタイムセールの記事を書いていきます。

【Unity's Black Friday Week Sale】Mesh Bakerの使い方記事! VRChat民のアバター・ワールドが少しでも軽くなるように! アバターのメッシュとマテリアルを1つに結合する方法を簡単に解説します(ワールドも)!2018年11月21日 V3.26.1 「Mesh Baker」

スポンサーリンク

f:id:assetsale:20181121054412j:plain

Mesh Baker

スクリプト / モデリング

Ian Deane

$70.20 => $35.10    50%OFF    【開催期間】〜2018年11月26日(月) 16:59 頃まで

 

 アバターやワールド、自作したゲームを少しでも軽くしたい!

Mesh Baker」でメッシュやマテリアルを混合してドローコール数を削減する

最適化の要といえる大人気アセットです。

 

VR、AR、MR、モバイル、VRChatなど、

少しでも軽くしておきたいプラットフォームなど常に需要のあるアセットですね。

 f:id:assetsale:20181122072226j:plain

この記事の完成形です。

Directional Light消した状態

Batches: 3
SetPass calls: 3

 


 【Unity's Black Friday Week Sale  残り4日

【開催期間】2017年11月19日 17:15 〜 2018年11月26日(月) 16:59 頃まで

 

新アセットストア会場URL

旧アセットストア会場URL

セールの全貌が大体わかるブログまとめ記事:URL

 

バンドル販売リスト

 

f:id:assetsale:20181120070221j:plain f:id:assetsale:20181120070126j:plain f:id:assetsale:20181120070059j:plain

今回購入したアセット

Enviro - Sky and Weather」「Puppet3D」「Shader Painter

  

2018年のブラックフライデーセール概要

大人気アセット57種類が全品50%OFF

デイリーセールが今年も復活!70%OFFの特価アセット必見!

まとめ買いでさらにお得「55%OFF」バンドル販売がスタート

 └単品でも55%OFFになる値引きの裏技あり  ←必見(お早めに)

 

NEWS単品55%OFFの裏技は使えなくなりました! 2018年11月20日 22:38 確認

 

2018年11月19日(セール概要記事)

セール全貌まとめ、バンドル販売についてガッツリまとめました。

 

 


 

 

 

最適化の方法まで、かなり前置きが長いです!

 

急いでる方は目次からジャンプして下さい。

 

 

バーチャルYouTuber電脳少女シロの紹介

 

「Mesh Bakerとは?」

について、わかりやすく解説してくれるシロちゃんのメッセージを書き出しました。

頻繁にアップデートがあってサポートしてるのは知らなかった。

 

【Unite Tokyo 2018】バーチャルYouTuber電脳少女シロがご紹介する「2018年の注目アセット100連発」 - YouTube(47:36)

23:09〜Mesh Bakerの解説が始まりますよ。

「少しでも軽快に動かしたい!」

そんな時にスキンメッシュを組み合わせてカスタマイズしたり、

テクスチャをベイクしたりとメッシュとマテリアルを結合して

ドローコールを削減できちゃうのが、このメッシュ・ベイカーなんです。

 

頻繁に細かくアップデートを繰り返してくれるので、安心して使い続けられることで世界中から大人気なんですよね。

 

特にブイ・アールとか、エー・アールとか、エム・アールとか、

目新しいデバイスがどんどん出て来ているので、ますます人気が高くなりそうなアセットですよ!

 

 

 

VRChat用に使うMeshBaker

VRChatでは「アバター / ワールド」を軽くするための最適化アセットです。

 

アバターのメッシュは1つに結合して(消したり出したりしたいアイテム以外を)

マテリアル&テクスチャも1つだけにまとめちゃおう!

 

今回は難しい方の「アバター編」で紹介しますが、

ワールドもアバターとほぼほぼ同じなので参考にしてみてください。

 

最適化するキーポイント

 

 


 

VRC向けに「Mesh Baker」でやれること

VRC向けに下記ルールで最適化するよ!

 

◆ 準備編 ◆

Mesh Bakerでやれること

 

・アバターのメッシュを一体化する(選択したメッシュのみ結合させるよ)

 

・マテリアルとテクスチャの数を1つにまとめる

 (複数のテクスチャはアトラスで合体!シェーダも1つにまとめます)

 

・ビジュアル重視の方向けにマテリアルを合体させず温存させる(これも解説)

 

 

専門用語無しでもっと優しく例えると、

・服や体を合体して、画像も1枚に合体。

・普段通りにアニメーションできるし、VRCで使えるキャラになる。

・画像をまとめると副作用でグラフィックに違和感が出るので、手を加えます。

 

 

VRCの最適化ポイント

・重たいシェーダは使わない(軽いシェーダに変更する)

・陰影処理等行わない(ライティングに左右されない)Unlitシェーダにする

 

・Dynamic Boneを多用しない。

・ボーン数を減らす

 

モデリングソフトを使うのはちょっと...な人はUnityでボーン付けができるこれ!

現在バンドル販売中の「Puppet3D」でもしかしたらボーン除去できるかも?

昨日購入したので、セール終了まで時間があれば試してみたいと思います。

 

 

マテリアル/シェーダを一体化したらどうなる?

Mesh Bakerでマテリアルを一体化した後は、

1つのシェーダになってしまうので設定する必要があります。

 

まだ始めてもいないのにシェーダ探しを進めるのは、今セール中だからです。

必要なアセットは先にチェックしておきましょう。メモメモ。

 

 

アニメっぽいキャラには「Standardシェーダ」は不向きなので、

 

・UnityデフォルトのUnlitシェーダ

  ※ 陰影処理等行わない(ライティングに左右されない)

 

・Mesh Bakerに付いてくるシェーダ(Unlitとほぼ変わらないかも?)

 

・Unity公式のユニティちゃんトゥーンシェーダー UTS2オススメ記事

 

アセットストアで質感がぴったり合うシェーダを探す

↑今回は無料の「Toony Colors Free」を使います。

 

VRChat専用シェーダが最近リリースされました。

TypeA AnimeShader

VRC専用に作られたシェーダがTwitterで話題になりましたね。

(今回のセールで来るかもしれないのでしばらく待ちましょう)

 

Mesh Bakerでアバターを最適化する(ここから)

 

 

さぁ、ここからスタートです。

 

 

 ◆ 一体化を試すアバター探し ◆

まずは素材を探しました。

 

ユニティちゃんでも出来ますが、基本的に手順は変わりません(次回記事で解説)

今回は最近リリースされた無料キャラアクワイアちゃん」で実践してみました。

【このコンテンツは、『アクワイアちゃんライセンス』で提供されています。】

 

最適化前のステータス

f:id:assetsale:20181122002006j:plain

Batches: 18
SetPass calls: 13

 

f:id:assetsale:20181121212500g:plain

アニメーションをします。一体化してアニメが再生されれば成功でしょう!

 

ブレンドシェイプに対応

Combine BlendShapes

顔の表情などによく使われているブレンドシェイプもMesh Bakerなら結合可能です。

 

しかしながら「アクワイアちゃん」にはブレンドシェイプがありません。

次回記事にて、ユニティちゃんで検証したいと思います。

 

 

チュートリアルを開く

Mesh Baker - YouTube(4:47)

※ ブログの解説がサッパリわからなくなったら見てください。

 

 

① 一体化できそうなオブジェクトを探す

※いきなり床が出現してますが、作業しやすい環境を整えてください。

f:id:assetsale:20181121075647g:plain

1.「mesh」オブジェクトを非表示にすると、体、服、腕など

  まとめて消えるため、これは一体化できます。

 

2.「root」を非表示にした場合、キャラに変化が無いため、

rootには目などメッシュが含まれて無いことが確認できます。

(ユニティちゃんの場合は、目などいくつかメッシュが含まれています)

 

f:id:assetsale:20181121214653p:plain

「mesh」以降5つのオブジェクトが結合対象ですね!

 

 

② 一体化予定メッシュをGameObjectの子にまとめる

f:id:assetsale:20181121081714j:plain

 

アクワイアちゃんの場合は「mesh」にまとまってたのでそのままでOKですが、

 

MeshBakerで一体化させるオブジェクトがバラバラに設置されてた場合は、

適当なGameObjectを作成して、子にまとめましょう。

 

 

③ MeshBakerオブジェクトを作る

f:id:assetsale:20181121215108j:plain

GameObject -> Create Other -> Mesh Baker -> 「TextureBaker and MeshBaker」

を実行します。

 

  • TextureBaker and MeshBaker:テクスチャ&メッシュの結合 ←今回はコレ!
  • MeshBaker:メッシュのみ結合
  • TextureBaker and MultiMeshBaker:テクスチャ&複数のメッシュ結合
  • TextureBaker:テクスチャのみ結合
  • Batch Prefab Baker:Prefabの結合?
  • Bone Weight Copier:ボーンのウェイトをコピー(ベータ版)

 

すると、Hierarchyに「TextureBaker (0)」オブジェクトが作られます。

f:id:assetsale:20181121220114j:plain

選択するとInspecterビューに沢山情報が表示されてますが、安心してください!

必要な機能だけ使って簡単に解説しますね。

 

ここで作業の流れをざっくり解説(まだやらないで)

↓ 作業対象のオブジェクトを登録  ←次ここやります

↓ 新規マテリアルを作成(結合結果が入る)

↓ テクチャ&シェーダを結合してマテリアルにセットされる

↓ メッシュを1つに結合する

↓ 本体を非表示にする(エディタの機能で)

↓ 見た目の良いシェーダに変更

↓ Animatorの設定を変更

完成!元素材と同じように扱えます。アニメーションも再生するよ

 

慣れれば3分程度でパパッと出来ます。

とても簡単なので挑戦してみましょう!

 

 

④ 「Open Tools For Adding Objects」をクリックする

f:id:assetsale:20181121220324j:plain

するとメニューウィンドウが表示されます。

 

⑤ 「Exclude meshes with out-of-bounds UVs」をOFF

f:id:assetsale:20181121220640g:plain

現れたメニューで、右側のタブ「Serch For Meshes To Add」をクリックします。

「Exclude meshes with out-of-bounds UVs」フラグをOFFにします。

 

 

⑥ Hierarchyで結合したい親オブジェクトをクリックする

f:id:assetsale:20181121222527j:plain

エディタウィンドウは開いたままにして、

結合させる親オブジェクトである「mesh」をクリックして選択状態にします。

 

 

⑦ 「Add Selected Meshes To Target」ボタンをクリック

f:id:assetsale:20181121221128j:plain

「Add Selected Meshes To Target」ボタンをクリックすると

 

ちょっと分かりづらいですが、上部のテキストに文章が追加されます。

f:id:assetsale:20181121222646j:plain

Added 5 object to Texture Baker(0)

5つのオブジェクトが追加されましたよ

 

これで 「TextureBaker (0)」オブジェクトに情報が含まれました。

 

 

⑧  Hierarchyの「TextureBaker (0)」を選択する

「MB3_Texture Baker」コンポーネントにて、

f:id:assetsale:20181121223148j:plain

Output

「Create Empty Assets For Combined Material」ボタンをクリックします。

 

結合結果のアセットの保存先を決める

f:id:assetsale:20181121223639j:plain

「∨」:保存先のPathを指定

Save As:任意でファイル名を入れる

全て終えたら「Save」を実行します。

 

すると、

f:id:assetsale:20181121224138p:plain

Projectには、2つのファイルが作られます。

マテリアルには結合結果が入ります。

f:id:assetsale:20181121224135p:plain

ボタンの下にもTexture Bake Resultで結果が入りました。

 

 

⑨ 「マテリアル / シェーダ」を一体化する?しない?

f:id:assetsale:20181121224956g:plain

「Multiple Combined Materials」フラグでON / OFFできます。

 

 

・マテリアルを一体化する場合

f:id:assetsale:20181121225056p:plain

デフォルトの場合はチェックOFFのまま何も触る必要はありません。

 

最高の最適化!断然早くなります!

デメリット

シェーダはどれか1つになってしまいます。

つまり、複数のシェーダが使えなくなるため、

別のシェーダでカバーしてあげる必要があります。

 

シェーダを変更したり、テクスチャを修正しても改善しない場合は、

後者の「複数マテリアルを持つ方法」を選択しましょう。

 

 

 

・マテリアルを一体化しない場合

f:id:assetsale:20181121225201j:plain

ONにすると、複数のマテリアルで出力してくれるようになります(配列で持つ)

 

クリックするとリストが現れます↓

f:id:assetsale:20181121225720j:plain

含まないマテリアルは「-」で消す事もできます(エラーが出たときなどに)

 

 

 

今回は、前者のマテリアルを結合する方法で解説します。

f:id:assetsale:20181121225056p:plain

「Multiple Combined Materials」フラグをOFFのままにしておきましょう。

 

 

⑩ マテリアルをBakeする

f:id:assetsale:20181121225957j:plain

⑨にチェックを入れた場合、入れなかった場合、どちらも実行してください。

 

紫色のボタン「Bake Materials Into Combined Material」を実行します。

 

マテリアルがジェネレートされて完成です!

 

f:id:assetsale:20181121231346g:plain

19秒程で、テクスチャがアトラス化(一体化)されて、シェーダも1つに。

マテリアルが1つに結合します!

 

f:id:assetsale:20181121231501p:plain

f:id:assetsale:20181121231509p:plain

解像度が4090で大きすぎましたね、空白がすごい!

テクスチャサイズを小さくして最適化しましょう。

f:id:assetsale:20181121231643j:plain

Max Atlas Size値を2048まで下げて再びBakeしよう。

 

f:id:assetsale:20181121231857j:plain

隙間無く綺麗に収まりました。これでテクスチャ編は完成です!

 

 

⑪ メッシュを結合する

 

「Hierarchy」ビューを開いて、

f:id:assetsale:20181121232225j:plain

「TextureBaker (0)」の子、「MeshBaker」を選択します。

 

Inspector画面

f:id:assetsale:20181121232449j:plain

沢山設定できる情報がありますが、大切なのは

「Renderer」の項目です。

 

デフォルトでは「Mesh Renderer」になっており、

ワールドを作る人はこのままでOKです。

 

キャラクターの場合は

f:id:assetsale:20181121232635j:plain

Rendererを「Skinned Mesh Renderer」に変更します(重要

 

ブレンドシェイプを含む場合

まだ試してないので足りないかもしれませんが、

f:id:assetsale:20181121232928j:plain

「Include Blend Shapes」にチェックを入れるだけで対応できるかもしれません。

 

Bakeする

f:id:assetsale:20181121233042j:plain

設定が終わったら「Bake」をクリックしましょう。

 

何事も無ければコンソールにインフォメーションが表示されます。

f:id:assetsale:20181121233136p:plain

 

 

⑫ メッシュが結合したオブジェクトが生成される。

f:id:assetsale:20181121233319j:plain

Hierarchyに「CombinedMesh-MeshBaker-mesh」が作られました。

ちなみに、これだけ表示したり移動しても中身は透明?で表示されません。

 

「Skinned Mesh Renderer」を扱う時の場合のオブジェクトだと思えば良いです。

 

 

⑬ 本体を非表示にする

f:id:assetsale:20181121233551p:plain

Hierarchyにて、MeshBakerを選択してInspectorを開きます。

 

f:id:assetsale:20181121233656j:plain

「Bake」の下にあるボタン

「Disable Renderers On Source Objects」を実行しましょう。

 

ソースオブジェクトを非表示にして、

MeshBakerが作り出したキャラクターに切り替えます。

トグルになってますので、元に戻したい時もワンクリックです。

 

 

若干違いが出る程度な仕上がりになった

f:id:assetsale:20181121234345g:plain

表示 / 表示のトグルを切り替えてみた↑

 

シェーダは全て

f:id:assetsale:20181121234602p:plain

Chara_Parts(Body)で表示されています。

服にもBodyのシェーダが適応されちゃってますが、

それほど違和感が無かったのは良かったですね。

 

 

⑭ アニメーションさせてみる

f:id:assetsale:20181122000247g:plain

すると何故か動きません。

(コピーではなく、元のPrefabのままMesh Bakerは使えます)

 

この問題を解決する方法を紹介します。

 

 

⑮ Bakeされた後のAnimator設定

f:id:assetsale:20181122000530j:plain

「アクワイアちゃん」の場合、AcquireChanオブジェクトにAnimatorがあります。

 

Animator設定の「Culling Mode」これが重要!

f:id:assetsale:20181122000905j:plain

Culling Modeを「Always Animate」にチェンジしてみてください。

 

そして再生すると...

 

f:id:assetsale:20181122001305g:plain

 

バッチリ再生されるようになりました!!

 

アニメーションのStateを比較

Batches: 16 (最適化前は24)
SetPass calls: 16 (最適化前は20)

 

 

静止してる状態のパフォーマンス

f:id:assetsale:20181122001603j:plain

Batches: 6 (最適化前は18)
SetPass calls: 6 (最適化前は13)

 

半分以下になる素晴らしい結果が出ました!!

パラメータ次第でもっと軽く最適化できると思います。

みなさんも色々試してみて下さい。

 

 

⑯ 最後の仕上げ

f:id:assetsale:20181122070718j:plain

作業用のスクリプトが入ってる「TextureBaker (0)」オブジェクトを削除しましょう!

これでスクリプトを持たないアバターの完成です。

 

f:id:assetsale:20181122071044j:plain

 

f:id:assetsale:20181122072226j:plain

Directional Light消したら3になりました。軽っ!

 

f:id:assetsale:20181122073127j:plain f:id:assetsale:20181122073130j:plain

 

 

⑰ VRデバイスでコントロールする場合

 

元のキャラクターがそのまま使えますので、

普段通りの手順で大丈夫です。

 

 

オマケ:MeshBakerを非表示にせず移動するとこうなる

f:id:assetsale:20181121234519g:plain

おそらくStandardシェーダで表示されたキャラが重なって表示されているみたい。

MeshBakerを使わないことにした。という場合はこの2つを完全消しましょう。

f:id:assetsale:20181121234930p:plain

 

  

 


 

Mesh Bakerのトラブル関係

 

ガビガビ模様が現れた場合の対処法

 

MeshBakerする前に「Optimized Realtime UVs」にチェックを入れてBakeすると改善するそうです。

 

 

 


 

 

Mesh Baker関連の記事

 

「Mesh Baker free」の制限について

 

・1回辺りの頂点数は65kまでの制限があります。

無料版は一回あたりの頂点数の制限(65k)、シェーダーの制限、プレハブ化の制限がある

 

「Simplest Mesh Baker」vs「Mesh Baker free」

2018年5月24日に、新作無料アセットで「Simplest Mesh Baker」という、

Mesh Baker」の亜種がリリースされました。

 

Simplest Mesh Bakerの特徴

・ボーン持ちキャラクターから骨を焼く「Bake Bones」

 (ポージングした状態でボーンを焼いて通常のメッシュにしてくれる)

・とにかくシンプル!右クリックメニューから一体化させるだけ!初心者大助かり

・同じマテリアルを結合します。Unity標準以外のカスタムシェーダに対応

 

  vs 

Simplest Mesh Baker」 vs 「Mesh Baker Free本家体験版)」

 

今見ても面白い記事を作りました。無料で節約したい方は参考にどうぞ!

2018年5月24日にまとめました。

 

複数のテクスチャを配列化する最適化

 Mesh Bakerの弱点(タイリング問題)を補ってくれる新作アセットが出たばかり!

 

2018年9月27日に紹介

今日気付いた事ですが、「Mesh Baker」も配列でマテリアルを持つ事ができるので、

基本的には同じことができると思います。

 

Mesh Bakerの使い方も解説してますので参考にしてください。

 


 

 

アセット説明(機械翻訳)

Unity 5.5.1 以降のバージョンが必要
メッシュとマテリアルを混合してドローコールを削減。テクスチャ・パッカーも含めましました。!

マテリアルがシェアできるように固定モデルとアトラスを作成して(for static/dynamicbatching)

インポートされたモデルの固定スケーリング、ローテーションとトランスレーション

* どんなマテリアル・シェーダーにも対応
* フル複数マテリアルサポート
* スキンメッシュを組み合わせてカストマイズ
* UV、ノーマル、タンジェントは自動的に調整
*ティルトテクスチャをベイク
* フルライトマップ・Pingサポート
*ソースアセットはそのまま
* 簡単、スクリプティング必要なし、5分で学習
* ランタイムAPI
*ネガティブスケーリングもできます。

ランプブラシの作者から、ファスト・シャドー、メッシュ・マスター。

今、 メッシュベーカーLOD!
も発売中(メッシュベーカーが必要)

フォーラム

ウェブサイト

YouTube

 

 

前回セール情報

 2018年5月頃のMADNESS SALEにて30%OFFで登場しました。

 

 

パブリッシャーのアセット(記録用)

f:id:assetsale:20181121062545j:plain

 


 

【毎日更新】アセット割引情報サイト

毎日リアルタイム更新。

「作家セール、無料アセット、新作アセット」お得な最新情報を入手しよう!

f:id:assetsale:20181014095721j:plain f:id:assetsale:20181014095824j:plain

※ 土曜・日曜・月曜はアセットストアのお休み。

 

今年のイチオシアセット

バーチャルYoutuberシロがご紹介する2018年度のオススメアセット

 

 

過去セールから神アセットを探す

過去大セールで登場したタグです。ぜひご活用下さい。

f:id:assetsale:20180430173156j:plain

※右サイドバーの「月別アーカイブ」や「タグ」からチェックすることもできます。

 

アセットの検索方法

f:id:assetsale:20171128032556j:plain

過去記事検索から素早く検索画面に行けます。

アセット名、パブリッシャー名など入力してご活用下さい。

 ↑ ブックマークしておくと超便利!オススメ

 


 

 

【2018年度】無料化&無料アセットまとめ

 

【3Dモデル】

【シェーダ・パーティクル・Skybox】

【テクスチャ&マテリアル】

 

【過去ログ】無料アセット

【過去ログ】作者セール&注目アセット

  

 

f:id:assetsale:20170616174948p:plain

この作品はユニティちゃんライセンス条項の元に提供されています

 

Unity's Black Friday Week Sale 記事リンク

 

 

56種類 全品50%OFF記事

  1. アセットストア今年最後の大セールがスタートしました!57種類、全品50%OFF / 今年の目玉は「バンドル販売」まとめ買いが55%OFFでお得!

  2. Mesh Bakerの使い方記事! VRChat民のアバター・ワールドが少しでも軽くなるように! アバターのメッシュとマテリアルを1つに結合する方法を簡単に解説します「Mesh Baker」

  3. 『全56アセットを一気に紹介』買い忘れが無いか最終チェック記事(アセットストアのブラックフライデーセールは明日 11月26日16:59に終了します!) ←NEW

 

↑ 数が少ないのでペースあげてきます!(全57アセット紹介目指します)

 

 

デイリーセール一覧(当日限り16:59まで 70%OFF)

  1. プロシージャルで本格的な地形作り!リアルで美しい地形をランダムジェネレートするTerrain系エディタ「World Creator Professional」

  2. 「部屋数の多いフロア」や「大きな世界」など重たいシーンを最適化する4つのアセットパック「SECTR COMPLETE」

  3. 大規模MMO開発キット!Atavism専用サーバーでオンラインゲーム開発「Atavism 2018.3 OP Standard」

  4. キャンディを3つ以上つなげて消してクリア条件を達成する大人気ゲーム「キャンディクラッシュ」風パズルゲームの完成プロジェクト「Candy Match 3 Kit」

  5. Googleストリートビュー(屋内版)のようなサービスが作れる360度パノラマ映像ツアー!「Complete 360° Tour」

  6. 崩壊した世界で生存者が生き残りをかけてゾンビと戦う大規模ローポリ3Dモデルパック!「Simple Apocalypse - Cartoon Assets」