OculusQuest技術

OculusQuestでゲームを作る話

未分類

ハンドトラッキング対応完了?

投稿日:

腕を振ると移動するという仕組み作りました。

public class PlayerMove : MonoBehaviour
{
    public GameObject CenterCamera;

    OVRInput.Controller LeftCon;
    OVRInput.Controller RightCon;

    float speed = 1.0f;

    // Start is called before the first frame update
    void Start()
    {
        LeftCon = OVRInput.Controller.LTouch;
        RightCon = OVRInput.Controller.RTouch;
    }

    // Update is called once per frame
    void Update()
    {
        float accLeft = OVRInput.GetLocalControllerAcceleration(LeftCon).magnitude;
        float accRight = OVRInput.GetLocalControllerAcceleration(RightCon).magnitude;

        float walkSpeed = 5.0f;

        if ((accLeft >= walkSpeed && accRight >= walkSpeed) && ((OVRInput.Get(OVRInput.RawButton.LIndexTrigger) == true) && (OVRInput.Get(OVRInput.RawButton.RIndexTrigger) == true)))
        {
            var moveDirect = CenterCamera.transform.rotation.eulerAngles.y;
            var moveQuate = Quaternion.Euler(0, moveDirect, 0);

            if ((accLeft + accRight) > 50.0f)
            {
                speed = 3.0f;
            }
            else
            {
                speed = ((accLeft + accRight) / 50.0f) * 3.0f;
            }

            transform.position += moveQuate * Vector3.forward * speed * Time.deltaTime;
        }
    }
}

https://qiita.com/nanaki_pg/items/ba7fcf572cc74de41d65
ベースはこちらを参考にしております。
ありがとうございます。

実験してみて思ったこと。
なるべく左右の腕が動いているときに移動としたい。
両腕が同時に前に出たり、上にあげたりする時は移動しない。
など色々考えてみましたが、左右が動いている時というのは解決済み。
今のソースでは同時に腕を動かせば移動が始まるので、なんとか対応したかったけど、時間の関係であきらめ。
最終的にトリガーボタンを左右押している時に腕を動かすと歩く、早く動かすと走るという感じ。
これでロボット操作か、鬼ごっこか何かは作れそう。
まだ動くことを確認しただけなので、なんとも言えませんが、なんとなく身体を動かして移動するというのはVR酔い軽減になりそうな感じ。
物をつかみながら移動ができるのか(できるはずだけど)も実験したい。
またハンドトラッキングが将来的に採用されても、ドライバ次第だけど動くと思う。
トリガーボタンの代わりに手を握っているかを調べればいいかな。
グーの状態で手を動かせば移動ということです。
・・・イライラ棒なのですが、おそらく作れると思っていますが、その前にデバッグするほど広い空間がありません。
デバッグ中にガーディアンからはみ出したり壁に当たったりするな。

-未分類

執筆者:


comment

メールアドレスが公開されることはありません。

関連記事

no image

公共的なもの?も作ろうかなぁ

VRの作品を作ったり、技術の習得をすると色々なことができないかなと考えてしまう。最終的には私が所属している会社でVRを扱うことになれば面白いんだけど。それはあまり考えられないが・・・考えるとしたら公共 …

no image

現在の進捗

進捗って言っても行き当たりばったりで、計画がないんだけど、次回作はアクションゲームになるかもしれない・・・twitterにあげたけど、Obi Clothで服が破ける演出を作りたかったが、Questでは …

no image

テストの度にビルトするのがメンドイ

まあ、ベースがAndroidだから仕方ないのですが・・・ちょっとGrabのテストしてみたりとか、画面の見え方を調べるのにビルトをそのたびにしているのですが、どうも面倒くさい。 何か良い方法がないかと思 …

no image

物をつかむには

物を設置し、Rigitbody,OVRGrabbableを追加 レイヤーに「Grab」を追加すると良い

no image

questのバージョンアップしたら・・・

questのバージョンが11になったので同級生VRを起動したら挙動がおかしい。再度ビルドが必要かな・・・