Jetzt direkt ein Problem mit dem Mixer. Ich habe eine Datei namens "explosion.wav", die ich abspielen möchte, wenn ein Schuss einen Asteroiden trifft. ich habe mir eine Klasse geschrieben mit 2 Funktionen names "playSound()", die erste:
|
C-/C++-Quelltext
|
1
2
3
4
5
6
7
|
void CSound::playSound(char soundFileName[])//Must be a *.wav file!
{
// Sound laden
m_pSound = Mix_LoadWAV( soundFileName );
//Sound abspielen
Mix_PlayChannel(-1, m_pSound, 0);
}//playSound
|
habe ich erst genommen. Der sound hat aber immer hinter den Schüssen hergehinkt. Ich habe mir gedacht, dass das so ist, weil ich die Datei ja bei jedem Schuss neu laden muss. Daher noch eine 2te Funktion:
|
C-/C++-Quelltext
|
1
2
3
4
5
|
void CSound::playSound(Mix_Chunk* pSound)
{
//Sound abspielen
Mix_PlayChannel(-1, pSound, 0);
}//playSound
|
Diese benutze ich jetzt. Ich habe mir auch eine Membervariable in CGame erstellt, die ich so lade(im Konstruktor):
|
C-/C++-Quelltext
|
1
|
m_pExplosionSound = Mix_LoadWAV("Data/explosion.wav");
|
Naja, und das wird eben irgendwie nicht abgespielt.
Ich weiß nicht warum, vorher hat es funktioniert, also mit der anderen Funktion.
Hoffe, es weiß jemand Rat.
MfG