Unity2019.2.15を使ってVRの開発を進めています。現在、
画面に配置したUIのButtonをマウスのOnClickで選択して
・ 新しいパネルを表示
・ 指定した座標に移動
パソコンの十字キーを用いて
・ 上矢印を押している間前進
・ 左右矢印を押している間任意の方向へ回転
というようにしているのですが、このマウス及びキーボードの操作をViveproでも出来るようにしたいです。
SteamVR1.2.3をインストールして、サイトを見ながらProjectsettingを行いinputはデフォルトでSave and generate→Open Building UIを選択しました。
しかし、その後の割り当てでどのように設定すれば自作したスクリプトに関連付けることが出来るのか分かりません。
試したこととして、
スクリプトを関連付けていない状態でもシーンの再生はできるのですがコントローラーが画面内に表示されません。これはサンプルシーンでも同じでした。コントローラーの電源は入っており認識もされています。
この#CをコピペするだけでViveコントローラーで移動ができる、と言うのを見つけたので新しくスクリプトを追加してみると「 SteamVR input sources could not be found 」となりシーンが再生できなくなりました。現在は削除しています
コントローラーのクリック設定を以下のスクリプトで行いましたが、実際にシーンへ移動するとボタンにコントローラーから出るポインターが向いても当たり判定にならず選択されません。ボタン自体はボックスコライダーで覆っています
using UnityEngine;
using System.Collections;
using UnityEngine.UI;
public class VRController : MonoBehaviour
{
// Use this for initialization void Start() { var trackedController = gameObject.GetComponent<SteamVR_TrackedController>(); if (trackedController == null) { trackedController = gameObject.AddComponent<SteamVR_TrackedController>(); } trackedController.TriggerClicked += new ClickedEventHandler(DoClick); trackedController.TriggerUnclicked += new ClickedEventHandler(DoUnclick); } // Update is called once per frame void Update() { } void DoClick(object sender, ClickedEventArgs e) { Debug.Log("click!!"); } void DoUnclick(object sender, ClickedEventArgs e) { Debug.Log("unclick!!"); }
}
あなたの回答
tips
プレビュー