الساعة
جزء من قسم حلقة اللعبة في رحلة Pygame على Coddy. الدرس 4 من 32.
تعمل حلقتك بأقصى سرعة يستطيع الحاسوب بلوغها: آلاف الإطارات في الثانية على جهاز سريع، وعدد أقل على جهاز بطيء. تحتاج اللعبة إلى السرعة نفسها في كل مكان.
يحافظ pygame.time.Clock على الإيقاع. أنشئ واحدًا قبل الحلقة، ثم استدعِ clock.tick(60) مرة واحدة في نهاية كل دورة. ينتظر المدة اللازمة كيلا تعمل الحلقة أكثر من 60 مرة في الثانية.
clock = pygame.time.Clock()
running = True
while running:
# الأحداث، الرسم، قلب الشاشة
clock.tick(60)يُعدّ 60 إطارًا في الثانية المعدل المعتاد للحركة السلسة. من الآن فصاعدًا، يتحرك كل ما يتحرك 4 بكسلات في كل إطار مسافة 240 بكسلًا في الثانية.
التحدي
سهل- أسفل السطر
set_caption، أنشئ ساعة:clock = pygame.time.Clock(). - في السطر الأخير من الحلقة، بعد عملية القلب، استدعِ
clock.tick(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()
جميع دروس حلقة اللعبة
تدرّب بنفسك: Playground لـ Pygame