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

תרגלו בעצמכם: Pygame אונליין