خبر و ترفند روز

خبر و ترفند های روز را اینجا بخوانید!

اضافه کردن جلوه های صوتی و موسیقی در Pygame

به گیمرهای خود در حین بازی با ویژگی های موسیقی و جلوه های صوتی Pygame چیزی برای گوش دادن به آنها بدهید.

موسیقی و جلوه های صوتی بخش مهمی از تجربه بازی هستند، بنابراین، به طور طبیعی، Pygame به شما امکان می دهد آنها را به بازی خود اضافه کنید. نحوه اضافه کردن موسیقی پس‌زمینه و نحوه پخش جلوه‌های صوتی را در پاسخ به رویدادهای درون بازی کشف کنید. همچنین نحوه انجام عملیات اساسی مانند حلقه زدن و تنظیم صدا را بیاموزید.

ایجاد یک بازی ساده

با ایجاد یک بازی ساده شروع کنید که در آن بازیکن می تواند به چپ و راست حرکت کند. برای ساخت این بازی، ماژول Pygame را با استفاده از pip نصب کنید:

pip install pygame

ماژول Pygame را وارد کرده و مقداردهی اولیه کنید و یک پنجره با اندازه 500×500 با عنوان ایجاد کنید. سپس، متغیرهای x، y، عرض، ارتفاع و vel را برای پخش کننده مقداردهی اولیه کنید. در اینجا vel سرعت پخش کننده است.

import pygame

pygame.init()

window = pygame.display.set_mode((500,500))

pygame.display.set_caption("Simple Game")

x = 50
y = 50
width = 40
height = 60
vel = 5

run = True

پس از آن، یک حلقه while ایجاد کنید که تا زمانی که پنجره بازی را ببندید اجرا می شود. با استفاده از روش pygame.key.get_pressed() ورودی صفحه کلید را بررسی کنید. اگر کاربر به ترتیب کلید فلش چپ یا راست را فشار دهد، مختصات x را کاهش یا افزایش دهید. سپس یک مستطیل با مختصات داده شده بکشید و نمایشگر را به روز کنید.

while run:
    pygame.time.delay(100)

    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False

    keys = pygame.key.get_pressed()

    if keys[pygame.K_LEFT]:
        x -= vel

    if keys[pygame.K_RIGHT]:
        x += vel

    window.fill((0,0,0))
    pygame.draw.rect(window, (255,0,0), (x, y, width, height))
    pygame.display.update()

pygame.quit()

افزودن موسیقی پس‌زمینه با استفاده از ماژول میکسر

افزودن موسیقی پس‌زمینه به بازی یک فرآیند ساده با ماژول Mixer Pygame است. با ایجاد یک شی موسیقی و بارگذاری فایل موسیقی مورد نظر شروع کنید. سپس می توانید قبل از پخش صدا را تنظیم کنید. در اینجا یک مثال است:

pygame.mixer.music.load("bgmusic.wav")
pygame.mixer.music.set_volume(0.3)
pygame.mixer.music.play()

شما به راحتی می توانید موسیقی و جلوه های صوتی بدون حق چاپ را از وب سایت های مختلف دانلود کنید تا آنها را آزمایش کنید.

مطلب مرتبط:   دستور اسلش سفارشی خود را در Slack ایجاد کنید

افزودن جلوه های صوتی با استفاده از ماژول ساده صوتی

همچنین می توانید با استفاده از ماژول simpleaudio جلوه های صوتی را به بازی خود اضافه کنید. برای نصب ماژول از این دستور استفاده کنید:

pip install simpleaudio

برای شروع، ماژول simpleaudio را وارد کرده و یک WaveObject از فایل صوتی ایجاد کنید.

import simpleaudio as sa
sound = sa.WaveObject.from_wave_file('sound.wav')

در بررسی های موجود برای فشار دادن پیکان، متد play() را فراخوانی کنید تا زمانی که کاراکتر به چپ یا راست حرکت می کند، صدا پخش شود:

if keys[pygame.K_LEFT]:
    x -= vel
    play = sound.play()

if keys[pygame.K_RIGHT]:
    x += vel
    play = sound.play()

ویژگی های اضافی مانند حلقه کردن موسیقی و تنظیم صدا

همچنین می‌توانید افکت‌های اساسی مانند حلقه کردن موسیقی با تابع play() و تنظیم صدا با استفاده از set_volume() پیاده‌سازی کنید. تابع set_volume() یک مقدار شناور بین 0 و 1 می گیرد که حجم موسیقی را مشخص می کند. تابع play() یک آرگومان می گیرد که تعداد دفعات تکرار موسیقی را مشخص می کند. با پاس دادن -1 به عنوان آرگومان، می توانید به آن بگویید که موسیقی را حلقه کند.

pygame.mixer.music.load("bgmusic.wav")
pygame.mixer.music.set_volume(0.3)
pygame.mixer.music.play(-1)

sound = sa.WaveObject.from_wave_file('sound.wav')

دو عبارت if اضافه کنید تا آزمایش کنید که آیا کاربر کلید فلش بالا یا پایین را فشار می دهد. در صورت فشار دادن کلید فلش بالا، میزان صدای موسیقی را روی 1.0 و اگر کلید فلش رو به پایین را فشار دهید، 0.0 تنظیم کنید.

if keys[pygame.K_UP]:
    pygame.mixer.music.set_volume(1.0)

if keys[pygame.K_DOWN]:
    pygame.mixer.music.set_volume(0.0)

روش های جایگزین برای افزودن موسیقی و جلوه های صوتی

همچنین می توانید از روش های دیگری مانند ماژول pyglet برای افزودن موسیقی و جلوه های صوتی استفاده کنید. در زیر قطعه کد آمده است:

import pyglet

music = pyglet.media.load("bgmusic.wav")
music.play()

sound = pyglet.media.load("sound.wav")
sound.play()

استفاده از ماژول های شخص ثالث مانند pyglet مزایای زیادی دارد. آنها راه کارآمدتری برای افزودن موسیقی و جلوه های صوتی ارائه می دهند.

مطلب مرتبط:   نحوه ساخت یک پخش کننده رسانه ویدیویی با استفاده از پایتون

می توانید تمام کدها را از نمونه های موجود در این بیابید
مخزن GitHub
.

افزایش تعامل کاربر با موسیقی

می توانید از موسیقی و جلوه های صوتی برای افزایش تعامل کاربران با بازی خود استفاده کنید. موسیقی و جلوه های صوتی می توانند حس غوطه وری را به بازی اضافه کنند که می تواند بازی را بسیار لذت بخش تر کند. شما حتی می توانید از آنها به روش های خلاقانه به عنوان مکانیک اصلی گیم پلی استفاده کنید.