eligantRU / CG

This is repository for labs of CG
0 stars 0 forks source link

Добавить звуковое сопровождение #16

Open eligantRU opened 8 years ago

eligantRU commented 8 years ago

Собственно сабж Для данной задачи отлично подойдёт OpenAL

eligantRU commented 7 years ago

Долой OpenAL, даёшь SDL_mixer

Пример для однократного воспроизведения звука(без отслеживания ошибок):

SDL_Init(SDL_INIT_AUDIO);
Mix_OpenAudio(22050, MIX_DEFAULT_FORMAT, 2, 4096);
Mix_Chunk * sound = Mix_LoadWAV("res/test.wav");
Mix_PlayChannel(-1, sound, 0);
while (Mix_Playing(-1))
{
    // Do sth
}
Mix_FreeChunk(sound);
Mix_CloseAudio();

Пример для бесконечного воспроизведения музыки(без отслеживания ошибок):

SDL_Init(SDL_INIT_AUDIO);
Mix_OpenAudio(22050, MIX_DEFAULT_FORMAT, 2, 4096);
Mix_Music * music = Mix_LoadMUS("res/test.wav");
Mix_PlayMusic(music, -1);
while (Mix_PlayingMusic())
{
    // Do sth
}
Mix_FreeMusic(music);
Mix_CloseAudio();
eligantRU commented 7 years ago

Для изменения уровня громкости:

Mix_Volume(-1, MIX_MAX_VOLUME);
eligantRU commented 7 years ago

Реализовал все вспомогательные классы, осталось прикрутить звуковое сопровождение на какие-либо события

eligantRU commented 7 years ago
eligantRU commented 7 years ago
eligantRU commented 7 years ago
eligantRU commented 7 years ago
eligantRU commented 7 years ago

libsdl.org/projects/SDL_mixer/docs/SDL_mixer_6.html

eligantRU commented 7 years ago