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; } }
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 } } }
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); }