23 Nisan 2013 Salı

Pygame Merhaba Dünya

Yeni öğrendiğimiz bir dilde,ilk olarak ekrana "Merhaba Dünya" yazdırmak adettendir.Bizde bu geleneği bozmayalım, pygame ekranımıza "Merhaba Dünya" yazdırarak başlayalım.
#!/usr/bin/env python
import pygame
WINDOWWIDTH = 800
WINDOWHEIGHT = 600
WHITE   = (255, 255, 255)
BLACK =   (0, 0, 0)
def main():
    pygame.init()
    while True:
        window = pygame.display.set_mode((WINDOWWIDTH, WINDOWHEIGHT))
        pygame.display.set_caption('Hello World')
        BasicFont = pygame.font.Font('freesansbold.ttf', 20)
        text = BasicFont.render("Hello World", True, BLACK)
        textCoord = text.get_rect()
        window.fill(WHITE)
        window.blit(text, textCoord)
        pygame.display.flip()

if __name__ == "__main__":
    main()
Kodumuzu adım adım açıklayalım şimdi.
import pygame
WINDOWWIDTH = 800
WINDOWHEIGHT = 600
WHITE   = (255, 255, 255)
BLACK =   (0, 0, 0)
Pygame'i import ettikten sonra gerekli değişkenleri tanımlıyoruz.Bildiğiniz gibi renk kodları 0-255 arasında değer alan 3 elemanlı bir tuple'dır.
pygame.init()
İmport edilmiş modülleri başlatıyoruz.Bunu yazmadığımız takdirde module not initialized hatası verecektir.
window = pygame.display.set_mode((WINDOWWIDTH, WINDOWHEIGHT))
set_mode() ile 800x600 pixellik bir pencere oluşturuyoruz.Burada kullanmadık ama bu fonksiyon opsiyonel 2 argüman daha almaktadır.flags ve depth.flags ile penceremize özellik atayabiliriz.Kullanabileceğimiz özellikler: pygame.FULLSCREEN,pygame.RESIZABLE,pygame.NOFRAME ...
pygame.display.set_caption('Hello World')
Penceremize başlık atıyoruz.
BasicFont = pygame.font.Font('freesansbold.ttf', 20)
Yazımızın font'unu ve boyutunu ayarlıyoruz.
text =BasicFont.render("Hello World", True, BLACK)
Ekrana bastıracağımız yazımızı render ediyoruz.Burada ikinci parametreye-antialias(yumuşatma)-yazımızın daha güzel görünmesi için True atadık .
textCoord = text.get_rect()
get_rect() fonksiyonu verilen surface için(burada text değişkenimiz) rectangular alan belirliyor.Daha sonra bu değişkenin özelliklerini kullanarak nesnemizin koordinatlarını belirleyebileceğiz.
window.fill(WHITE)
Penceremizin arkaplanını beyaz yapıyoruz.
window.blit(text, textCoord)
text değişkenimizi blit fonksionuyla verilen koordinata yerleştiriyoruz.textCoord 'a parametre atamadığımız için ön tanımlı olarak (0,0) koordinatına yerleşmektedir.
pygame.display.flip()
Ekranımızı update ediyoruz.Benzer bir işi yapan bir fonksiyon daha var: pygame.display.update() .Parametresiz, flip() ile aynı işi yapmaktadır.Parametre verdiğimiz takdirde ise ekranın belli bir alanını güncelleyebilmekteyiz.

Kaynakça:

2 yorum :

  1. Hocam yazılarınızın devamını bekliyorum takipçinizim... :)

    YanıtlayınSil
  2. Bu yorum yazar tarafından kaldırıldı.

    YanıtlayınSil