Skip to content
pafuhana1213 edited this page Oct 15, 2018 · 9 revisions

(ひとまず雑ですが使い方などについて書きます。TODO:要整理)

事前準備

VRHMD, モーションコントローラのセットアップが完了し、UE4がそれらを認識していることを想定しています。そのため、エディタのVRPreviewを実行することができない(アイコンがグレーアウトしている)場合はVRデバイスのセットアップを完了した後にプロジェクトを立ち上げてください。
Oculus:https://www.oculus.com/setup/
Vive:https://www.vive.com/jp/setup/

基本的な使い方

VRPreviewを実行後、VRHMDの画面はキャラクタの視界が映り、モニタにはキャラクタを映す第三者視点の映像が表示されます。このモニタ映像をOBSなどの配信ソフトに渡して配信する形になっています。OBSのクロマキー機能を使う場合は、BP_CaptureCameraUse Green Backプロパティを有効にしてください。キャラクタ以外を緑で塗りつぶすようになります。
OBS:https://obsproject.com/ja

主な機能・要素

本サンプルのベースになっている資料( https://www.slideshare.net/EpicGamesJapan/ue4vtuber )をまずご確認ください。

上半身の制御

頭(VRHMD)の位置・向きに応じて、頭から腰をFABRIKで制御しています。BP_VTuberPawnから頭のTransformをAnimBP_VTuberに渡し、ボーンの制御はAnimBP_VTuberのアニムグラフで行っています。

手の制御

モーションコントローラの位置・向きに応じて、手から肩をTwoBoneIKで制御しています。BP_VTuberPawnから右手・左手のTransformをAnimBP_VTuberに渡し、ボーンの制御はAnimBP_VTuberのアニムグラフで行っています。

指の制御

モーションコントローラの入力に応じて、グー・チョキ・パー・指差し状態をPoseアセットを使ってブレンドしています。入力部分はBP_VTuberPawn、Poseアセットの制御はAnimBP_VTuberのアニムグラフで行っています。コントローラの入力方法を変更・追加したい場合は、プロジェクト設定のインプットを編集してください。

キャリブレーション

VRPreview実行時にキャリブレーション(リセット)処理を行っています。もし実行中に頭の位置・向きをキャリブレーションしたい場合はRキーを押してください。Rキー以外にしたい場合は、プロジェクト設定のインプットにあるResetVRを編集してください。

シーケンスレコーダーによる録画機能

OculusTouchの場合は右手側のスティック押し込み、Viveコントローラの場合は右手側のタッチパットの下押し込みで録画機能を開始・停止します。別の入力方法以外にしたい場合は、プロジェクト設定のインプットにあるRecordを編集してください。具体的な実装に関しては、BP_VTuberPawnをご確認ください。

自動目パチ・微細眼球運動

AnimBP_VTuberのイベントグラフにおけるAutoblinkイベント, AutoEyeJitterイベントにてパラメータを一定間隔で変更しています。これらのパラメータを使って、キャラクタの目に関するモーフターゲットやボーンを制御してください。

今後の予定

  • グレイマン以外のキャラを使う場合のチュートリアル作成
    • グレイマンのスケルトンを流用するパターンと、リターゲットで頑張るパターンの2つを用意する予定
    • この関係で、BP_VTuberPawnでCastしている箇所を全てBPインターフェイスに差し替え予定
    • 各パラメータやモーフターゲットをAnimBPのプロパティから変更可能にする予定
  • 入力に応じた表情切り替えの本対応
  • iPhoneXを使ったフェイシャルキャプチャへの対応・チュートリアル作成
  • OVRLipSyncへの対応チュートリアル
    • モーフターゲットのマッピングを簡単にするコンポーネントを用意する予定