Beispiel #1
0
        protected virtual void SetVRDeviceTypeIndex(int id)
        {
            Ximmerse.VR.VRDevice d = s_VRDeviceTypeSources[id];
            PlayerPrefsEx.SetObject("VRDevice.source", d == null?null:d.gameObject);
            //
#if UNITY_ANDROID
            if (d == null)
            {
                if (File.Exists(Application.dataPath + "/Plugins/Android/AndroidManifest.xml") &&
                    EditorUtility.DisplayDialog("Change To UnityManaged", "Remove AndroidManifest.xml?", "Yes,do it", "No,Thanks"))
                {
                    File.Delete(Application.dataPath + "/Plugins/Android/AndroidManifest.xml");
                    AssetDatabase.Refresh();
                }
            }
            else if (d.androidManifest != null)
            {
                if (EditorUtility.DisplayDialog("Change To " + d.androidTargetName, "Replace AndroidManifest.xml?", "Yes,do it", "No,Thanks"))
                {
                    File.WriteAllText(Application.dataPath + "/Plugins/Android/AndroidManifest.xml", d.androidManifest.text);
                    AssetDatabase.Refresh();
                }
            }
#endif
            if (d == null)
            {
            }
            else
            {
                PlayerSettings.virtualRealitySupported = d.useUnityVR;
            }
        }
Beispiel #2
0
        protected virtual void BuildVRDeviceTypes()
        {
            var list = LoadAllAssets <Ximmerse.VR.VRDevice>("Assets/", "VRDevice-*.prefab");

            if (list == null)
            {
                list = new Ximmerse.VR.VRDevice[0];
            }
            //
            int i = 0, imax = list.Length + 1;

            s_VRDeviceTypeNames   = new string[imax];
            s_VRDeviceTypeSources = new Ximmerse.VR.VRDevice[imax];
            //
            s_VRDeviceTypeSources[i] = null;
            s_VRDeviceTypeNames[i]   = "Unknown";
            ++i;
            //
            for (; i < imax; ++i)
            {
                s_VRDeviceTypeSources[i] = list[i - 1].GetComponent <Ximmerse.VR.VRDevice>();
                if (s_VRDeviceTypeSources[i] == null)
                {
                    s_VRDeviceTypeNames[i] = "Unknown";
                }
                else
                {
#if UNITY_ANDROID
                    s_VRDeviceTypeNames[i] = s_VRDeviceTypeSources[i].androidTargetName;
#else
                    s_VRDeviceTypeNames[i] = s_VRDeviceTypeSources[i].family;
#endif
                }
            }
        }
Beispiel #3
0
        protected virtual int GetVRDeviceTypeIndex()
        {
            Ximmerse.VR.VRDevice d  = null;
            GameObject           go = (GameObject)PlayerPrefsEx.GetObject("VRDevice.source");

            if (go != null)
            {
                d = go.GetComponent <Ximmerse.VR.VRDevice>();
            }
            //
            for (int i = 0, imax = s_VRDeviceTypeSources.Length; i < imax; ++i)
            {
                if (s_VRDeviceTypeSources[i] == d)
                {
                    return(i);
                }
            }
            return(0);
        }