Pygame ile İlk Uygulama

Pygame'i kullanmak için ilk olarak pygame modülünü dahil ediyoruz.
import pygame
import sys
Sonrasında pygame modülünü başlatıyoruz.
pygame.init()
Bazı küçük ayarları gerçekleştiriyoruz. Ekran boyutu, hız ve arkaplan için renk değişkenleri oluşturuluyor.
size = width, height = 640, 480
speed = [1,1]
green = (0,255,0)
Ekran nesnesi, boyuta göre set_mode ile ayarlanıyor.
screen = pygame.display.set_mode(size)
Kafa nesnesi oluşturuldu ve image.load ile resim aktarıldı. Sonrasında resimi konumlandırabilmek için get_rect() ile tüm yüzeyi kaplayan yeni bir dikdörtgen döndürür.
head = pygame.image.load("head.png")
head_rect = head.get_rect()
Döngü durumu için boolean bir değişken oluşturulur.
run = True
Döngü oluşturulur.
while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
            
    head_rect = head_rect.move(speed)
    if head_rect.left < 0 or head_rect.right > width:
        speed[0] = -speed[0]
    if head_rect.top < 0 or head_rect.bottom > height:
        speed[1] = -speed[1]

    screen.fill(green)
    screen.blit(head, head_rect)
    pygame.display.flip()
Döngü içeriğini incelersek ilk olarak for döngüsü ile kullanıcının event değerleri alınıyor ve event tipine göre gerekli olay gerçekleştiriliyor. Eğer pencereyi kapatırsak run değişkenine False değeri atanarak döngü durduruluyor. Sonrasında head_rect nesnesine move metodu ile parametreye bağlı yeniden konum kazandırılır. Koşul yapılarında head_rect nesnesinin belli koordinatları pencerenin dışına çıkıyorsa hız zıt yön olarak değiştirilir. screen değişkeni ekranı temsil ediyor. Ekran nesnesinin fill metodu ile yeşil renkle dolduruyor. blit metodu ile head resmini, head_rect içerisinde yer alan konumlara göre yeniden konumlandırıldı. Sonrasın flip metodu sayesinde tüm ekran içeriği güncellenir.

Sonrasında döngüden çıkılır ve quit ile pygame modülü kapatılır.
pygame.quit()
Ekran Görüntüsü:
Kodun tamamı:
import pygame
import sys

pygame.init()

size = width, height = 640, 480
speed = [1,1]
green = (0,255,0)

screen = pygame.display.set_mode(size)

head = pygame.image.load("head.png")
head_rect = head.get_rect()

run = True

while run:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            run = False
            
    head_rect = head_rect.move(speed)
    if head_rect.left < 0 or head_rect.right > width:
        speed[0] = -speed[0]
    if head_rect.top < 0 or head_rect.bottom > height:
        speed[1] = -speed[1]

    screen.fill(green)
    screen.blit(head, head_rect)
    pygame.display.flip()

pygame.quit()

Hiç yorum yok:

Yorum Gönderme