環境
Windows7x64Unity 5.0.1f1 Personal
Blender2.74(x64)
SDユニティちゃん 3Dモデルデータ Download ver1.0。(2015/5時点最新)
※作業中素材には『ユニティちゃんライセンス』で提供されるコンテンツを利用しています。
前提
前記事までの作業経過は、- 公式配布されている「SDユニティちゃん 3Dモデルデータ」からSDユニティちゃんのアバターモデルをBlenderでインポート。
- Blender上でもテクスチャ/ノーマルマップが見えるように、マテリアル経由のテクスチャを設定。
- BlenderでSDユニティちゃんのアバターモデルをFBXフォーマットでエクスポート(ボーン込み)。
と、いうことでBlenderで出力済みのSDユニティちゃんアバターモデルをUnityでインポートします。
ついでにHumanoidタイプとして、公式配布のアニメーションコントローラで簡単に動かしてみます。
Unityでプロジェクト作成
Unityを起動、プロジェクトを新規作成。公式配布の「SDユニティちゃん 3Dモデルデータ」をインポートしておきます。
※後で配布物に含まれているアニメーションを流用する為。
※既にインポート済みのプロジェクトが残っていればそれでもOK。
Unityでインポート
Unity上で作業します。- Assets 配下にインポートするフォルダを作成
図中ではフォルダ名 Blender_SDUnityChan で作成。
フォルダ Blender_SDUnityChan をクリックして選択状態にする。
- Blenderでエクスポート済みのSDユニティちゃんのFBXファイルをフォルダ内にドラッグ&ドロップする。
- インポート後
自動的に Materialsフォルダが作成されてテクスチャが格納。
テクスチャは貼られている状態。
※ノーマルマップは貼られていない。別途マテリアル調整する必要有。今はとりあえずこのまま。
- 今回FBXファイルにアニメーションは同梱していないので Import Animation のチェックは外しておく(特にやる必要もないかもしれませんが一応)。
モデル選択 > Inspector > Animation > Import Animation チェック外し > Apply
- リグのタイプをHumanoidに設定
モデル選択 > Inspector > Rig > Humanoid > Apply
※公式配布のHumanoidタイプのアニメーション/コントローラが利用できるようになるので重要
補足: Unity4系はModelのScale Factorのデフォルト値が 0.01でしたが、Unity5系ではデフォルト値 1 になっています。今回はデフォルト 1 のままいじっていません。
4系でデフォルト値が 0.01となっていた理由は、MayaのFBXエクスポーターが100倍していた事に起因するらしい?。
インポートしたSDユニティちゃんを動かす
Blenderでエクスポート&UnityでインポートしたSDユニティちゃんをアニメーションさせてみます。
アニメーションコントローラは「SDユニティちゃん 3Dモデルデータ」で配布されているHumanoidタイプSDユニティちゃんのものを使ってみます。
具体的には、公式配布のプレハブ SD_unitychan_humanoid のコンポーネント Animator に使われている、アニメーションコントローラ SD_unitychan_motion_humanoid を使います。
これをインポートした blender_SDUnityChan(BlenderでFBX出力したモデル)をシーンに配置して適用します。
シーンも配布されているものを使ってみます。
- シーンの読込
シーン SD_unitychan_Humanoid をダブルクリックして読み込む。
- インポートしたSDユニティちゃんをシーンに配置
FBXファイルでインポートした blender_SDUnityChan をシーンに配置。
- アニメーションコントローラ を確認
シーンの SD_unitychan_humanoid をクリックして選択。
Inspector > Animator の Controller の欄をクリック。
Projectウィンドウにアニメーションコントローラ SD_unitychan_motion_humanoid が選択表示されます。
- blender_SDUnityChan にアニメーションコントローラを設定
アニメーションコントローラ SD_unitychan_motion_humanoid を blender_SDUnityChan のAnimatorのControllerにドラッグ&ドロップ。
- スクリプト IdleChanger を blender_SDUnityChan に追加
下図ではドラッグ&ドロップで追加しています。
- SD_unitychan_humanoid のスクリプト IdleChanger をDisable
※操作ボタンが重なる為。
GUIの Next、Back ボタンを押すと blender_SDUnityChan がアニメーション動作します。
これでメカニム経由で公式配布のアニメーションも blender_SDUnityChan で使えます。
※メカニムを自分で組み替えれば自由に制御可。
コンソールに赤字でエラーらしきものがでていますが、これは FaceUpdate スクリプトを blender_SDUnityChan に追加していない為です。
FaceUpdate スクリプトをドラッグ&ドロップで追加すれば一応エラーは消えますが、顔の表情は現段階では動きません。(これらもいずれ対策します)
ここまででインポート、Humnanoidのアニメーション動作まではできました。
今回はここまで。
0 件のコメント:
コメントを投稿