Gear VRを使用してプロジェクトを作成しています。オブジェクトを回転し、ヘッドセットの側面のスワイプとタップコントロールに基づいて情報を表示できます。Unity3D - Gear VR入力がシーン間で動作しない
ギアのVR側でタッチパッドを使用すると、回転や選択が可能ですが、シーンを変更してメインメニューに戻り、直前のシーンに戻ると機能が停止します。私は私が作ったこのスクリプトを使用しています
:
using UnityEngine;
using UnityEngine.SceneManagement;
using System.Collections;
using System;
public class GearVRTouchpad : MonoBehaviour
{
public GameObject heart;
public float speed;
Rigidbody heartRb;
void Start()
{
OVRTouchpad.Create();
OVRTouchpad.TouchHandler += Touchpad;
heartRb = heart.GetComponent<Rigidbody>();
}
void Update()
{
if (Input.GetKeyDown(KeyCode.W))
{
SceneManager.LoadScene("Main Menu");
}
}
void Touchpad(object sender, EventArgs e)
{
var touches = (OVRTouchpad.TouchArgs)e;
switch (touches.TouchType)
{
case OVRTouchpad.TouchEvent.SingleTap:
// Do some stuff
break;
case OVRTouchpad.TouchEvent.Up:
// Do some stuff
break;
//etc for other directions
}
}
}
私は私が私のゲームを起動すると、OVRTouchpadHelper
が作成されたことに気付きました。それが私の問題と関係があるかどうかは分かりません。
私は取得していますエラーは次のとおりです。
MissingReferenceException: The object of type 'GearVRTouchpad' has been destroyed but you are still trying to access it. Your script should either check if it is null or you should not destroy the object.
しかし、私はどこにもこのスクリプトが参照されていません。
再生モードでシーンをチェックすると、変数割り当てがまだ残っていますが、スクリプトはまだそこにあります。
助けがあれば助かります。
GearVRTouchpadを使用するクラス内のGearVRTouchpadクラスにエラーがありません。この例外をスローするものを提供できればいいと思います。 –
私はそれが事実かもしれないと思ったが、私は他のスクリプトやファイルでこのスクリプトを使用していないのですか? – Tom