SDL_Mixer
Здравейте,
какво е игра без звуци? :)
Та мисля успях да повторя пътя на Image и Text и да направя обект Sound. (положил съм основи и за обект Music)
Ето ми проекта:
https://github.com/Smeshan/SFX
И сега въпросите:
1. Аудио ресурсите имат ли нужда от Flyweight design pattern? Защото доколкото разбрах, ако в същия момент се пусне друг звук, той просто се пуска по-друг канал и толкова? Или?
2. Това ли е начина по-който съм го направил (подобен на Image и Text)?
3. За звуци има ли някакъв друг дизайн или методика?
4. Дебъгвах около 1-2 часа един проблем и накрая хванах грешката тук в MediaMgr.cpp:
void MediaMgr::addPlaySoundCmd(const int32_t sndId) {
SoundContainer::playSoundCmd(sndId);
//QUESTION
// why is not working with _soundContainer.playSoundCmd(sndId):
}
Нали мениджъра всъщност притежава контейнера и той го инициализира и т.н.? И ако го достъпя директно след playSoundCmd() фунцкията идва празен контейнер и гърми. :? Нещо не мога да си визуализирам последователността и това малко ме обърква.
5. Правилно ли разсъждавам: Ако имам обект бутон и в него си вкарвам хедъра Sound.h и при инициализацията на този обект, създавам и неговия прилежащ звук. И вече при InputHandle-a на бутона го плейвам, когато си искам? Това ли е идеята?
Толкова от мен. Бих видял и на някой друг кода, ако е писал за звук (или ще пише) :)
Поздрави,
Илиян