ミーシェちゃんを雑に違和感なくQuest対応する

前回のあらすじ

アップロードまではできるけど赤面させるとすごいことになっちゃう……。

f:id:outoz9:20200403190534p:plain
すごい赤い

TL;DR;

言ってしまえば力技と妥協。

  • 透過が必要なMaterialのShaderVRChat/Mobile/ToonLitにする
  • 透過される先の部分を元の顔部分とかからひっぱってきて違和感なく「合成」させる (力技)
  • あまり面積が広い部分は表情の該当するもののBlendShapeを0にする (妥協)

この記事の内容と注意点

  • 2020.1.1アプデ対応版です
  • 試行錯誤の結果を記録する記事に近いです
  • 別のアバターなどに適用できるかは分かりません
  • Blenderと和解する気がない記事です。
  • アプデ直後なので記事の内容が変わることがあります
  • 「妥協」と「力技」の産物です。参考にならないかもしれません。
  • VRChat, Unity初心者なのでアドバイスください>< *1

アプデがきたら記事を完全に書き直すことになってしまった……。 (VRChat 2020.1.1 @ Build 910)

ひつようなもの

  • Photoshopとか(色が塗れればなんでもOK)
  • Unity (2018)

手技

1. 塗る

これを例示としてあげると、素材画像をあげることになるのでここには記載しません。 *2

ということで自分でつくったクソ雑な図をこう……

f:id:outoz9:20200403184401p:plain
UVに合わせて塗るという力技

赤面をどうしても再現したいなら顔の部分のUVを考えてコピーして載せるって手段があります。今回は頬染めは あきらめます

テクスチャ改変に関する手法については細かく書かないし、やりかたがあってるか分からないのであれですが ImageディレクトリにぶちこんでそのままMaterialに適用(ドラックアンドドロップ) してます。

参考:

tetoralog.com

2. Animationを改変する

Animationを書きかえてしまえば頬染めしなくなるんですよ、それはそうなんですよね……。

ここからはPCとQuest向けは別のProjectで立てている前提で書いています。 手法としてはシンプルで、Assets > Mishe > Animationディレクトリの中の表情のAnimationから透過で酷いことになってしまうBlendshapesを消してしまう。というものです。

やり方は *3 、変更したいAnimation(*.anim)を選択して メニュバーのWindow > Animation > Animationを開きます。 するとこんなのが出てくるかとおもいます。

f:id:outoz9:20200403185308p:plain

これを開いている状態で Inspectorの下側のプレビュー *4 をみてみると、見事に真っ赤になっている状態なことが分かります。

f:id:outoz9:20200403185459p:plain
見事に真っ赤になってますね

ここでやることは一つだけ、もう一度Animation Windowを開いて Body: Skinned Mesh Renderer.Blend Shape.頬染めを右クリックで選んでRemove Propertyするだけ。 すると、以下のように「頬染めはないけど同じような表情」ができあがるとおもいます。

f:id:outoz9:20200403185719p:plain
若干表情が固い気もしますが「違和感」はないですね

これで完成です。あとはQuest向けのいつものアップロードをするだけです。 表情の変更に関しては以下の参考文献を確認していただきたいとおもいます。

f:id:outoz9:20200401215016j:plain
Questから確認 問題ないですね

まとめ

2020.1.1アップデートが来て、現状(2020/04/03現在)、Questには透過できるシェーダーを適用できなくなってしまいました *5 。したがって、どうしても「違和感なく」Quest向けにアップロードするとなると、私の思いつく上では(またUnityだけでやるには)これぐらいしかないのかなと思います。はい。まあ解像度の高い *6 PC向けには普通の透過版を上げればいいだけなので、まあ……って感じはしますが。

参考文献

shiasakura.hatenablog.com

*1:New Userやぞ

*2:再配布になる可能性があるため。

*3:当然ですがこれをやる前にBackupはとっておいてください

*4:おそらくデフォルトではなんか変なオッサンが写ってるかも。 左側のprefabをドラッグアンドドロップで投げこむとプレビューできます

*5:従来のAdditiveはもちろん Multiplyもつかえないし、新規追加したものはアップロードできないし……。

*6:見たことないんですけども