BlackIceCoffeePhenomenon

溶け出す氷によって味が薄くなると併せ、味覚が苦味に慣れていくことで、加速度的に味覚への刺激が減衰する現象に関するブログです。

hitogataをベースにしたVRChatのアバター作成

カスタムキャストでタイムラインが眼福なので
がっつり3DCGには入れなくとも、足がかりみたいな触れ方ができればと思って書きます。

 

ちなみにアバターを作成しなくてもVRChatはプレーできますし
ヘッドマウントディスプレイなくてもプレーできます。VRとは。
アバター配布しているワールドたくさんあるしね。
東方やアニメのキャラは大体ある気がします。

 

それでもオリジナルのアバター作りたい!っていう
我敢えて修羅の道へ進まんという人のためのメモです。
というかボリュームがありすぎて、私が忘れないためのメモです。

ちなみにプレーしてすぐは自作アバターアップロードできないので、
数時間プレーしたりフレンドつくりましょう。
私の時は3時間プレーして、フレンド3人くらい、ワールド50個くらい巡ったら許可下りました。

 

ここでやるもの

 hitogataでモデルを作成し、blenderで加工して、unityで設定詰めてアップする

 

用意するもの

 

hitogataの入手とモデルの作成

 公式です。 https://sites.google.com/site/vhitogata/

 詳細な使い方については公式サイトに書いてますが、

 キャラメインキングする部分に関しては割と直感的に触ることができます。

 

  1. hitogata.exeを起動します
  2. [ツール]→[キャラメイキング]で作成します
    いくつか用意されているものを組み合わせます。
    カスタムキャストで見たことのある景色のはず。f:id:yananann:20181008202728p:plainパラメータをいじると色合いとかも変えられますよ。

    f:id:yananann:20181008202734p:plain

  3. モデルをpmx形式でエクスポートします
    出力先は「Hitogata_b2_21\Models\User」に保存されます。
    複数キャラを作成する場合は、さらに個別にフォルダを作成することで
    画像ファイルの上書きを防いだりできます。
    合わせてメイキングファイル(拡張子cfg)も保存しましょう。

 

blenderでポリゴン削減と表情周りを設定する

 初回のみプラグインをインストールし、言語を日本語にする。
 (もう忘れたので調べてもらいたい。難しくはない)

 

  1. pmxファイルをインポートする
    ファイル→インポート→pmxよりhitogataで出力されたファイルを選択する
    その際に赤丸で囲んだ部分に注意する。
    ・物理演算と表示をオフにする。
    ・拡大縮小を0.08くらいにする(身長にして160cm弱くらい)

    f:id:yananann:20181008203246p:plain

  2. ロードされたモデルを舐めまわすように見る
    ロード直後は色もなければ骨格(?)も見えてるので
    赤丸の目を押してアーマチュアの表示を消します。
    ←の赤丸で囲んだ+を押してプロパティを表示させておきます。

    f:id:yananann:20181008203411p:plain


    プロパティ下部の「MMD Display」よりメッシュのみにチェックが
    ある状態でShadelessを押すとテクスチャが反映されます。

    f:id:yananann:20181008203529p:plain

  3. グループ化されたパーツを分解する
    ツリーよりメッシュを選択し左のツールシェルフよりMMDタブを選び
    [Separate By Materials]でグループ化したパーツを分解します。

    f:id:yananann:20181008203632p:plain

  4. 各パーツのポリゴンを削減する
    ・ツリーよりパーツを選択した状態で下のツールボックスから
     スパナマークを選択し直下の[追加]から[ポリゴン数削減]を選択
    ・比率を調節し程よい面数になったら適用を押します。(画像は減らしすぎ)

    f:id:yananann:20181008203700p:plain
    VRChatにアバター登録するときは総ポリゴン数20,000以下にする必要があるので
    画面上部の面が20,000に収まるまで他のパーツのポリゴンも削減します。
    (極端に削減するとひどくなるのでバランスよく削減しましょう)

    Tipsとして照れは使わないのでポリゴン数0でよいです。

    顔や手、上半身など削除できないパーツはシェイプキーが登録されているので
    パナマークの隣の逆三角のアイコンを選択しシェイプキーの項目より
    [全シェイプキーを削除]で削除してからポリゴン数を削減してください。
    ただし顔や手は表情や動作に司るシェイプがあるのでやってはいけませんw

    f:id:yananann:20181008204016p:plain

  5. 再度グループ化を行う
    ・パーツのトップを選択し、ツールシェルフより[CATS]を選択
     [FixModel]を行います

    f:id:yananann:20181008204036p:plain


     
  6. 表情周りを設定する
    ・EyeTracking(目線)とVisemes(発音)を初期値「><」から変えます。
     変えたらCreateEyeTrackingとCreateVisemesを押して反映させます。
     (CreateVisemes押すとEyeTrackingの設定が飛ぶ気がします。再度設定しましょう。)

    f:id:yananann:20181008204049p:plain

  7. FBX形式でエクスポートする
    選択したオブジェクトにチェックをいれます。
    カメラとランプのチェックを外します。
    上部の[ジオメトリ][アーマチュア][アニメーション]のタブを開き
    項目のチェックを全部外してエクスポートします。

    f:id:yananann:20181008204114p:plain

これでblenderでの設定は終わりです。慣れれば15分くらいでできます。
最初は2時間くらい格闘するかも?


アバター作成後、ワールドをうろうろするうちに、
スカートの挙動をちゃんとしたい、パンツの色を変えたい、テクスチャ書き換えたいとか
いろいろやりたいことが出てくると思いますが
そこからがblenderの本番だったりします。

 

Unityで詳細を設定しアップロードする

  unityを使う際はアカウント登録が必要です。

  このタイミングでVRChatのアカウントも取得してVRChatSDKを入手しておきましょう

 

  1. 新規プロジェクトの作成
    Newを選択してプロジェクト名をつける。後で自分がわかるプロジェクト名をつける

    f:id:yananann:20181009225449p:plain

    f:id:yananann:20181009225520p:plain

  2. VRCSDKのインポート
    メニューより[Assets]→[ImportPackage]→[CustomPackage]を押し
    [VRCSDK-2018.08.28.13.02_Public.unitypackage]をインポートする

    f:id:yananann:20181009225651p:plain




  3. Textureの導入
    Assets内に[Texture]フォルダの作成(右クリックでできます)
    作成したTextureフォルダ内にhitogataでエクスポートした際に出力された画像を入れます。
    Tipsとしてこの段階までに画像を編集すればそれがテクスチャに反映されます。

    f:id:yananann:20181009225813p:plain

    f:id:yananann:20181009225834p:plain



  4. FBXのモデルをインポート
    [Assets]フォルダ直下にblenderで出力したFBXファイルを入れる
    画面右ペインのタブより[Inspector]を選択し、Rig、Humanoid、Configureと選択する

    f:id:yananann:20181009225926p:plain

    Configureを選択するとグリーン人間が出てきます。
    もし出てこない場合はたぶんどこかでミスをした可能性があります。
    特に問題なければDoneを押します。

    f:id:yananann:20181009230044p:plain

  5. 設定したモデルを適切な形で具現化する
    Assets内のFBXを左ペインに入れると、気持ち悪い版が出てきます。
    どのように描写するかでリアル路線になってるので変えます。

    f:id:yananann:20181009230205p:plain

    赤丸のMaterialsより[まつげ、口中、舌]以外を選択して
    右のShaderよりTextureを選択します。
    (上の3つはStandardのままの方が映えます。)

    f:id:yananann:20181009230329p:plain



  6. 具現化したモデルの目線やリップシンクを設定する
    左よりモデルを選択した状態で、右の[AddComponent]を押し
    VRC_Avator_Descriptorを選択する。 検索窓にvrcいれると特定が早い

    f:id:yananann:20181009230521p:plain


    赤丸が視線の位置で、Y軸(高さ)Z軸(画面でいう左右)を調節し眉間のすぐ下あたりに配置する
    青丸の部分はその通りに設定する。(男なら性別は男で・・・)
    するとFaceMeshが出るのでBodyをそこに入れる

    f:id:yananann:20181009230637p:plain


    青丸の設定に関しては、このような位置にくるようにする。
    RipSyncについては大体以下のような感じでそろえる。

    f:id:yananann:20181009230823p:plain

  7. アップロードする。
    メニューのVRChat SDKよりShow Build Controlを押して後はよしなにする。

 

これでおしまい。使えるようになります

 

 

 

唐突な自分語りのコーナー。

自作アバター命名規則的に、L(数字)で作ってます。 LはLightning(簡易)の略

たぶん1回目でいきなりがっつり作るより、回数やって徐々に慣れるほうがいい気がしました。
これをやるまで全く触ってこなかったので・・・

L1:hitogataプリセットそのまま(VRChatに入れられて四肢が動くだけでいい)
L2:hitogataのパラメータを触って色を変えられるようにする
L2_X:スカートにコライダーつける。失敗しました
L3:出力されたテクスチャを自在に触れることができる(簡単な手書き)

L3.5:テクスチャを思い切り書き込み手書きに見えないようにする

L3.52(いまここ):スカートにコライダーを導入する