where

FaceRigに自作3Dモデルを入れる事や、その他技術っぽいことについてメモするだけのブログです

【FaceRig・Blender】モデリング - ②マテリアルとテクスチャ

マテリアル

全てのメッシュにマテリアルが割り当てられていること

このマテリアルごとにインポート時にシェーダーが割り当てられる

 

マテリアルの命名規則

モデル名 + "_" + シェーダータイプ + "_" + シェーダー名

モデル名:Test

シェーダータイプ:sht_metalcloth

シェーダー名(オブジェクト名、マテリアル名):face

→「Test_sht_metalcloth_face」

 

この命名規則は無視可能

命名規則に従うとインポート時にシェーダーを自動的に割り当ててくれる

従わなくても個別に設定できる

 

マテリアルは最大10個まで


テクスチャ

全てのメッシュにUVマップが割り当てられていること

(全てのメッシュがUV展開されていること)

 

UVマップは1つのオブジェクトに1つであること

f:id:wfoo13101:20190205175110p:plain

2つ以上あるとインポートのモデル取り込み時に詰まる

 

テクスチャはTargaファイル = .tgaファイル

Photoshopだと「別名で保存」からtgaで保存できる

メディバンペイントだとできない……のでフリーソフトなどで変換

XnConvertだと上手くインポートできた

XnConvert のダウンロードと使い方 - k本的に無料ソフト・フリーソフト

 

テクスチャ自体は必須ではないのでインポートの確認をしたいだけなら飛ばしていい

 

テクスチャのサイズは2のべき乗になっていること

(16/16、32/32、64/64、128/128、256/256、512/512、1024/1024ピクセルなど)

アルファあり32bitで保存すること

 

テクスチャの命名規則

モデル名 + "_" + オブジェクト名 + "_" + テクスチャタイプ

モデル名:Test

オブジェクト名:face

テクスチャタイプ:d(拡散テクスチャ)

→「Test_face_d.tga」

 

この命名規則は無視可能

命名規則に従って、ジオメトリファイルと同じ階層に置くと、インポート時に自動で読み込んでくれる

従わなくても個別に設定できる

 

シェーダーの種類ごとに使用できるテクスチャの種類が決まっている


シェーダーの種類

sht_furnormals

毛皮

sht_furnonormals

法線アニメーション*1なし毛皮

sht_physfurnormals

物理演算付き毛皮

 

sht_metalcloth

金属や布

 

sht_eye

 

sht_teethblendn

口内部

 

sht_hair

髪の毛

 

sht_skinblendn

sht_skinnoan

法線アニメーションなし肌

 

sht_prelit

トゥーン調に近い感じになるらしい*2


テクスチャタイプ

d:拡散(基本)

b:法線マップ(凹凸表現)

b1:追加法線アニメーション

b2:追加法線アニメーション

b3:追加法線アニメーション

b4:追加法線アニメーション

s:スペキュラー(鏡面反射)

s2:追加スペキュラー

sc:スキンスキャッター*3(肌の透け感)

ao:アンビエントオクルージョン*4(間接光)

m:毛皮マスク

cm:カラーマスク

 

シェーダー「sht_eye」でのみ

iristext_d:虹彩

raotext_d:鏡面反射

*1:Tシャツのシワをノーマルマップのアニメーションで表現 – Blender Snippet

*2:How do I get a "toon" effect? :: FaceRig Q&A
> How do I get a "toon" effect?
> In the documentation at Shader Types you will need to use the 10th one called sht_prelit without the vertex color information. Bare in mind it will not be an exact toonish effect but close to it.

*3:Subsurface Scattering — Blender Manual

*4:Blenderでアンビエントオクルージョンマップを焼く - Transition

【FaceRig・Blender】モデリング - ①メッシュ作成

メッシュを作成していく時に気を付けること

ポリゴンであること

NURBSなどは不可、メッシュに変換すること

カーブなどを使用した場合は、「オブジェクト」>「変換」>「カーブ/メタ/サーフェス/テキストからメッシュ」を選ぶ

f:id:wfoo13101:20190131162424p:plain

 

原点にあること

サンプルだと口の位置がちょうど原点あたりになっている

 

Y軸(緑)で正面を向いていること

f:id:wfoo13101:20190131163058p:plain

blenderデフォルトでテンキー1を押した際の正面と同じ

サンプルの向きと逆になっているがこれでも大丈夫

 

スケールに注意

モデルの高さは、公式ドキュメント曰く「2単位」

一般的な単位ではなく、モデリングソフト内のスケール基準とのこと

サンプルのサイズ感はこんな感じ

f:id:wfoo13101:20190131164148p:plain

コンフィグファイルで調整もできるらしい

 

全てのメッシュが繋がってなくてもよい

離れたパーツや開放面は可

 

ポリゴン数は50000以下が公式のおすすめ

あまり複雑にしすぎなければそうそう超えないはず

オブジェクトモードでメッシュを選択していると画面右上に表示される三角面の数で確認できる

f:id:wfoo13101:20190131163538p:plain

面を三角化しているかどうかで変わる?

 

のちにマテリアルを割り当てるのを意識してオブジェクトを分けていくこと

シェーダーがマテリアルごとに割り当てられるため

顔、目、髪はそれぞれ分けるなど

 

オブジェクト名は自由

マテリアルやテクスチャの命名に使うのを意識した名前で

マテリアルが最大10個までなのでオブジェクトも10個までにしておく

 

FaceRigで勝手にスムーズシェーディングされてしまうので

角を出したい場合は辺を分離するなどする必要がある

辺にシャープを付けたり、自動スムーズで角度制限を付けるのは反映されない

 

 

COLLADA変換時に面は三角化されるので、先に三角化しといて様子を見るのもいいかもしれない

 

作り終わったら「ctrl + A」で位置、回転、拡大縮小を適用すること

しないとインポートした後にオブジェクトの大きさがバラバラになる


参考

位置、回転、拡大縮小の適用について

【初心者用】Blenderで地味につまづいた所 / MOCHI-blog

【FaceRig・Blender】モデリング - ⓪はじめに

blenderで作った自作3DモデルをFaceRigで使うために

 

作るもの

  • モデル本体 = ジオメトリ(.daeファイル)
  • テクスチャ(.tgaファイル)
  • アニメーション(.daeファイル)

 

これらを一つのフォルダにまとめておく

フォルダの場所はデスクトップかC直下など分かりやすい場所が良い

パスに空白が入っていないこと

 

流れ

  1. メッシュ作成

  2. マテリアルとテクスチャ

  3. ボーンとウェイト

  4. アニメーション

  5. エクスポート

  6. インポート

 

その他

  • 困ったら

  • 資料

【FaceRigメモ】インポート

①ImportWizardを立ち上げる

~\steamapps\common\FaceRig\Bin\Tools\ImportWizardNew\

 内のImportWizard.exe

 

Toolsの中にImportWizardとImportWizardNewの両方ある場合はImportWizardNewの方が良いらしい?

 

※『ImportWizard』を立ち上げる前にFacerigを1回は起動すること

※『ImportWizard』は右クリックから管理者で実行を選んで立ち上げること

 

上記を行わないと

Can't write script params file...

などと言われてData FolderやGeometry Fileの選択で詰まる

 

②Model Importerを選択

ImportWizard.exeを立ち上げたらこの画面が出る

[Model Importer] [Backgrounds Importer]

Model Importer を選ぶ

 

③Data Folderを選択

 左上Data FolderのBrowseで3Dモデルの入っているフォルダを選ぶ

条件を満たしている場合はジオメトリ、シェーダータイプ、テクスチャ、アニメーションが自動的に読み込まれる

  • ジオメトリは命名規則に従っていること
  • シェーダータイプはマテリアル名が命名規則に従っていること
  • テクスチャは命名規則に従っていて、かつジオメトリと同じ階層にあること
  • アニメーションは命名規則に従っていて、かつanimフォルダ内の適切なフォルダにあること(一度別の場所からインポートを成功させた場合、自動的にフォルダが作成される)

 

④Geometry Fileを選択

自動的に読み込まれなかった場合はGeometry FileのBrowseでジオメトリのdaeファイルを選ぶ

 

⑤シェーダータイプを選択

Shader TemplateがUNSPECIFIEDになっている場合は何かしらシェーダータイプを選ぶ

特に決めていない場合はMetal And Clothを選ぶ

 

⑥テクスチャを選択

シェーダータイプを決めると右側にテクスチャを選択する表が表示される

f:id:wfoo13101:20190219161844p:plain

命名規則に従っていて、且つモデルと同じ階層にtgaファイルがあった場合は自動的に取り込まれる

そうでない場合は各項目のBrowseから選択する

一番上のDiffuseが基本的な拡散テクスチャなので、よくわからない場合はここに設定

これを左側に表示されているマテリアルごと全てにやる

 

⑦アニメーションを選択

Animation タブを選択

 

各々のアニメーションについて右側のBrowseからアニメーションのdaeファイルを選択する

 

まだアニメーションを作っていない場合は下にスクロール

idle1 だけ設定する

BrowseからGeometry Fileにも選択したdaeファイルを選ぶ

 

⑦インポート

右下の Importボタンを押す  

 

このダイアログが出たら成功

 

⑧確認

FaceRigを立ち上げて確認する

アバターギャラリーの一番下を見る

これだともう画像が出ているが

最初だと?マークで表示されている

 

インポート成功!

 

サムネについて 

一旦インポートすると、インポートしなおしても最初に作成されたサムネは更新されない

~\steamapps\common\FaceRig\Mod\VP\PC_CustomData\Objects

内のavater[アバター名]フォルダにモデルデータが入っている

サムネを更新したりしたい場合はこのフォルダ内のファイルを操作する

もしくはこのフォルダを消してインポートしなおす