Exemplo n.º 1
0
        private static OpenXRSettings GetInstance(bool useActiveBuildTarget)
        {
            OpenXRSettings settings = null;

            // When running in the Unity Editor, we have to load user's customization of configuration data directly from
            // EditorBuildSettings. At runtime, we need to grab it from the static instance field instead.
#if UNITY_EDITOR
            UnityEngine.Object obj = null;
            UnityEditor.EditorBuildSettings.TryGetConfigObject(Constants.k_SettingsKey, out obj);
            if (obj == null || !(obj is IPackageSettings))
            {
                return(null);
            }
            var packageSettings = (IPackageSettings)obj;
            // Use standalone settings when running in editor
            var activeBuildTargetGroup = UnityEditor.BuildPipeline.GetBuildTargetGroup(UnityEditor.EditorUserBuildSettings.activeBuildTarget);
            settings = packageSettings.GetSettingsForBuildTargetGroup(useActiveBuildTarget ? activeBuildTargetGroup : UnityEditor.BuildTargetGroup.Standalone);
#else
            settings = s_RuntimeInstance;
            if (settings == null)
            {
                settings = ScriptableObject.CreateInstance <OpenXRSettings>();
            }
#endif
            return(settings);
        }
Exemplo n.º 2
0
        void Awake()
        {
#if !UNITY_EDITOR
            s_RuntimeInstance = this;
#endif
        }