3D スキャンした人体モデルを取り込んだ時のフロー

  • Wrap が使えるなら Wrap を使うのがよいと思います

  • ZBrush で低解像度モデル作成とベースとなるテクスチャを作成

    • 穴あきやくっついている部分を直す

      • 手順

        • モデルを分割してからテクスチャを PolyPaint に変換

          • かなり分割しないと解像度が落ちるので落ちないくらいまで分割する

          • ツール > ポリペイント > テクスチャから~

        • Dynamesh 用にモデルを複製し Dynamesh を有効化

          • いつのまにかダイナメッシュにしても PolyPaint 消えなくなってるみたい

          • Project するので頂点数は同じくらいにしておく

        • Dynamesh を利用して穴を埋めたりくっついているところを切り離す

          • Dynamesh は解像度より近くなるとくっつく

        • 大きく目立つところは直してしまう

    • 編集しやすいようにリメッシュする

      • 高解像度の Dynamesh の状態だと編集がしづらいので低解像度モデルを作る

      • 最終的にこの低解像度モデルを出力する

      • 手順

        • ZRemesher 用にモデルを複製して ZRemesher でリメッシュ

        • 分割してテクスチャから PolyPaint に変換したモデルと同じくらいの頂点数にする

        • Dynamesh のモデルを使ってメッシュと PolyPaint を Project

          • ZRemesher 用モデルを選択して Dynamesh 用モデルも表示状態にして Project する

        • 低 SubDiv に高 SubDiv を Project

          • SubDiv を最低にして ツール > サブツール > Project > 高 SubDiv を転写 みたいなのを使う

    • リメッシュしたモデルを編集してきになるところを整える

    • リメッシュしたモデルの色もポリペイントで直す

    • UV マスターで UV 展開をする

      • 今回は指先にシームが来てうまくテクスチャが貼れず大変な思いをした

      • クローンしてコントロールペイントをしてアンラップ、UV コピー・ペーストで元のモデルに適用する

    • カラーのテクスチャを作る

      • 手順

        • UV マップの解像度を最初のテクスチャの解像度と合わせる

        • 最高 SubDiv を表示して ツール > テクスチャ > 作成 > ポリペイントから作成で作る

    • ノーマルマップを作る

      • せっかく 3D スキャンしてディテールが多いのに、低解像度モデルだとそれが消えてしまうので、高解像度モデルからノーマルマップを作ってディテールを再現します

      • 手順

        • 最低 SubDiv を表示して ツール > 法線マップ > 作成 みたいなのをクリックして作る

    • FBX で書き出す

      • Zプラグインの FBX 出力を使って書き出す

      • デフォルトでノーマルマップを書き出すようになっているはずだがなっていない場合は適用する

  • Substance Painter でテクスチャ編集

    • 3D スキャンで得られたカラーテクスチャだけだとのっぺりしがちなので、PBR 向けの Smoothness/Metallic マップを作る

    • Substance Painter の対応解像度に注意

    • ZBrush で書き出したカラーとノーマルマップのテクスチャを塗りつぶしで貼って上にレイヤーで重ねていく

  • Mixamo Auto Rig + MODO でボーンを入れる

    • ツールはなんでも。

  • Unity で使う目的に合わせて編集する

  • 完成