見出し画像

カッパちゃん3Dモデルのグッズ化計画(6)~Unityでテクスチャのシェーダー調整~

■おさらいと予定

こんにちは、もにゃです!メモ(5)からちょっと間が空きました( ゚Д゚)ノ
ぎっくり腰をやったり、メタバースのメモを書いたりしてました。

予定では8月中に、カッパちゃんグッズの試作を作るつもりでいたのですが・・・おかしいね?( ゚Д゚) 思ってたより上手くいってないぞ!!
とりあえずカッパちゃんを任意のポーズに出来て、静止画が撮影出来れば良いのです。―――が、今の所MMDのように「コレだ!」という感じに出来てない(;´∀`)
メモ(1)から確認してきたのは以下で・・・

<確認済み・保留中>
・メタセコでポリゴン移動でポーズ

  →可能だが形の歪み変形がでる可能性があり保留
・メタセコでポージングしx形式出力、MMDでアクセサリとして読み込み
  →可能だが形の歪み変形がでる+サイズ感調整が必要
・VR(仮想空間メタバース)でポーズ
  →VR機器が無いので決まった動きしか出来ずポーズ不可

<今後の予定>
・メタセコでボーン入れてポーズ
  →ボーン入れ勉強し直し
・Unityでポーズ
  →テクスチャ調整を調査中
  →ポーズのやり方お試し

・・・という感じです(´・ω・`)
ぶっちゃけVRは最初から無理かなとは思ってましたが、Unityが想像以上に難しいというか操作性がどうしても合わないというか。あと何よりかにより英語がね・・・うん。ほんっとに苦手なので、もう英語ってだけで脳みそが拒否するのでね・・・(´;ω;`)ウゥゥ
テクスチャの件と、ポージングの件・・・Unityの英語と操作性の問題でぶっちゃけ気が遠い(´・ω・`)
ここはもう諦めてメタセコのボーン入れやっちゃおうかな~!!モーフも入れられる筈だしなーーー!と思ってしまうのですよねぇ(;゚Д゚)
ちな、メタセコでボーン入れの勉強したの何時だったかな~って見たら、モデリング51日目でした。
メタセコ付属モデルにボーン入れて、ポージングさせたやつ!コレコレ!

Unityが難しく無いならそれでやるんでも良かったけど、あの操作性と英語に苦戦するならもうメタセコで良いのでは?!ライティングはイマイチだけど試作品はそれでいけるやろ!!・・・と言う事で早速メタセコでボーン、モーフに入りたい・・・
ところなのですが、中途半端が嫌いなもにゃさん(;´∀`) 途中で放置している「Unityのテクスチャ調整」について作業してからのが良いと思う。
途中で投げ出すの嫌いなのですよ(==;) 絶対後で気になっちゃう。
ということで、ちょっとやってみます。


■Vroid→blender経由FBX出力→Unityでテクスチャ調整(再々挑戦)

では再々挑戦です!
あ、その前に。前回テクスチャが予想と違う感じになってしまったのはこちら(↓)の作業です。この「再挑戦」の「再々挑戦」となります。

さて改めまして。
環境は、
 作業PC:Win8
 導入:
  ・metasequoia4(今回ここでは使わないけど)
  ・blender 2.93win-x64
  ・blenderアドオン「VRM Add-on for Blender」
  ・blenderアドオン「Cats Blender Plugin」
  ・Unity 2018
  ・Unity Hub
  ・Vroid β版


0、事前に

メモ(4)でやりましたが、blenderにアドオン「VRM Add-on for Blender」と「Cats Blender Plugin」が入ってるのが前提です!

1、Vroid(VRM形式)をblenderにインポート

メモ(5)に引き続き、サクラちゃんVRMをblenderにインポートします。

2、テクスチャの確認と照明変更

【3Dビューのシェーディング】の「v」を押しカラーを「テクスチャ」に照明を「フラット」する。

3、アドオン「Cats」適応

(UIを白くしたら見えにくいけど)「<」からプラグインメニューを出し、「CATS」タブの「モデル補正」をする。

4、Armatureも含めて出力を有効にする

―――ハイ!これはメモ(4)ではやってない作業です。
参考にしたのはこちら(↓)

.Blenderには、VRMファイルの入出力が出来る「VRM Importer」というアドオンを使って、VRMファイルをインポートします。出力に関しても、このアドオンで行えます。出力時は、Armatureも含めて出力しないと、ボーンやウェイトの設定が反映されないので注意が必要です。ボーンやシェイプなどの設定が飛んでいるので、Unityで設定し直さなければいけないという記述をよく見かけますが、これが原因です。Armatureの項目の目のマークを開かせておいて下さい。この状態で出力すると、自動的にボーン関連の設定が反映されたVRMファイルが出力されるので、blendファイル経由でUnityにデータを渡して、ゴチャゴチャと設定し直す手間が大幅に減ります。

引用元:上記リンク

――とあり、【Armatureも含めて出力】とある!
確認してみると、既に目のマークが入っていて有効になってる模様。これが外れてると色々な設定が無いまま出力されてしまう様です。なるほど( ゚Д゚)

5、テクスチャを内包したFBXファイル保存

blenderメニュー→ファイル→エクスポート→FBX選択、blenderファイルビューダイアログで「パスモードを自動からコピーに変更し、横の箱アイコン押して有効にする」ことで、テクスチャを埋め込める。

FBX形式で保存しましたので、blenderは終了です。

6、Unity2018にインポートし、テクスチャを表示させる

Unity2018に新規プロジェクトを作り、FBX形式サクラちゃんをインポート。
まだモデルは真っ白です。

サクラちゃんモデルを選択し、「インスペクター」タグを「Materials」に変更。テクスチャ欄の「テクスチャを抽出」を押す

テクスチャファイル出力フォルダを選択するウィンドウが出たら「フォルダの選択」を押す。

テクスチャ画画像にインポートされ、モデルに反映されました!

7、Sceneにモデルを置いて確認する

まず床を作ります。

SceneにサクラちゃんモデルをD&Dし、位置xyzをゼロにして中央に置きます。

8、テクスチャを調整する

まずは、前回UniVRMを使ってインポートしたVRM形式の画像と並べて比較してみましょう!

ハイ!テクスチャの設定が全然違う( ゚Д゚)ノ
UniVRMで呼び出した方はVroid設定をそのまま使って表示されているらしく綺麗です。
blenderを経由したFBX形式モデルは、アドオンのCATSをやったにも関わらず透過部分は真っ黒だし髪は白いし・・・CATSの時の画像と違いすぎるよーー!(;゚Д゚)ノ

んで、これを調整していかねばなりません。
まず参考にさせて頂いたのがコチラ(↓)です。

目の周りがパンダみたいに白目になったり、白髪化したりしているのでシェーダーを設定します。
シェーダーをスタンダードでRendering ModeをOpaqueからCutOut
あるいは
Unlit/Transparent Cutout
あるいは
VRM/Unlit Tecture(目など)

VRM/UnlitCUtout

暗いのは
Toon Lit VRChat/Mobile/Toon Litが万能

上記リンクより

―――とのこと。
ちょっとやってみようと思ったところ・・・マテリアル無しになってるwww アセット欄に有る球体にテクスチャが表示されてるのがマテリアルの筈なんだけど、どうやらテクスチャは表示してるけどちゃんと抽出されていない感じ?

てことは「マテリアル抽出」をやってみればいいのかな?

と、やってみると・・・マテリアルがテクスチャに適応されました!

マテリアルの球体を選択すると、シェーダーが選べるようになってる!
これで作業が出来ます。

・・・が、このままだとテクスチャとマテリアルがずらっと並んで分かり難いのでtexフォルダとMaterialフォルダを作ってそれぞれ収納します。

では1つずつマテリアルのシェーダーを確認していきます!
シェーダー「standard」のまま、その下の「Rendering Mode」を「CutOut」にしたら、衣装が透過しました!

変更していきましたが・・・う~ん(;゚Д゚)
UniVRMで呼び出したモデルのような感じになりませんし、髪の毛や眉毛、睫毛が白いままです。

解説サイトさんを見ると、プルダウンの選択肢に「Unlit/Transparent Cutout」「VRM/Unlit Tecture」「VRM/UnlitCUtout」とあるのですが・・・それらが無いのですよねぇ(;゚Д゚)

これは、シェーダーを追加したりするのでは?
と思い、他の方の解説を見てみますがイマイチわかりません(;゚Д゚)
こちら(↓)の解説で・・・

「Opaque」が透過無しの通常のシェーダー、「Cutout」が透過部分を切り抜くシェーダー、「Transparent」が半透明を表現するシェーダーとなります。

上記リンクから引用

とあったので、本来はこの選択肢でやるようです。
・・・で、このサイトで書かれていた髪の処理が・・・白になっている元のテクスチャを、blenderの時点で色変えしていました!!

ああああああああ(;゚Д゚) もしかしてそれしないと色出ないの?!そうなのかー!
・・・と思ってたら、Unityを一緒にいじっていた相方が材質に色をつける方法を発見www
Main Maps アルベドの横の四角を押したらカラーパレット出て、色を選んだら・・・髪がピンクになった°˖☆◝(⁰▿⁰)◜☆˖°

髪と頭皮はこれで良いかもです。
・・・が、眉毛、睫毛はダメっぽいwww

ギリやれてこんな感じでしょうか・・・でもイマイチですね(;´∀`)
やはりこれはテクスチャの画像処理をした方が良いのかもしれません。

調べていると、アニメ系のTOONシェーダーを使う場合の事が書かれた記事を発見!

・・・が、なんか難しい事書いてるーーー(><;)
え、これちょっと理解するのは、今は無理! なので、シェーダーについては今回は先送りします!無理!とりあえずテクスチャの透過が直せたから今回はそれでよし!

一応確認で、カッパちゃんモデルを確認。
・・・おやぁ? シェーダーが綺麗に見えてるね?!(;゚Д゚)
前回メモ(4)の時は白かったり黒かったりしたような・・・( ゚Д゚)?

とりあえずシェーダーは大丈夫そうです。が、何故か左のモデル、ポリゴンのゴツゴツ感があるんですよねぇ(;゚Д゚)
いや~・・・何が何やらわかりませんwww
メタセコからFBX出力した方は大丈夫なので、やる時はそっちでやらねばですね・・・(´・ω・`)


■テクスチャの調整<追記>

実は、別メモでMMDモデル(PMX形式)をVRM形式に変換し、メタバース用アバターにする・・・というのを書いていたんです。
そこで作業をまとめててですね・・・

実は、シェーダーがTOON系の綺麗なのにできてるんですよ!こちらでは!
同じ様な事が出来るはずなのに・・・なんで出来ないのかなぁ~(;´∀`)
やり方あるんだろうけど、それがわからないもにゃさんであった遠い目
ほんっと分かり難い・・・Σ( ゚Д゚)ハッ

まてよ?!シェーダー変更するためのインスペクター選ぶ「元」が違う・・・?!
アセット内マテリアルフォルダの、球体のマテリアルを選択して、それのインスペクターから選ぼうとしてたけど―――

アバター化するためにVRMモデル調整してる時・・・ヒエラルキーのモデル名の▼ツリーからフォルダを選んで・・・インスペクターに・・・あったぁああああああ( ゚Д゚)!!!

あったよ!!ここでシェーダー選べるんだ~~~~ヾ(*´∀`*)ノ
やったー!

んで、もしVRM形式にするなら、アバターの時と同じでUniVRMパッケージ入れればVRMのTOONも使えるってことだね?!うおお( *´艸`)
やっと理解したよぉおおおお!!!

ハイ!アニメっぽいシェーダーに出来ました!よかった!
テクスチャの調整はこれで出来るようになったーーーーーヾ(*´∀`*)ノ


■Unityでポーズをつける(惨敗!!!)

では、ポーズをつける方法を勉強します( ゚Д゚)ノ
これが出来ないとカッパちゃんグッズ化には使えませんからね!

1、Rigをヒューマノイドに変更

まずは、ヒューマノイドボーンにします。
Vroidを調整する際の解説でも必ず行われており、これをやらないと不具合がでるっぽい。

アセットでモデルを選択し、インスペクターRigのアニメーションタイプをヒューマノイドにし、適用する。

下の「設定」を押す

ボーンの状態が見れるが、ここが緑だったらOK( ゚Д゚)ノ

この窓を閉じるのは、「三」押して「look」を押す

2、背景を作る

続いて、背景を作ります。
参考にしたのはこちら(↓)

床を作った時と同じく、平面を作ります。

2つ目の平面を回転させて、z軸を下げます。
背後に、白い平面ができました。

背景平面用のマテリアルを作ります。
アセット内を右クリック→作成→マテリアル。名前はまぁ適当にw

マテリアルを選択して、Shaderを「Standard」から「Unlit→Color」にする

四角を押すとカラーパレットが出るので任意の色にする

2個目平面を選択して、マテリアルをインスペクターにD&Dすると、背景平面に色がつく

3、カメラを移動する

ヒエラルキーのカメラを選択して、カメラ移動してモデルを撮影出来る位置にする

ゲームタブで画面確認。カメラ位置調整していく。

ヒエラルキーのライトをクリックして、光源(太陽)の位置を移動・回転させる。

ゲームタブでライト確認。
なんか、画像が拡大されてたっぽい。バーを一番左にすると1倍で、カメラビュート同じになるね・・・今気づいたw

4、ポーズを取らせるため、Bone Toolを追加する

さて、やっとポーズを取らせる準備です。
検索するとこちら(↓)の記事を発見。

ポーズをつけるための拡張機能「BoneTool」をマイアセットに追加する
をやったのだけど、なんでかインポートできないのですね~( ゚Д゚)

「マイアセットに追加」を押して、Unity IDでログイン→ログイン後に「Unityで開く」をおすとUnityにインポートされる

――とあるのですが、Unityでプロジェクトを開いてもインポートもDLも出来ない~(;´∀`)
メニュー「ウィンドウ」からも出来ない~~~~!!

んで、もう一つ見つけた方法(こちら↓)

「animation rigging」をインポートするらしいんだけどそれは2019かららしく・・・2018には無い模様(;´∀`)

――ていうか、他にも検索したんだけど・・・
やり方が全然分からない(><;)
え、ボーン動かすのだけでこの分からなさーーーーーー!!!

ダメだ・・・これはダメです。もにゃさんの手に負えません(´;ω;`)ウゥゥ

とりあえずいったん保留で・・・(><;)
ていうかほんとうにわからん!!もっと分かりやすくしてくれUnityよーーー!!!


―――ということで(;´∀`)
Unityさんは・・・形式変換、テクスチャ調整などは出来るようになりましたが・・・ボーン動かしてポージングが出来ないです。
それだとカッパちゃんグッズ化では使えない!!
他のやり方を探す事も視野に入れますが、とりあえずはここでいったん切り上げとします。

次は、メタセコでボーンとモーフ入れやって、メタセコで動かして静止画撮影を目指してみたいと思います。
メモ(7)に続く!!!


■Unityでモデルのサイズ変更(追記)

折角画像にしたのでこちらでも!
まずは見本のカッパちゃんヾ(*´∀`*)ノ
中央に小さくいるのは、メタセコから出力したFBX形式モデルです。
んで足しか見えてない巨大なのがメタセコからblenderを経由しFBX形式にしたカッパちゃん!サイズが!

ヒストリー欄で、blender経由カッパちゃんを選択します。
インスペクター欄に拡大/縮小のスケールを入力できる欄があるのでxyz全て「0.01」にしました!

いやデカいよwww 流石にデカすぎだよwww