Example #1
0
    IEnumerator GetSettingsWhenInitialized()
    {
        while (!XRGeneralSettings.Instance.Manager.isInitializationComplete)
        {
            Debug.Log("Waiting for init..");
            yield return(new WaitForSeconds(0.1f));
        }
        VarjoLoader varjoLoader = XRGeneralSettings.Instance.Manager.ActiveLoaderAs <VarjoLoader>();

        settings = varjoLoader.GetSettings();
        Initialize();
    }
        /// <summary>Override of <see cref="IPreprocessBuildWithReport"></summary>
        /// <param name="report">Build report.</param>
        public void OnPreprocessBuild(BuildReport report)
        {
            // Always remember to cleanup preloaded assets after build to make sure we don't
            // dirty later builds with assets that may not be needed or are out of date.
            CleanOldSettings();

            VarjoSettings settings = null;

            EditorBuildSettings.TryGetConfigObject("Varjo.XR.Settings", out settings);
            if (settings == null)
            {
                return;
            }

            UnityEngine.Object[] preloadedAssets = PlayerSettings.GetPreloadedAssets();

            if (!preloadedAssets.Contains(settings))
            {
                var assets = preloadedAssets.ToList();
                assets.Add(settings);
                PlayerSettings.SetPreloadedAssets(assets.ToArray());
            }
        }