XNA C # SoundEffectInstance - нет звука - PullRequest
0 голосов
/ 20 июля 2011

Я пытаюсь воспроизвести SoundEffectInstances загруженных файлов .wav в моей игре, но не слышу никакого звука.

У меня есть класс "ETSound"; для которого каждый объект содержит один звук. Таким образом, один объект ETSound может содержать звук «открытия меню», а другой может содержать звук «стрельбы из танка» ... И т.д.

В любом случае, конструктор ETSound выглядит так:

public ETSound(SoundEffect se, float volume, float pitch, bool looped, int soundPriority) { 
            soundTemplate = se; 
            this.volume = volume; 
            this.pitch = pitch; 
            this.looped = looped; 

            if (soundPriority > 0) { 
                if (soundPriority > 64) soundPriority = 64; 
                instanceArray = new SoundEffectInstance[soundPriority]; 
                nextInstanceIndex = 0; 
                for (int i = 0; i < soundPriority; ++i) { 
                    SoundEffectInstance sei = soundTemplate.CreateInstance(); 
                    sei.Volume = volume; 
                    sei.Pitch = pitch; 
                    instanceArray[i] = sei; 
                } 
            } 
        } 

Это в основном устанавливает некоторые параметры и создает массив экземпляров звуковых эффектов в соответствии с предоставленным SoundEffect.

Затем я вызываю функцию Play () ETSound:

public void Play() { 
            if (instanceArray[nextInstanceIndex].State != SoundState.Stopped) instanceArray[nextInstanceIndex].Stop(); 
            instanceArray[nextInstanceIndex].Play(); 
            if (++nextInstanceIndex >= instanceArray.Length) nextInstanceIndex = 0;          
        } 

Однако ничего не происходит. Я ничего не слышу.

Может кто-нибудь сказать мне, что происходит не так? Спасибо.

1 Ответ

1 голос
/ 20 июля 2011

Извините, все ... Оказывается, файл .wav, который я использовал для тестирования, был поврежден ... Трудно найти ошибку, но я ее получил. В любом случае, спасибо.

...