Menu
CoddyTech

المؤقّت

الدرس 4 من 41 في دورة اصنع ألعابًا باستخدام Pygame على Coddy.

تعمل حلقتك بأقصى سرعة يستطيع الكمبيوتر بلوغها: آلاف الإطارات في الثانية على جهاز سريع، وعدد أقل على جهاز بطيء. تحتاج اللعبة إلى السرعة نفسها في كل مكان.

يحافظ pygame.time.Clock على وتيرة التشغيل. أنشئ كائنًا منه قبل الحلقة، ثم استدعِ clock.tick(60) مرة واحدة في نهاية كل دورة. ينتظر المدة اللازمة كي تعمل الحلقة 60 مرة في الثانية على الأكثر.

clock = pygame.time.Clock()

running = True
while running:
    # الأحداث، الرسم، قلب العرض
    clock.tick(60)

يُعدّ 60 إطارًا في الثانية المعدل المعتاد للحركة السلسة. ومن الآن فصاعدًا، يتحرك شيء يقطع 4 بكسلات في كل إطار مسافة 240 بكسل في الثانية.

challenge icon

التحدي

سهل

اجعل اللعبة تعمل بمعدل 60 إطارًا في الثانية.

  1. أسفل سطر set_caption، أنشئ ساعة: clock = pygame.time.Clock().
  2. بوصفه السطر الأخير في الحلقة، بعد عملية القلب، استدعِ clock.tick(60).

اضغط على «العب»: سيبدو المربع كما هو، لكنه يُرسم الآن 60 مرة في الثانية. ثم اضغط على «تحقق».

جرّب بنفسك

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (255, 196, 0), (220, 160, 40, 40))
    pygame.display.flip()

pygame.quit()

جميع دروس اصنع ألعابًا باستخدام Pygame

تدرّب بنفسك: Playground لـ Pygame