2015年07月28日

[Unity 5] Mikulusのようなもの作成メモ [DK2]

忘れそうなのでメモです。書籍に載ってる細かい話などは省略です。

0. Edit→Project Settings→Player→Virtual Reality Supportedにチェックを入れる。
1. GameObject→3D Object→Cubeでキューブ作成、Position(0,-0.5,0), Scale(100,1,100)にして床にする
2. MMD4Mecanim[1]でモデル変換、良さそうなVMD立ちモーションを割り当てておく
(今回は[2]のモデル、[3]のモーションを使用させていただきました)
3. モデルをDrag&DropしてPosition(0,0,0)に配置
4. Assetsのどこかで右クリック→Create→Animator Controllerを追加。モデルのAnimationのControllerにDrag&Drop
5.追加したAnimator Controllerをダブルクリック→変換した立ちモーションをDrag&Drop
6. 追加したモーションをクリック→Edit...→Loop Timeとかにチェックを入れて立ちモーションをループ
7.GameObject→CreateEmptyを追加。名前をDummyに変更。Position(0,1.3,0.1)、Rotation(0,180,0)にする。Main Cameraを作成したGameObjectにDrag&Dropして親ノードとする。Main Cameraの位置姿勢は0にする。
8. Main CameraのField of Viewを30にする。Clipping PlanesのNearを0.01にする。HDRにチェックを入れる。
9. モーションにまばたきが入っていない場合は[4]を追加
10. カメラの方を向いてもらうように目線制御[5][6]を追加。AssetのHead Look Controllerを使用する方法も。
11. MMD4MecanimのComponent->Scripts->MMD4MecanimMorphHelperで照れ、恐ろしい子!などを追加[6]
12. 物理有効化→物理パラメータを少し修正して動かしやすいように
13. Bloom効果を入れるために各種ImageEffectを追加[7][8]。ついでにDepth of Field等も入れてみる。
14. Bloom具合を上げる場合はbody_pinkやbody_greenのシェーダをStandardにしてEmissionを変更[7]。MMD4MecanimでALを有効にする方法があるかも(未確認)。
15. キーボード入力スクリプトの追加

前回辺りのスクリプトだと動きがおかしかったので修正しました。
・回転の基底ベクトル3本はtransform.forward, transform.right, transform.upで取得できる。(正規化されていない?)
・マニュアル[9]によると、ワールド座標のはずだが、親ノードにその移動量をTranslateすると方向がおかしい(TranslateはlocalPosition移動?)
・親の姿勢ベクトルを反映させないと駄目?ということで下記に修正するとそれっぽくなった。
  // メインカメラの向きを親ノードの方向に変換?
  mainForward = mainCamera.transform.forward;
  mainRight = mainCamera.transform.right;
  mainUp = mainCamera.transform.up;
  dummyForward = dummy.transform.TransformDirection (mainForward);
  dummyRight = dummy.transform.TransformDirection (mainRight);
  dummyUp = dummy.transform.TransformDirection (mainUp);

以下スクリプト
HmdScript.cs

とりあえずはこのような感じで、後は予め複数モデルを読み込んでおいてキーボードで有効/無効切り替えでも作りますかね。動的に読み込みなどは難しそうですし。

実行結果

派手にBloomしてみました。どこかで派手に光らせるのは現実ではありえないので駄目とか見た気もしますが。HMDで見ているものを動画にすると方向変わりすぎて見づらいですね…。



[1] MMD4Mecanim
[2] 【MMD】化粧を落としたアペミク配布
[3] 【MMO】MMO用待機モーション【モーション配布】
[4] MMD4MFaceBlink - MMD4Mecanimでまばたき
[5] 我がブログ - Mecanimで目線制御
[6] 主婦ゆに!
[7] [Unity5] Bloomで光らせる
[8] UnityのImageEffectで遊んでみる
[9] http://docs.unity3d.com/ScriptReference/Transform.html
posted by シンドラー at 23:05 | Comment(0) | TrackBack(0) | Oculus Rift | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント:

認証コード: [必須入力]


※画像の中の文字を半角で入力してください。
※ブログオーナーが承認したコメントのみ表示されます。

この記事へのトラックバック