Звукът и музиката създават атмосфера и задават тон; те са съществена съставка на вашите видео игри.

Звуковите ефекти и музиката играят решаваща роля за подобряване на игровото изживяване. Те внасят живот и потапяне във виртуалния свят, засилват емоциите и създават завладяваща атмосфера за играчите.

За щастие, библиотеката Arcade улеснява добавянето на звукови ефекти и музика към вашите Python игри, благодарение на вградените си аудио функции.

Създаване на проста игра

Преди да започнете, уверете се, че имате pip, инсталиран на вашето устройство. Използвайте тази команда, за да инсталирате аркадната библиотека:

pip инсталирайте аркада

Кодът, използван в тази статия, е достъпен в това GitHub хранилище и е безплатен за използване под лиценза на MIT.

След това започнете със създаване на проста игра, използвайки библиотеката Python Arcade, където играчите могат преместете знак наляво и надясно с помощта на клавишите със стрелки.

импортиране аркада

ШИРИНА = 800
ВИСОЧИНА = 600

PLAYER_WIDTH = 50
PLAYER_HEIGHT = 50

instagram viewer

класИграч:
деф__в него__(себе си):
self.x = WIDTH // 2

дефмръдни на ляво(себе си):
себе си.x -= 10

дефпремести се надясно(себе си):
себе си.x += 10

дефрисувам(себе си):
arcade.draw_rectangle_filled (self.x, HEIGHT // 2, PLAYER_WIDTH, PLAYER_HEIGHT, arcade.color. СИН)

класMyGame(аркадна. прозорец):
деф__в него__(себе си, ширина, височина, заглавие):
super().__init__(ширина, височина, заглавие)
arcade.set_background_color (arcade.color. БЯЛО)
self.player = Player()

дефon_key_press(самостоятелно, ключ, модификатори):
ако ключ == arcade.key. НАЛЯВО:
self.player.move_left()
елиф ключ == arcade.key. ДЯСНО:
self.player.move_right()

дефon_draw(себе си):
arcade.start_render()
self.player.draw()

дефосновен():
прозорец = MyGame (ШИРИНА, ВИСОЧИНА, "Моята игра")
arcade.run()

ако __име__ == '__основен__':
основен ()

Добавяне на звукови ефекти в Arcade

Сега, след като сте настроили простата си игра, добавете някои звукови ефекти, за да я направите по-ангажираща. Библиотеката Arcade предоставя удобен начин за зареждане и възпроизвеждане на звукови ефекти. Първо, трябва да импортирате аркадния модул и да заредите желания файл със звуков ефект. Можете лесно да намерите безвъзмездни звукови ефекти на различни уебсайтове.

Заредете файл със звуков ефект с име лазер.wav използвайки load_sound() функция. Уверете се, че файлът със звуков ефект е в същата директория като вашия скрипт на Python или предоставете правилния път към файла.

импортиране аркада

laser_sound = arcade.load_sound("laser.wav")

След това можете да задействате звуковия ефект при конкретно събитие във вашата игра. Например, можете да пуснете лазерния звуков ефект винаги, когато играчът се движи в играта.

дефon_key_press(самостоятелно, ключ, модификатори):
ако ключ == arcade.key. НАЛЯВО:
self.player.move_left()
arcade.play_sound (laser_sound)
елиф ключ == arcade.key. ДЯСНО:
self.player.move_right()
arcade.play_sound (laser_sound)

Сега, когато играчът се движи наляво или надясно, лазер.wav ще се възпроизведе звуков ефект, добавяйки задоволителен звуков сигнал към играта.

Създаване на фонова музика в Arcade

Освен звуковите ефекти, фоновата музика може значително да подобри завладяващото изживяване на играта. Arcade предоставя лесен начин за възпроизвеждане на фонова музика. Нека добавим малко фонова музика към играта.

импортиране аркада

background_music = arcade.load_sound("фонова_музика.mp3")

Подобно на зареждането на звукови ефекти, можете да заредите файла с фонова музика, фонова_музика.mp3 използвайки load_sound() функция.

За да пуснете фоновата музика, можете да се обадите на Пусни звук() функция с зацикляне=Вярно параметър, показващ, че музиката трябва да се повтаря безкрайно.

дефосновен():
прозорец = MyGame (ШИРИНА, ВИСОЧИНА, "Моята игра")
arcade.play_sound (фонова_музика, обем=0.5, зацикляне=Вярно)
arcade.run()

Регулиране на нивата на звука в Arcade

В някои случаи може да искате да регулирате силата на звука на звуковите ефекти или фоновата музика, за да създадете желания аудио баланс. Arcade предоставя arcade.set_volume() функция за контрол на нивата на звука. Тази функция приема стойност между 0,0 и 1,0, където 0,0 представлява тишина, а 1,0 представлява максимална сила на звука.

За да регулирате силата на звука на звуковите ефекти, можете да използвате следния код:

arcade.set_volume(0.7) # Регулирайте силата на звука на звуковите ефекти

Като зададете стойността на 0,7, ще намалите силата на звука на звуковите ефекти до 70% от максималната сила на звука.

За да регулирате силата на звука на фоновата музика, можете да посочите източника на звук, като използвате звуковия параметър:

# Регулирайте силата на звука на фоновата музика
arcade.set_volume(0.5, звук=фонова_музика)

Като зададете силата на звука на 0,5, ще намалите силата на звука на фоновата музика до 50% от максималната сила на звука.

Добавяне на движещи се елементи

Освен основните звукови ефекти и фоновата музика, Arcade предлага различни допълнителни функции за допълнително подобряване на аудио изживяването на вашата игра. Две такива функции са регулиране на скоростта и панорамата на arcade.play_sound() функция, която ви позволява да създавате динамични и завладяващи аудио ефекти.

Регулирайте скоростта на възпроизвеждане

Можете да контролирате скоростта на възпроизвеждане на звуков ефект, като използвате скорост параметър на arcade.play_sound() функция. Параметърът за скорост приема стойност, по-голяма от 0,0, където 1,0 представлява нормалната скорост. Стойност по-малка от 1.0 забавя звуковия ефект, докато стойност по-голяма от 1.0 го ускорява.

# Възпроизвеждане на звуковия ефект с 1,5 пъти нормалната скорост
arcade.play_sound (звуков_ефект, скорост=1.5)

Чрез регулиране на параметъра за скорост можете да създавате различни ефекти като забавен каданс или забързани аудио сигнали, за да съответстват на конкретни моменти от играта.

Контролирайте стерео баланса

The тиган параметър на arcade.play_sound() функция ви позволява да позиционирате звуци в стерео пространство. Той контролира разпределението на звука между левия и десния високоговорител, създавайки илюзията за звуци, идващи от различни посоки.

Параметърът pan приема стойност между -1,0 и 1,0, където -1,0 представлява звука изцяло отляво, 0,0 представлява центъра и 1,0 представлява звука изцяло отдясно.

# Възпроизвеждане на звуковия ефект, преместен наляво
arcade.play_sound (звуков_ефект, панорама=-0.5)

Чрез манипулиране на параметъра за панорамиране можете да симулирате звуци, произлизащи от определени места във вашия свят на игри, добавяйки дълбочина и пространствено усещане към аудио изживяването.

Най-добри практики за използване на звукови ефекти

За да осигурите безпроблемно аудио изживяване, вземете предвид следните най-добри практики, когато интегрирате звукови ефекти и музика във вашите игри.

  • Използвайте звуците пестеливо: Избягвайте да претоварвате играчите с прекомерни звукови ефекти. Изберете звуци, които имат цел и добавят стойност към играта.
  • Оптимизиране на звукови файлове: Компресирайте и оптимизирайте звуковите файлове, за да намалите размера им, без да компрометирате качеството на звука. Това помага за минимизиране на общия размер на файла и времето за зареждане на играта.
  • Тествайте на различни устройства: Аудио настройките и възможностите могат да варират в различните устройства и платформи. Тествайте играта си на множество устройства, за да сте сигурни, че аудиото работи по предназначение.
  • Помислете за предпочитанията на играча: Осигурете опции за играчите да регулират нивата на звука или да заглушат звука напълно. Не всички играчи може да се наслаждават или да искат да слушат звукови ефекти и музика, докато играят.
  • Поддържайте последователност: Уверете се, че аудио стилът и качеството са в съответствие с цялостната естетика на играта. Последователният аудио дизайн помага за създаването на сплотено и завладяващо изживяване за играчите.

Направете игрите по-ангажиращи със звукови ефекти

Звуковите ефекти осигуряват ценна аудио обратна връзка, която подсилва действията и взаимодействията във вашата игра. Независимо дали е задоволителното тропот на успешен удар, вълнуващото свистене на бързо движение или зловещото скърцане в напрегнат момент, тези слухови знаци предоставят на играчите незабавна обратна връзка и карат света на играта да се чувства повече материален.

Прегърнете силата на звуковите ефекти и им позволете да издигнат вашите игри до нови нива на ангажираност и потапяне.