UE4:Oculusを使ってMMDに壁ドンしてもらう方法
どうも僕です。
みなさん
「壁ドン」という言葉を知っているでしょうか。
この言葉、ネットスラングで隣の部屋でワチャワチャしてる声が聞こえた時に壁を殴りつける事を壁ドンと言っていましたが、今ではイケメンが女性に対してする行為のことです。メディアは怖い。
参考画像:左がお前らで右が僕らリア充
で、ふと思ったのです。
小さな女の子に壁ドンされたらどんな気持ちになるのか。
身長175の男性が女の子より小さくなるとどんな気分になるのか。
ということで、UE4とOculusで実験してみよう!
UE4とOculusでMMDに壁ドンされてみよう!
(実際MMDデータ初めて触ったので、何か間違ってたらごめんなさい)
MMDのモデルデータとモーションデータを用意します。
今回使うのはこれです。
ロリドロンジョを召喚しました pic.twitter.com/NrYiLfzLe0
— ぶっさん (@Tira_Bus_san) January 16, 2015
そして使うのは壁ドンデータ
これらMMDデータはMMD4Menicamを使用してFBXデータに変換しました。配布ページ(詳しくはチュートリアルを見てね)
で壁ドンのモーションをロリドロンジョにぶっこんだデータをUE4に召喚!(マテリアルが崩れているのでそこを直しましょう)
壁ドンしてる・・・
で、FPSテンプレートをキャラクターに設定してStartコンポーネントを設置すれば
完成っていうわけではありません。これ微調整がめんどくさい。例えば場所を変えるってなった時、いちいちカメラがモデルに入らないようにしたりと毎回微調整はしんどい。嫌だ。
なので一つのBluePrintにまとめましょう!
新規からBluePrintを選択します。そして、「ポーン」又は「キャラクター」を選択します。今回は「ポーン」を選択します。
そして、コンポーネント追加でスケルトンメッシュとカメラを選択します。
そしてスケルトンメッシュを選択しメッシュをドロンジョ、そしてアニメーションを壁ドンを選択します。
そして、ロリドロンジョをカメラの方角に回転させます。
コンポーネントを追加からCapsuelを選び以下のように親づけします。(Capsuelはノーコリジョンでもよかです)
そして、GameModeを選択しDefaultPawnClassをこのドロンジョのBluePrintを設定します。
これでPlayを押すと目の前にロリドロンジョが出てきます。しかし、動けません。次はBluePrintでプログラムを組んでいきます。
周りを見回すBluePrintを作成しよう!
では、BluePrintを記述していきます。普通だとFPSのテンプレートから見回すBluePrintを持ってくればいいのですが
(動かない場合はUse Pawn Controll Rotationにチェックを付ける)
これだとあたりを見回すとロリドロンジョも一緒移動してしまいます。
これは良くないぞ1ということでカメラのみを動かすようにします。
まずノードエディタを開きます。そして左にあるCamera1を取得としてノードエディターに設置します。そして青い点から線をひっぱりRelative Rotationを呼び出します。これはCameraの回転情報を得るようなものです。今回、Pitch、Yawのみ使用するのでBreak Rotノードを設置します。
そして、LookUp、Turnを取得するノードを出し、Pitch、Yawに足しあわせMakeRotでRotation情報を完成させます。
Turn,LookUpとは
プロジェクトの設定を開いてみてください。そして入力をクリックすると以下の画面が出てきます。
Turnの下にマウスXボタン、LookUpはマウスYボタンとあります。これらは各設定されているボタンの名前です。なので入力情報先ほどTurn,LookUpを取得するノードがありましたが、それらは入力情報を取得しているということです。
Set Relative Rotationノードを出し、Rotationに先ほどの回転情報を接続し、TargetをカメラにしEvent Tickにつなげます。
すると、
カメラが動いたよ!!!(カメラの位置が少し低いですね)
これでOculusに接続すれば壁ドンを体験できる!
Oculusに繋げよう!
Oculusにつなげてみると・・・(スタンドアローンゲーム起動、Alt+Enter)
動かないよ・・・?
なぜかと考えていると前に、VRコンテンツ「ねこるんば」の製作者さんがブログで作り方を書いていたのですが、そこに対策が書かれていたのを思い出しました。
2つ目の記事に対策が書かれていたので
@kurisaka_konabe 自分の設定方法ですー。5分もかからないので自分的には楽だと思っとります。 pic.twitter.com/8QtDbLxOoI
— スミオ(仮設幼稚園) (@tempkinder) 2014, 11月 15
この通りに設定してみると、
わーい動いたー。(みんな凄すぎ・・・
ということで、Oculusで壁ドンを体験することが出来ます。
ただやってみた感想としてはなんとも言えない微妙な感じになりました。
なんだろう・・・。なんか真顔になる感じです。
ただ壁ドンをやるやられる=リアルが充実してるとする。仮想現実であっても壁ドンやられたという事には変わらない。
つまり普段出会いがなく友達も少ない自分もこれでリア充ということになるのでしょうか。(勿論なります!
ちなみに、このBluePrintを応用すると、
踏まれることも出来ますので、紳士の皆様是非お試しください。
今回のはまだまだ未完成な部分が多いと思いますので、もう少し触ってみようかなと思います。
これを見てもし作られた方がいらっしゃいましたら、これより良い亜種を作って頂いて教えていただけると嬉しいです。フィードバックもお願いします。
あと文章的にわかり辛くなってたらごめんなさい。
次はOculusのポジショントラッキングを使って何か作ってみたいですね。
以上です。
(といいますか、UE4をこんな使い方していいのかな・・・)