/// <summary> /// Checks critical project settings and suggests changes to optimize performance via logged warnings /// </summary> private static void LogConfigurationWarnings() { if (!PlayerSettings.virtualRealitySupported) { Debug.LogWarning("<b>Virtual reality supported</b> not enabled. Check <i>XR Settings</i> under <i>Player Settings</i>"); } if (!MixedRealityOptimizeUtils.IsSinglePassInstanced()) { Debug.LogWarning("XR stereo rendering mode not set to <b>Single Pass Instanced</b>. See <i>Mixed Reality Toolkit</i> > <i>Utilities</i> > <i>Optimize Window</i> tool for more information to improve performance"); } // If targeting Windows Mixed Reality platform if (MixedRealityOptimizeUtils.IsBuildTargetUWP()) { if (!MixedRealityOptimizeUtils.IsDepthBufferSharingEnabled()) { // If depth buffer sharing not enabled, advise to enable setting Debug.LogWarning("<b>Depth Buffer Sharing</b> is not enabled to improve hologram stabilization. See <i>Mixed Reality Toolkit</i> > <i>Utilities</i> > <i>Optimize Window</i> tool for more information to improve performance"); } if (!MixedRealityOptimizeUtils.IsWMRDepthBufferFormat16bit()) { // If depth format is 24-bit, advise to consider 16-bit for performance. Debug.LogWarning("<b>Depth Buffer Sharing</b> has 24-bit depth format selected. Consider using 16-bit for performance. See <i>Mixed Reality Toolkit</i> > <i>Utilities</i> > <i>Optimize Window</i> tool for more information to improve performance"); } if (!AudioSettings.GetSpatializerPluginName().Equals(MSFT_AudioSpatializerPlugin)) { // If using UWP, developers should use the Microsoft Audio Spatilizer plugin Debug.LogWarning("<b>Audio Spatializer Plugin</b> not currently set to <i>" + MSFT_AudioSpatializerPlugin + "</i>. Switch to <i>" + MSFT_AudioSpatializerPlugin + "</i> under <i>Project Settings</i> > <i>Audio</i> > <i>Spatializer Plugin</i>"); } } }
private void Awake() { audioSource = this.GetComponent <AudioSource>(); if (!audioSource) { audioSource = this.gameObject.AddComponent <AudioSource>(); } audioSource.spatialBlend = 1; audioSource.playOnAwake = false; if (AudioSettings.GetSpatializerPluginName() != null) { audioSource.spatialize = true; } lowPassFilter = this.GetComponent <AudioLowPassFilter>(); if (!lowPassFilter) { lowPassFilter = this.gameObject.AddComponent <AudioLowPassFilter>(); } lowPassFilter.enabled = false; highPassFilter = this.GetComponent <AudioHighPassFilter>(); if (!highPassFilter) { highPassFilter = this.gameObject.AddComponent <AudioHighPassFilter>(); } highPassFilter.enabled = false; reverbFilter = this.GetComponent <AudioReverbFilter>(); if (!reverbFilter) { reverbFilter = this.gameObject.AddComponent <AudioReverbFilter>(); } reverbFilter.reverbPreset = AudioReverbPreset.Off; reverbFilter.enabled = false; }
private bool ShouldIncludeSpatializerPluginsInBuild(string path) { string currentSpatializerPluginName = AudioSettings.GetSpatializerPluginName(); if (string.Compare(spatializerReadableName, currentSpatializerPluginName, true) == 0) { return(true); } return(false); }
void OnEnable() { #if UNITY_2017_2_OR_NEWER // Validate the spatializer plugin selection. if (AudioSettings.GetSpatializerPluginName() != HoaLibrary.spatializerPluginName) { Debug.LogWarning(HoaLibrary.spatializerPluginName + " must be selected as the " + "Spatializer Plugin in Edit > Project Settings > Audio."); } #endif // UNITY_2017_2_OR_NEWER // Validate the source output mixer route. if (HoaLibrary.MixerGroup == null || audioSource.outputAudioMixerGroup != HoaLibrary.MixerGroup) { Debug.LogWarning("Make sure AudioSource is routed to a mixer that " + HoaLibrary.rendererPluginName + " is attached to."); } }
static List <Item> GetAudioItems() { var spatializerPlugin = new Item("Spatializer Plugin", "Oculus Spatializer") { IsCorrect = () => { return(AudioSettings.GetSpatializerPluginName() == "OculusSpatializer"); }, GetCurrent = () => { return(AudioSettings.GetSpatializerPluginName()); }, Set = () => { AudioSettings.SetSpatializerPluginName("OculusSpatializer"); } }; /* No scripting reference for Ambisonic Decoder Plugin * var ambisonicDecoderPlugin = new Item("Ambisonic Decoder", "Oculus Spatializer") * { * IsCorrect = () => { return AudioSettings.ambi == "OculusSpatializer"; }, * GetCurrent = () => { return AudioSettings.GetSpatializerPluginName(); }, * Set = () => { AudioSettings.SetSpatializerPluginName("OculusSpatializer"); } * }; */ return(new List <Item>() { spatializerPlugin, }); }