public static bool PlayEnvironmentAudio(AudioGrp_Footstep sourceType, Vector3 Position,GameObject target) { if (SharedConfig.IsServer || AKAudioEntry.Dispatcher == null) return false; if (sourceType == AudioGrp_Footstep.None) return false; int sceneId = SingletonManager.Get<MapConfigManager>().SceneParameters.Id; var terrain = SingletonManager.Get<TerrainManager>().GetTerrain(sceneId); TerrainMatOriginType matType = (TerrainMatOriginType)terrain.GetTerrainPositionMatType(Position); AudioGrp_MatIndex matGrpIndex = matType.ToAudioMatGrp(); AudioEventItem evtConfig = SingletonManager.Get<AudioEventManager>().FindById(GlobalConst.AudioEvt_Footstep); AKAudioEntry.Dispatcher.SetSwitch(target, matGrpIndex); AKAudioEntry.Dispatcher.SetSwitch(target, sourceType); // AKAudioEntry.Dispatcher.SetSwitch(target, matGrpIndex); //AKAudioEntry.Dispatcher.SetSwitch(target, matType); AKAudioEntry.Dispatcher.PostEvent(evtConfig, target); return true; }
public void SetSwitch(GameObject target, AudioGrp_MatIndex matIndex) { SetSwitch(target, (int)AudioGrp_MatIndex.Id, (int)matIndex); }