internal static AudioSourceExtension AddSpatializerExtension(AudioSource source) { AudioSourceExtension result; if (!source.spatialize) { result = null; } else if (source.spatializerExtension != null) { result = source.spatializerExtension; } else { AudioExtensionManager.RegisterBuiltinDefinitions(); foreach (AudioSpatializerExtensionDefinition audioSpatializerExtensionDefinition in AudioExtensionManager.m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == audioSpatializerExtensionDefinition.spatializerName) { AudioSourceExtension audioSourceExtension = source.AddSpatializerExtension(audioSpatializerExtensionDefinition.definition.GetExtensionType()); if (audioSourceExtension != null) { audioSourceExtension.audioSource = source; source.spatializerExtension = audioSourceExtension; AudioExtensionManager.WriteExtensionProperties(audioSourceExtension, audioSpatializerExtensionDefinition.definition.GetExtensionType().Name); return(audioSourceExtension); } } } result = null; } return(result); }
internal static AudioListenerExtension AddSpatializerExtension(AudioListener listener) { AudioListenerExtension result; if (listener.spatializerExtension != null) { result = listener.spatializerExtension; } else { AudioExtensionManager.RegisterBuiltinDefinitions(); foreach (AudioSpatializerExtensionDefinition audioSpatializerExtensionDefinition in AudioExtensionManager.m_ListenerSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == audioSpatializerExtensionDefinition.spatializerName || AudioSettings.GetAmbisonicDecoderPluginName() == audioSpatializerExtensionDefinition.spatializerName) { AudioListenerExtension audioListenerExtension = listener.AddExtension(audioSpatializerExtensionDefinition.definition.GetExtensionType()); if (audioListenerExtension != null) { audioListenerExtension.audioListener = listener; listener.spatializerExtension = audioListenerExtension; AudioExtensionManager.WriteExtensionProperties(audioListenerExtension, audioSpatializerExtensionDefinition.definition.GetExtensionType().Name); return(audioListenerExtension); } } } result = null; } return(result); }
// Check to see if we need to add a spatializer extension to the audio listener. static internal AudioListenerExtension AddSpatializerExtension(AudioListener listener) { if (listener.spatializerExtension != null) { return(listener.spatializerExtension); } RegisterBuiltinDefinitions(); foreach (AudioSpatializerExtensionDefinition extensionDefinition in m_ListenerSpatializerExtensionDefinitions) { if ((AudioSettings.GetSpatializerPluginName() == extensionDefinition.spatializerName) || (AudioSettings.GetAmbisonicDecoderPluginName() == extensionDefinition.spatializerName)) { AudioListenerExtension newExtension = listener.AddExtension(extensionDefinition.definition.GetExtensionType()); if (newExtension != null) { newExtension.audioListener = listener; listener.spatializerExtension = newExtension; WriteExtensionProperties(newExtension, extensionDefinition.definition.GetExtensionType().Name); return(newExtension); } } } return(null); }
// Check to see if we need to add a spatializer extension to this audio source, based on the currently-registered extensions. static internal AudioSourceExtension AddSpatializerExtension(AudioSource source) { if (!source.spatialize) { return(null); } if (source.spatializerExtension != null) { return(source.spatializerExtension); } RegisterBuiltinDefinitions(); foreach (AudioSpatializerExtensionDefinition extensionDefinition in m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == extensionDefinition.spatializerName) { AudioSourceExtension newExtension = source.AddSpatializerExtension(extensionDefinition.definition.GetExtensionType()); if (newExtension != null) { newExtension.audioSource = source; source.spatializerExtension = newExtension; WriteExtensionProperties(newExtension, extensionDefinition.definition.GetExtensionType().Name); return(newExtension); } } } return(null); }
internal static bool IsSourceSpatializerExtensionRegistered() { foreach (AudioSpatializerExtensionDefinition audioSpatializerExtensionDefinition in AudioExtensionManager.m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == audioSpatializerExtensionDefinition.spatializerName) { return(true); } } return(false); }
internal static Type GetSourceSpatializerExtensionEditorType() { foreach (AudioSpatializerExtensionDefinition audioSpatializerExtensionDefinition in AudioExtensionManager.m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == audioSpatializerExtensionDefinition.spatializerName) { return(audioSpatializerExtensionDefinition.editorDefinition.GetExtensionType()); } } return(null); }
static internal Type GetSourceSpatializerExtensionEditorType() { foreach (AudioSpatializerExtensionDefinition definition in m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == definition.spatializerName) { return(definition.editorDefinition.GetExtensionType()); } } return(null); }
static internal Type GetListenerSpatializerExtensionType() { foreach (AudioSpatializerExtensionDefinition definition in m_ListenerSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == definition.spatializerName) { return(definition.definition.GetExtensionType()); } } return(null); }
static internal bool IsListenerSpatializerExtensionRegistered() { foreach (AudioSpatializerExtensionDefinition extensionDefinition in m_ListenerSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == extensionDefinition.spatializerName) { return(true); } } return(false); }
private static void RegisterBuiltinDefinitions() { bool flag = false; if (!AudioExtensionManager.m_BuiltinDefinitionsRegistered) { if (flag || AudioSettings.GetSpatializerPluginName() == "GVR Audio Spatializer") { } if (flag || AudioSettings.GetAmbisonicDecoderPluginName() == "GVR Audio Spatializer") { } AudioExtensionManager.m_BuiltinDefinitionsRegistered = true; } }
internal static bool IsSourceSpatializerExtensionRegistered() { bool result; foreach (AudioSpatializerExtensionDefinition current in AudioExtensionManager.m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == current.spatializerName) { result = true; return(result); } } result = false; return(result); }
internal static Type GetSourceSpatializerExtensionEditorType() { Type result; foreach (AudioSpatializerExtensionDefinition current in AudioExtensionManager.m_SourceSpatializerExtensionDefinitions) { if (AudioSettings.GetSpatializerPluginName() == current.spatializerName) { result = current.editorDefinition.GetExtensionType(); return(result); } } result = null; return(result); }
internal static void Update() { AudioExtensionManager.RegisterBuiltinDefinitions(); if (AudioExtensionManager.m_SpatializerName != AudioSettings.GetSpatializerPluginName()) { AudioExtensionManager.m_SpatializerName = AudioSettings.GetSpatializerPluginName(); if (AudioExtensionManager.GetSourceSpatializerExtensionType() != null) { AudioExtensionManager.m_SpatializerExtensionName = AudioExtensionManager.GetSourceSpatializerExtensionType().Name; } if (AudioExtensionManager.GetListenerSpatializerExtensionEditorType() != null) { AudioExtensionManager.m_ListenerSpatializerExtensionName = AudioExtensionManager.GetListenerSpatializerExtensionType().Name; } } AudioListener audioListener = AudioExtensionManager.GetAudioListener() as AudioListener; if (audioListener != null) { AudioListenerExtension audioListenerExtension = AudioExtensionManager.AddSpatializerExtension(audioListener); if (audioListenerExtension != null) { audioListenerExtension.ExtensionUpdate(); } } for (int i = 0; i < AudioExtensionManager.m_SourceExtensionsToUpdate.Count; i++) { AudioExtensionManager.m_SourceExtensionsToUpdate[i].ExtensionUpdate(); } AudioExtensionManager.m_NextStopIndex = ((AudioExtensionManager.m_NextStopIndex < AudioExtensionManager.m_SourceExtensionsToUpdate.Count) ? AudioExtensionManager.m_NextStopIndex : 0); int num = (AudioExtensionManager.m_SourceExtensionsToUpdate.Count <= 0) ? 0 : (1 + AudioExtensionManager.m_SourceExtensionsToUpdate.Count / 8); for (int j = 0; j < num; j++) { AudioSourceExtension audioSourceExtension = AudioExtensionManager.m_SourceExtensionsToUpdate[AudioExtensionManager.m_NextStopIndex]; if (audioSourceExtension.audioSource == null || !audioSourceExtension.audioSource.enabled || !audioSourceExtension.audioSource.isPlaying) { audioSourceExtension.Stop(); AudioExtensionManager.RemoveExtensionFromManager(audioSourceExtension); } else { AudioExtensionManager.m_NextStopIndex++; AudioExtensionManager.m_NextStopIndex = ((AudioExtensionManager.m_NextStopIndex < AudioExtensionManager.m_SourceExtensionsToUpdate.Count) ? AudioExtensionManager.m_NextStopIndex : 0); } } }
// This is where we register our built-in spatializer extensions. static private void RegisterBuiltinDefinitions() { bool bRegisterAllDefinitions = true; if (!m_BuiltinDefinitionsRegistered) { if (bRegisterAllDefinitions || (AudioSettings.GetSpatializerPluginName() == "GVR Audio Spatializer")) { } if (bRegisterAllDefinitions || (AudioSettings.GetAmbisonicDecoderPluginName() == "GVR Audio Spatializer")) { } m_BuiltinDefinitionsRegistered = true; } }