商品紹介やポートフォリオなんかに使う時の画像を作ります。
思ったよりムズイ…というか情報が見つけられず。
こんな感じで合ってるかなーとまとめたメモです。
作りたい画像

こんな感じです。
前、後ろ、表情差分何個か。
↑このモデルはliltoonシェーダーが関係ないので
UnityではなくBlenderのほうで書き出しました。
というわけで割と簡単にできました。

一方↑こっちのモデルは、ガッツリliltoonシェーダーなので
Unityで書き出しが必要。
VRChatで、前と後ろと横の写真が撮れるワールドがあるそうです。
簡単にしたい人はそれでもいいかも。
Blenderでポーズアニメーションを作る

Blenderで、完成したファイルをサムネイル用に複製
ポーズモードにした後、「Animation」タブ、「ドープシート」「アクション」で
アニメーションさせたいボーン(または全部?)を選択して
「ポーズアセットを作成」を押す。
ボーンを動かしてキーフレームを打つ。(Iキー)
シェイプキーも動かして、「I」でキーフレームを打つ。
シェイプキーは「アクション」ではなく「シェイプキーエディター」に表示される。
「ドープシート」ではなく「タイムライン」にして、「ビュー」から
「選択したチャンネルのキーフレームのみ」のチェックを外すと
シェイプキーとボーンのキーフレームが同時に表示される。
「アクション」の「新規アクション」で複数作れる。
前後用のポーズと、表情が変わるやつの2つを作っておく。
「プロパティ」→「出力プロパティ」でフレームレートを決める。(30とか?)
FBXで書き出す。

今回使わないけど、スムージングは「面」がいいらしい
Unityに持ち込む
FBXファイルを普通にインポートし、アニメーションファイルだけを使う。
FBXファイルを開くとアニメーションが色々出てくる。
何で色々出てくるんだろう?

ここで「プロジェクト」から「作成」→「タイムライン」
で新規にタイムラインを作る。ヒエラルキーにドロップする。
開いたタイムラインにFBXのアニメーションをドロップし、更にモデルを入れる。

タイムラインをAssetsから選ぶことでフレームレートを変更できる。Blenderのfpsと合わせる。
カメラの設定をする
フラグを消去→ソリッドカラー
背景→色を透明にする
有効視野を60→20くらいに

ゲームウインドウの左上から書き出しサイズを変更。
ちなみに、空のオブジェクトを作ってモデルの中心に置き、カメラを子にすることで
回転、上下左右移動→空のオブジェクト ズーム→カメラのローカル移動
にするとやりやすいです。
注意点
VRChatの機能と少し相性が悪い気がする。
VRC Avatar Descriptorと、必要あればPhys Boneを切る(揺れも切れるけど)
FBXの設定のヒューマノイドだとうまく動かない時はジェネリックにする
追記:アニメーションのFBXを、元のFBXと同じ設定(ヒューマノイド・ジェネリック)にすると直る
アンチエイリアスをかける場合、カメラにPost-process Layer
を追加するらしいが、残像が残るので使えないかな?
→下記のRecorderのFPSをタイムラインのFPSに合わせれば多分直る?
Recorder
Recorderというパッケージをパッケージマネージャーから入れて、
ウインドウ→一般→Recorderから起動

こんな設定にする。アルファにチェック
三角ボタンを押して書き出す。
ゲーム画面が再生になっていれば書き出される。(一時停止になってたら再生押す)
自分で止めないと永遠に書き出しづつける気がする…。
追記:File Nameに<Frame>を入れなければ、1枚だけ出力される。

こんなかんじで。
カメラを複製、背中からの位置にして、他の使用しないカメラは切る。もう1回録画。
透過PNG化完成

背景透過画像が書き出される!あとは他のソフトで並べて背景を整えたらOKです。

ひとまず完成!
ここまで見て頂きありがとうございました。
追記:アニメーションファイルがUnityに入らない…
Blenderのアクションでキーフレームを作成します。
書き出し方法は

これです。
ボーンだけ書き出さずに色々まぜたFBXにすると、
UnityでFBXの設定を「ヒューマノイド」にしたときにアニメーションが消失する
という現象になる??のでなるべくボーンとかアニメだけ書き出します。
Unityに読み込んだら、FBXの設定を「ヒューマノイド」にします。
ヒューマノイドにしたFBXから、アニメーションファイルをコピーします。
コピーすると編集できるようになります。
何回やってもできないときは上書きが原因かもしれないので
1回Unity側で削除してもう1回インポートします。
あとMA使ってる場合は、モデルを右クリックしてMAをベイクして、そのベイクしたモデルを使います。
これでポーズを取ることができます。
Unityのタイムラインからアニメーションタブを開いたら、そこで鍵マークを押してロック、
録画マークを押しながら、ヒエラルキーでボーンを選んでポーズをつけます。
録画押さないとTポーズに戻っちゃいます。
しかしヒューマノイド設定だと首から上を編集することができない?
録画することができない?
のでアニメーション内のパラメーターをいじる?

アニメーターのAvatarは元のやつをセットしておきます
首から上は動かせないようです
ふぉぉどうすれば…
まだ謎が多い……
これも後で見てみます。


コメント