解放済みノードをクリックして達成 / 解除を切り替え
最終更新:
解放済みノードをクリックして達成 / 解除を切り替え
最終更新:
TASK
理由はひとつ、重いとフレームレート(動きの滑らかさ)が落ちるからです。フレームレートが下がると、早いボールなどに対応できませんし、腕の振りなどにも支障を与えます。60FPSは出ているのが望ましいです。
自分だけならいいかもしれませんが、重いアバターは周りのプレイヤーにも影響を及ぼします。周りのVeryPoorアバターを非表示設定にしただけでフレームレートが10上がった、なんてこともあります。
たいてい、重い原因になりうるのが揺れ物とポリゴンです。
揺れるものの物理演算、一つ一つは小さくても大量にあると負荷がかかります。また、ポリゴン数はシンプルにグラフィック処理に影響を与えます。
未達成・クリックで達成
TASK
バレーで使いたいアバターをまずは改変してください。
可愛さやカッコよさに妥協はいりません。あなたの魂を注いでください。
しかし、思うがままに改変して装飾モリモリ影パリパリ髪の毛ファサファサだと軽量化するのが難しいです。
軽量化がしやすくなるポイントとして、
揺れ物は減らす(ロングヘアーとかスカートとか設定めんどくさいです。ここでは解説しません)
ギミックは基本入れない(撫で音とかリア影とか。撫でや写真撮影は別アバターでやりましょう)
小物をなるべく減らす(ネイル、ヘアピンなど。ワンポイントなら良いですが、もりもりだとその分ポリゴン数を使うことになるので)
装飾がシンプルな服が好ましい(服全体でマテリアル一個だとえらい。)
肌がなるべく出てない服だと体のポリゴンが削りやすい
こんなところでしょうか。
ともかくシンプルを目指してください。装飾がなくてもあなたは十分かわいいですしかっこいいですしおもしろいです。
あ、もともと作成していたアバターをバレー用にしたいときはプロジェクトごとコピーしてバックアップを取ることをお勧めします。
とにかく手間を省くので、非可逆的な改変をします。
未解放
TASK
まずはこれらを導入してください。
さすがにMAとかは入ってる前提で行きます。
AAO(Avatar Optimier) https://vpm.anatawa12.com/add-repo
Meshia Mesh Simplification https://ramtype0.github.io/VpmRepository/
TexTransTool https://vpm.rs64.net/add-repo
lilAvatarUtils https://lilxyzw.github.io/lilAvatarUtils/
未解放
TASK
最初にメッシュを統合する設定をしておきます。
ヒエラルキーで右クリック→Create Emptyを押します。
名前は適当でいいです。とりあえずMergeSkinnedMeshとします。
次にInspectorからAdd Component→「AAO Merge Skinned Mesh」を選択します。

スキンメッシュレンダラーが閉じていたら▶を押して開くと、上記の画面が出てきます。ここに、すべてのメッシュを入れていきます。
たぶん全部入れて大丈夫です。なんか問題が起きたらそれだけ外してください。Inspector右上の鍵マークを押して、画面にロックをかけてから、ヒエラルキー上のオブジェクトをCtrl押しながらクリックしていくと楽です。全部選択出来たら追加する要素のNoneって書いてあるとこにドラッグアンドドロップ!(もちろん一つずつドラッグしていっても大丈夫ですよ)


これでメッシュが全部統合できます。オブジェクトごとに服を脱ぐとかはできなくなりますが、バレーワールドで服脱がないでください。
未解放
TASK
何を消していかなきゃいけないのか知りましょう。
上のバーのToolsからanatawa12's gist selectorをクリックしてください。
↓こんなのが出るのでActualPerformanceWindowsにチェックをつけてください。既にやってあったら大丈夫です。

できたらApply Changesを押して、閉じてください。
そんでPlayモードに入りましょう。

まあ間違いなく現時点でVerypoorでしょう。
そしてたいていオーバーするのが、「Polygons」(ポリゴン数)「PhysBone Components」(フィズボーン。揺れ物の数)「PhysBone Collision Check Count」(揺れ物の衝突判定)「Material Slots」です。このうち、衝突判定は揺れ物の数を減らすと自ずと少なくなりますので、Polygons、PhysBone Components、Material Slotsを減らしていきます。
確認したらPlayモードを終了し、閉じてしまって大丈夫です。
未解放
TASK
揺れるものを減らします。揺らしたいものだけ残します。
いま何が揺れるのか知りたいので、Tools→lilAvatarUtilsを開いてください。
開けたら、Noneと書いてあるところに、ヒエラルキーからアバターの大元のコンポーネントをドラッグしてください。PhysBoneと書いてあるところをクリックすると、アバターの中にある揺れ物がすべてリストアップされます。

こいつを頑張って消していきます。
残したいものは残して大丈夫です。
名前のところをクリックしていくとそのInspectorが表示されますので、VRC Phys Boneというコンポーネントを消す(右端の縦3点のマークからRemove Component)か、チェックを外していきます。私は消すことをお勧めします。というのも、チェックを外すだけでもビルド時には反映されますが、lilAvatarUtils上ではリスト内に表示され続けるためです。何を消したのかわかりにくいです。
消してもいいですよね?さっきバックアップとったんですから。
チェックを外すやり方でもいいですが、削除すると消したものがMissingになってわかりやすいです。ある程度頑張って減らしてください。
僕のおすすめは、「髪の毛は前髪だけ残す(BangとかFront Hair)か全削除、ケモ耳ケモしっぽは残す、胸は残す(Breast)、太もも(Butt)は削除」です。服も大体全部消していいです。ほっぺたが伸びる子は、PhysBoneコンポーネントの数と相談です。泣く泣く消さなければいけないこともありますが、前進には犠牲が伴います。
ちなみに、残していいPB Component(揺れる物の数)は、Mediumで16個です。
未解放
TASK
Medium以下にするためには70000以下を目指します。まずは服で隠れている体のメッシュを消してしまいます。体のメッシュを選択し、Add ComponentからAAO Remove Mesh By Blendshapeを追加します。

服で隠れているメッシュを消してしまいましょう。どこを消すべきかは服によります。チェックをつけたり外したりして、見えない部分のギリギリを探ってください。
これだけでは絶対に70000までポリゴン数を削り切れていないので、次に服のポリゴンを減らしていきます。アバターのArmatureに、Add Componentで Meshia Cascading Avatar Mesh Simplifierを追加します(アバターの大元じゃなくてArmatureだよ!!!!)


ここから、見た目の劣化が最小限になるようポリゴンを削っていくのですが、初期設定だとすべてのポリゴン(顔や体を含む)から均等にポリゴン数を削ってしまいます。その結果、顔面が崩壊します。可愛いお顔が台無しです。Enable Auto Ajustのチェックを外して、手作業でポリゴンを削っていきましょう。
ここからは8割僕のこだわりで話しますが、まず体と顔のポリゴンは右端までスライダーを持って行って、ポリゴンを削らないようにしてください。
顔のポリゴン削ると普通に怖いです。体もきれいに見せたいですよね?
じゃあどこを削るか?髪と服です。
正面はなるべくきれいに見せたいので、前髪は削らないか、見た目の破綻がないよう最小限削ります。
横の髪、後ろ髪はそんなにみられる位置でもないのでそこそこ削ります。
服は上半身はあまり削らず、下半身から多めに削ります。
靴なんか誰も見ないのでがっつり削ります。
ポリゴンを減らす、削っていく際に、服に穴が開いたり、髪が消滅したりします。その際は、スライダーの右側、歯車マークを押して、Preserve Border Edges(メッシュの端の辺を保持)を押してみましょう。メッシュの端のポリゴンを削らなくなります。

だ、端の辺の保持は有効にしたほうがきれいに見える場合とそうでない場合があります。試行錯誤しましょう。ちなみに、さっきAAO Remove Mesh By BlendShapeで削った分のポリゴンはMeshiaに反映されないので、70000近くまで削ったらPlayモードに入ってActualPerformanceWindowを確認したほうがいいです。70000以下になってるかもしれません。
未解放
TASK
ヒエラルキーからCreate Emptyをし、名前を適当にTTTとでもしてください。
Add ComponentからTTT AtlasTextureを追加します。

現状だと何をまとめればいいのかわからないため、lilAvatarUtilsを開きます。マテリアルタブを確認しましょう。

顔と体以外のシェーダーが同じ種類のものや、材質が似ているものはたいてい結合しちゃってOKです。
TTTに戻り、統合するマテリアルを選択します。
マテリアル結合グループのところでも、結合するもののみを選択します。
その後、「結合時マテリアル参照」のところに、結合先となるマテリアルを設定します。同じ服であればどれでも変わらない気もしますが、影の設定やノーマルマップの設定などがすべて結合先マテリアルのものが参照されますので、何でもかんでも放り込むのはやめましょう。
逆にノーマルマップなどが必要なければ、それを外して結合してみるとうまくいったりします。
ほかの設定はいじらなくていいです。テクスチャの粗さが目立つときは、アトラステクスチャーサイズを4096にしてみてください。
これも結局試行錯誤です。違和感がないところまで結合してみてください。
未解放
TASK
これでMedium改変の完成です。ぜひ快適なVRC Volleyライフを。
あ、余談ですが、フェイストラッキングアドオンやカスタムされたシェーダーなんかを使っているとMediumでも重くなりがちです。気をつけましょう。
未解放