Skip to content

Move space like gaming

gpsnmeajp edited this page Oct 22, 2019 · 6 revisions

空間をゲームのように移動したい

互換性情報

以下は本スクリプトと併用できます。

  • 物を掴みたい

以下は本スクリプトと併用できません。

  • 簡易的にVR(一人称視点)にする方法

やり方

サンプルスクリプトがあります。
以下の手順で行ってください。

いつもどおりにEVMC4Uをセットアップしてください

まず普通に動かないことには動きません。モデルの登録をして動くところまで確認してください。

ダウンロードし、Unityに入れておいてください。

Unpackしておく

Unity 2018以降の場合、モデルをUnpackしておいてください。

Capsuleの準備

作る

これがキャラクターの判定になります。

一旦位置を0,0,0に合わせる

Mesh Rendererを切る

モデルの足元の位置がCapsuleの底に合うようにモデルの高さを調整する

EVMC4U_CapsuleRigidbodyMoverをCapsuleに追加

この際、モデルのBody(rootの下)をEVMC4U_CapsuleRigidbodyMoverに登録してください。
前方を判断する重要な情報になります。

Rigidbodyを追加し、Freeze Rotationのチェックをすべて入れる

これで重力が作用しつつ、無駄に回転しなくなります。

モデルのCapsuleの子にする

Main CameraをBodyの子にして、いい感じの場所に調整する

これで、TPSゲームのように後ろにカメラが付いてきます。

External ReceiverのRoot系をオフにする

無駄な移動や回転が反映されると困ったことになる場合があります。
(Rotationは反映しても問題ないかもしれません。positionは必ず切ってください)
画像ではModelがNoneになっていますが、ここは通常通りモデルを登録しておいてください。

External ReceiverにCapsuleを登録し、Eventを登録する

2つのActionそれぞれの+ボタンを押し、Capsuleを登録してください。
その後、EVMC4U_CapsuleRigidbodyMoverのKeyInputEvent, ControllerInputEventを登録してください。

最後に、床を張ってください

使い方

キーボードのWASD、あるいはコントローラのタッチパッドで動きます。
前後、左回転右回転です。

Clone this wiki locally