vr開発

UE5 スティック移動で没入感UP!VRスムーズ歩行の完全ガイド【設定編】

VRの移動はテレポートだけじゃない!「自由な足」を手に入れよ

みなさん、こんにちは!VR開発ギルドのマスター見習い、私です。 冒険の準備(環境構築)は整いましたか?

さて、Unreal EngineのVRテンプレートを開いて、最初に思うことはありませんか? 「移動が……テレポートしかできない!」

もちろん、テレポートはVR酔いを防ぐ安全な魔法ですが、RPGのように世界を自由に歩き回ったり、ヒロインと並んで散歩したりするには、少し味気ないですよね。 「もっと自由に、自分の足でこの世界を歩きたい!」 そう願う新米冒険者のために、今回は**「スティック操作でのスムーズ移動(自由歩行)」**を実装する方法を伝授します。

実は、これには「Pawn(ポーン)」から「Character(キャラクター)」へのクラスチェンジが最短ルートなのです。今回はその「準備編」として、重要な設定部分を解説していきます。

なぜ「Pawn」ではなく「Character」なのか?

結論から言います。 Characterクラスには、最強の歩行機能「Character Movement Component」が標準装備されているからです。

  • Point(結論): VRで歩くなら、親クラスを「Character」に変更するのが一番の近道です。

  • Reason(理由): 初期の「Pawn」クラスは空っぽの器のようなもの。これに重力や当たり判定、階段の上り下りといった機能を自作するのは、茨の道すぎます。「Character」クラスなら、これらが最初から全部入っています。 想像してみてください。一からエンジンを作って車を走らせるより、完成したスポーツカーに乗って運転する方が簡単ですよね?「Character」クラスを使うのは、まさにスポーツカーに乗り換えるようなものです。

  •  便利な機能(エンジン)は使い倒して、ラクに冒険を進めましょう!

  • 下記のページで理解しやすいように解説してます。↓↓見てくださいね。

【UE5 VR開発 BP編#2】ポーンとキャラクターの違いは?VRで歩行させる最適解

クラスチェンジの儀式:設定手順を完全ガイド

では、実際にUnreal Engineのエディタを操作して、クラスチェンジと必要な設定を行っていきましょう。

手順1:親クラスを「Pawn」から「Character」へ まずは、プレイヤーの分身である「VRPawn」の親クラスを変更します。

  1. コンテンツドロワーから VRPawn ブループリントを開きます。
    VR Template → Blueprints →  VRParw

  2. 上部メニューの「クラス設定 (Class Settings)」をクリック。]

  3. 詳細パネルの「親クラス (Parent Class)」を探します。現在は Pawn になっているはずです。(画像はキャラクターを選択した時のもの)

  4. ここを Character に変更します。(検索窓に「Character」と入れるとすぐ見つかります!)

これで、あなたのVRPawnは「歩行能力」を手に入れました。コンポーネント一覧に「CharacterMovement」が増えているのを確認してください。これが勝利の鍵です。

手順2:視点と体の回転設定(※超重要!)

【UE5 VR開発 BP編#1】VRゲーム開発時には、これはOFF!VRawnのYaw設定でキャラクターが勝手に動くを解決!

【UE5 VR開発 BP編#1】VRゲーム開発時には、これはOFF!VRawnのYaw設定でキャラクターが勝手に動くを解決!

 

初心者が必ずハマる落とし穴です。 クラスを変更しただけだと、**「首を振っただけで、体ごと回転してしまう」**という奇妙な動きになり、強烈なVR酔いを引き起こします。

これを防ぐために、以下の設定を必ず行ってください。

  1. コンテンツドロワーから VRPawn ブループリントを開きます。

    VR Template → Blueprints →  VRParw

  2. クラスのデフォルトを選択 → 画面右側 詳細、検索窓をクリック
  3. 検索窓でコントロール(control)と入力
  4. Use Controller Rotation Yaw のチェックを外す。

これで「首の回転」と「体の回転」が切り離され、自然な見回しができるようになります。

手順3 :コントローラー入力の魔改造 最後に、コントローラーのスティック操作をゲームに伝えるための「入力設定(Input Mapping Context)」を調整します。

今回コントローラーの設定を、下記図のようにしたいと思います。
・左スティックで左右前後
・右スティックでスナップターン(その場で回転)

 

  1. IMC_Default を開きます(Content > VRTemplate > Input フォルダにあります)。

  2. IA Move と IA Turn を設定して行きます。 

  3. IA Move 左右前後移動の設定を行います。

    ① 項目の前にある三角マークをクリックして、項目を出します。

    ② Oculus Touch を選択

    Oculus Touch(左)サムスティック の2D軸 を選択
     

  4. IA Turn「回転(Turn / Snap Turn)」を設定

    ① 上記と同様に、項目の前にある三角マークをクリックして、項目を出します。

    ② Oculus Touch を選択

    Oculus Touch(右)サムスティック の X軸 を選択

 

手順4:入力アクションの調整 (IA_Move)

入力アクション IA_Move の設定も確認しましょう。
Value Type が Axis2D になっていることを確認してください。
ここが間違っていると、前後左右の移動情報が正しく伝わりません。

1. ファイルを開く

まずは設定対象のファイルを開きます。 コンテンツブラウザ(画面下のファイル一覧)から以下の順番でフォルダをダブルクリックして進んでください。

VRTemplate > Input > Actions

この中にある IA_Move というファイルをダブルクリックして開きます。これが「移動」という命令のデータそのものです。

2. データの型を「Axis2D」に変更する(最重要!)

設定画面が開いたら、一番上の Value Type(値のタイプ)という項目を見てください。

  • 変更前: おそらく Digital (Bool)Axis1D (Float) になっているはずです。

  • 変更後: ここを Axis2D (Vector2D) に変更してください。

  1. アクション → Value Type(値のタイプ)
  2. 右側を確認、Axis2D (Vector2D) に変更

 なぜこれが必要なの?

  • Digital (Bool) は「ボタンを押した/離した」という0か1かの情報です。

  • Axis1D は「アクセルペダル」のように一方向の情報です。

  • Axis2D は「スティックの上下(Y軸)と左右(X軸)」という2方向の情報を持てます。

スムーズ移動には「前後」と「左右」の2つの情報が同時に必要なので、必ず Axis2D を選ぶ必要があります。これ、プロでもたまに忘れる落とし穴なんです!

3. 設定のリセット(安全策)

その下にある Modifiers(モディファイア)という項目を見てみましょう。 ここにもし何か設定が入っていた場合、意図しない数値が入っている可能性があるので一度リセットします。

  • 項目の右側にある「ゴミ箱アイコン🗑️」をクリックして、一覧を空っぽにしてください。

4. デッドゾーン(Dead Zone)の設定

💡 デッドゾーンって何? コントローラーのスティックは非常に敏感です。指を離していても、わずかなバネの緩みで「少し倒れている」と誤判定されて、キャラクターが勝手に動き出す(ドリフト現象)ことがあります。 「少しの傾きなら無視してね」という遊びの幅を作るのがデッドゾーンです。

空っぽになった Modifiers の横にある「+(プラス)」ボタンを押して、リストの中から Dead Zone を選んで追加します。

追加した Dead Zone の左にある三角マーク▶をクリックして詳細を開き、以下の数値に設定します。

  • Lower Threshold: 0.2

    • (意味:スティックを半分以上倒さないと反応させない設定です。お好みで0.2くらいまで下げてもOKですが、最初は0.5が確実です)

  • Upper Threshold: 1.0

    • (意味:最大まで倒した時の値です。ここは1.0のままでOK)

5. 保存を忘れずに!

設定が終わったら、画面左上の「フロッピーディスクのアイコン💾(保存)」を必ずクリックしてください。 これを忘れると、次の手順でブループリントを組む時に「あれ?端子が分割できない!」とパニックになります。

まとめ 

今回は、自由に歩くための「下準備」について解説しました。

  • Characterクラスへの変更で、移動機能をタダ取りする。

  • 回転設定を切って、VR酔いを防ぐ。

  • 入力設定で、スティック操作を受け入れる準備をする。

これで、あなたのキャラクターは「歩くための体」を手に入れました。 しかし!まだ脳みそ(ブループリントの命令)が繋がっていません。次回はいよいよ、この体に命令を送り、実際にフィールドを歩き回る**「実装編」**へ進みます。

次回の更新までに、今回の設定を完璧にしておいてくださいね。 それでは、良きVR開発ライフを!

動画の方は前編、後編 総集編です。
こちらも、興味がありましたら是非見てくださいね。↓

 

ABOUT ME
クリエッタ
プログラミングも3D制作も全くの未経験。 でも、「自分だけのVR空間を作れたら最高に楽しいだろうな…」 そんな漠然とした憧れだけで、Unreal Engineの世界に飛び込んでみました。 このブログは、そんな私が「次世代クリエイター」という大きな目標に向かって、日々試行錯誤する様子をありのままに記録する**『成長日誌』**です。 きっと、たくさんの失敗や遠回りをすると思います。 でも、その一つ一つが、同じようにこれからVR制作を始めたいと思っている誰かの役に立つかもしれない。そう信じて、学んだことを全てシェアしていきます。 一緒に学んで、一緒に感動できる仲間が見つかったら嬉しいです。 どうぞ、よろしくお願いします!
(adsbygoogle = window.adsbygoogle || []).push({});
(adsbygoogle = window.adsbygoogle || []).push({});