Quest・Android対応はそこまで簡単ではない話
誰だ!Quest対応はポチ!ポチポチ!ポチッ!!で完了とか教えたやつ!!引っ掻き回すぞ!
ということで、実はQuest対応って皆さんが思っているより難しいです。
たまたま簡単なアバターとかはあります。ですが、みんながみんなそうでは無いでしょうし、僕の知り合いにQuest対応しようとしてくれたけれどできなかった人がいたので今回はQuest対応について解説します。
では本編です。
何故Quest・Android用にアバターを作らなければならないのか
そもそもPCアバターをそのままQuest対応できないのはアバターが重すぎるからです。
PCプラットフォームはVeryPoorの基準が高い為ある程度重くてもマシンに負荷がかかる可能性があるくらいでアップロードはできますが、Android(Quest)プラットフォームの場合はVeryPoorの基準が低いので、そもそもアップロードできなかったりします。
そのため基準を上回らないようにQuest・Android対応する必要があります。
そしてこの基準をクリアするための作業で必ず頭を悩ませるのがPhysBoneです。
QuestアバターのPhysBone制限はこんな感じ。
PhysBone Component:8
PhysBone Transform:64
PhysBone Collider:16
PhysBone Collision:64
中でもPhysBone Collisionの数がかなり制限されている上に調整の仕方が難しいです。
では、どうすればいいのか解説していきます。
方法
ここからはQuest ToolsでconvertしたアバターがHierarchieにある事を前提として解説します。まだ済んでいない方はconvertして、convert終了後にPhysBoneが多すぎるという内容のウィンドウとそれを閉じるとconvertしたアバターに含まれる
PhysBone Components
PhysBone Colliders
Avatar Dynamics Contacts
の一覧が表示されます。そのタブを出しておいてください。それを使います。
①「Remove PhysBones」を表示させる
VRCQuestToolsからRemove PhysBonesのタブを表示させます。
上記の
「convertしたアバターに含まれる
PhysBone Components
PhysBone Colliders
Avatar Dynamics Contacts
の一覧が表示されます。」
と同じやつです。
②PhysBoneを削減する
先ほど紹介した様に
PhysBone Component:8個まで
PhysBone Collider:16個まで
Avatar Dynamics Contacts:16個まで
に厳選、削減しましょう。
残すべき優先順位は自身の残したいPhysBone順で良いと思いますが、僕は
髪(特にポニテ等)>ケモ耳>尻尾>服と決めて残しています。
現状PCVRユーザーが多いですしQuest単体ではある程度仕方ない部分はあるので、PhysBoneを削るのはまぁまぁ心が痛みますが、人思いにカチッと。
③VRCSDKのBuilderを確認する
VRCSDKのBuilderとはいつもアバターアップロード時に使っているあのタブの、「Bild and Publish for Windows(Android)」するあの画面です。
ここで「Bild and Publish for Android」が押せる、これ以上調整する必要がないと言った場合にはアップロードしてここで終了となります。お疲れ様でした!
押せないという場合は「Switch Bild Target」の下にある英語の文章がズラーっと並んでいるところに注目して「PhysBone Collision Check Count」という項目を見つけてください。
その項目の数字が64以上だとアップロードができません。
PhysBone CollisionはRemove PhysBoneからは削減できないため、一番手っ取り早い方法としてはPhysBone Componentを更に削減することです。
詰まるところ、揺れものがもっと少なくなってしまうということでもありますが…。
ですがそもそも姿が見えないよりはマシだと思います。人思いに…カチッと…。
こちらの”削減”優先順位は中々決めにくいと思います。僕はアクセサリー>服>内側の髪>後ろ側の髪(ポニテ等は除く)>前髪>ポニテ等の順位で削減しています。
また、1個削減する毎にVRCSDKのPhysBone Collision Check Countの項目の右にある「Select」を押してアバターの状態を更新しましょう。
ちなみに、この作業前にconvertしたアバターをコピーしておくとPhysBone Componentを更に削減した後に
「あれ?思ったよりPhysBone Collisionの数が減っちゃった?なら、あのPhysBone Componentは残せたかもしれない…」ってなった時にやり直しができます。
PhysBoneが原因でアップロードできないパターンは大体ここら辺が原因です。
QuestToolはアップロードができない原因を教えてくれる機能もついているので、まだアップロードができない方はSDKの画面と一緒にそちらも確認してみてください。
最後に
そして、もしかしたら作業の工程で自分の理想とはかけ離れてしまった方もいると思います。
ここで一つ、昔の話をします。
SDK2が全盛期の頃は揺れもの(Dynamic Bone)を追加するのに慥3000円くらいする有料Assetを購入する必要がありました。ですので当時、髪の毛ガッチガチの人なんて珍しくなかったです。僕もそうでした。
気休め程度の話ではありますが、揺れものなんてあまり気にする必要はないんじゃ無いかな〜と。
ご質問がありましたら気軽にお聞きください。
Twitterに頂ければ早めに返信すると思います。
では、また今度。
この記事が気に入ったらサポートをしてみませんか?