Собственно один огромный + движка в том , что несмотря на все он поддерживает объемный звук , и задать можно будет как слушателя , громкость , дистанцию для звука .
Вот вам простейший пример создания нечто фоновой музыки : bgm = love.audio.newSource("bgm.ogg", "stream") love.audio.play(bgm)
Вот так . А теперь разберём , что здесь и как .
В первой строчке мы присваиваем bgm команду загрузки ресурса .
За это и отвечает команда love.audio.newSource () ; . Сначала в первой скобке указываем путь к файлу , во второй тип Потоковая или Статичная .
Ну а собственно команда love.audio.play() ; отвечает за воспроизведение bgm .
Это были самые основные команды для работы со звуком . Так же не маловажной можно считать и команду love.audio.stop() ; , думаю её значение объяснять не нужно , а работает она по принципу play .
Собственно если вашей музыке в игре уделяется большое значение , а вы любитель очень качественного звука то следующая команда для вас .
sounddata = love.sound.newSoundData( samples, rate, bits, channels )
А теперь о настройках .
number samples Общее количество сэмплов.number rate Сэмплов в секундуnumber bits Бит на сэмпл (8 или 16).number channels Либо 1 для моно, либо 2 для стерео.
Но также эта команда может использоваться для загрузки аудио . wav = love.sound.newSoundData("doom.wav") -- Осторожно: если doom.mp3 большой файл, то -- его декодирование займет много времени. mp3 = love.sound.newSoundData("doom.mp3")
И кстати я уже много говорил о типах музыки , но не рассказал вам самого главного . staticДекодировать весь звук одновременно. Подходит для звуковых эффектов.streamПотоковый звук; декодировать постепенно. Подходит для музыки. Но ведь использовать одиночную команду newSoundData смысле нет , но можно скажем заставить её работать в содружестве с newSource .
decoder = love.sound.newDecoder("bgm.ogg") bgm = love.audio.newSource(decoder)
Кстати немного о форматах . Огромным достоинством их аудиодвижка можно назвать поддержу форматов музыки . Можно спокойно работать с .ogg , .mp3 , wav и ещё некоторыми , правда рекомендуется не использовать mp3 в ваших проектах , так как у него слишком много потребностей , и его "декодинг" может замедлять работу игры , да и вообще довести до потери звука .
volume = love.audio.getVolume()
Вот и самое оно . Громкость , куда же без неё .
А вот это чудо поможет вам перемотать вашу песню , где source это имя дорожки , скажем bgm .
love.audio.rewind( source )
Так то .
Ну и конечно , то о чем я говорил в самом начале . Это объемный звук . И задать здесь можно не только его положение по x и y , но и по оси Z .
love.audio.setPosition( x, y, z )
Ну на этом можно думаю и закончить . Многие другие функции ( их там совсем не много осталось) практически повторяют друг друга , да и думаю мало кто будет возиться с такой точной и тонкой настройкой .
С вами был Musicfuns . При копировании материалов с сайта указывайте меня как автора и добавляйте ссылку на данный сайт love2d.3dn.ru .
Всего доброго!
Источник: http://love2d.3dn.ru |