【VRChat】自作アバターの突き抜け対処法5選(3Dキャラモデル)

3DCG
スポンサーリンク

はじめに

今回はVRChatのアバターの突き抜け対処法を5つ紹介します。

本来の突き抜け対策

本来の突き抜け対策は『見えない部分のポリゴンを消す』です。
ゲーム系では容量削減につながりこの手法が良く使われています。

が、VRChatのモデルは着せ替えなどを行うので内側のポリゴンを消せません。
そこで普通とは異なったアプローチでの突き抜け対策が必要になります。

突き抜け対処法

突き抜け対策は下記の5つです。

・内と外のポリゴン構造を合わせる
・内と外の厚みの差を増やす
・三角ポリゴン化
・シェイプキーで形消す
・透過テクスチャで消す

この5つについて解説します。

内と外のポリゴン構造を合わせる

メリット:自作アバターの場合、最も使いやすい修正方法。
デメリット:既存のモデルに対して行うのは難しい。

内側のポリゴンを消せない場合、外側と内側のポリゴン構造が違うと突き抜けます。

これはポリゴン構造でメッシュの曲がれる範囲が変わる為です。

なので内と外のポリゴン構造を合わせる必要があります。

ポリゴン構造を合わせるとポリゴンの可動範囲が同じになります。
結果突き抜けなくなります。

これで内と外のポリゴン構造を合わせる突き抜け対策が完了です。

内と外の厚みの差を増やす

メリット:最も効果的な突き抜け対策方法
デメリット:厚みを増やし多分ポリゴンが膨らみ形が変わる

服のモデルは素体を膨らませて作ってます。
このふくらみの量が少ないと突き抜けます。

なので外のふくらみを増やすか、内のモデルを痩せさせます。

すると突き抜けが治ります。

Blenderの場合、Alt+Sの収縮/膨張でふくらみを増やせます。

これで内と外の厚みの差を増やした対策が完了です。

三角ポリゴン化

メリット:形に対しての影響が少ない
デメリット:3角ポリゴンにするとループカットが入らない、効果が薄い。

3DCGの4角ポリゴンは自動で3角ポリゴンに面が解釈されています。
これはメッシュを変形した際に変わります。
(詳細はこちらで解説)

これはキャラクターモデルでも起こります。

内と外の面解釈が変わるタイミングが違うと突き抜けます。

面解釈問題が起こる所の内と外の4角ポリゴンを3角ポリゴン化します。
すると面解釈が固定化されます。

これで4角ポリゴンの面解釈による突き抜け対策が完了です。

シェイプキーで形消す

メリット:最も効果的な設定方法
デメリット:シェイプキーが増える。衣装の脱着にシェイプキー動作がアニメーション必要。制作過程がホラーコンテンツ。手間が増える。

シェイプキーを使うと疑似的に内側のポリゴンの消すことができます。
最も既存の3DCGアプローチ+衣装差分などに対応した方法です。

少しホラーですがこのようなシェイプキーを作ります。
関節に対してシェイプキーを作ると効果的です。

内側の形をシェイプキーで消すと突き抜けが消えます。

これでシェイプキーで形消す突き抜け対策が完了です。

透過テクスチャで消す

メリット:完璧な突き抜け対策ができる。
デメリット:衣装の脱着などが基本できない。(マテリアルの違う2つのメッシュが必要)。透過テクスチャ素材が増えて容量が増える。

シェーダーでは透過テクスチャが使えるものがあります。
これを使うと部分的に透過できます。

これを使うと内側ポリゴンを完全に非表示にできます。
上手く使うと突き抜け対策ができます。

これでマテリアルの透過で消す突き抜け対策が完了です。

※突き抜け対策としては服の中側に設定するのが正解です
 が、ブログサービスの利用規約の都合で服の外で透過する様子を紹介してます。

まとめ

今回はVRChat向けの5つの突き抜け対策について紹介しました。
他にも、VRChat向けのおすすめ突き抜け確認法を解説中。

ぜひ、こちらもご覧ください。

コメント

タイトルとURLをコピーしました