Pygame oyun ekranını farklı çözünürlüklere sığdırma

pygame.transform.scale i sürekli kullandığımdan yavaşlıyordu oyun. Yani sanırım buradaki sorun
ekranın boyutunda değil surface in ekranın boyutuna göre büyütülmesinde.

Aslında ilk 2 resim oyunun kendisi. Oyunda renkli karelerden başka bir şey yok yani bir fotoğraf koymadım sadece surface.fill(“renk”) ile kareleri boyadım.

Peki pygame de vektör resim dosyaları kullanmanın bir yolu var mı ?

Kod şurada:
https://github.com/Furkan125/pygame-soru

Ne yapmak istediğimi de tam olarak anlatayım. Oyunu bir sistem denemek için yapıyorum. Pygame de kamera sistemi yapmak zor ve bazı kısıtlamalar oluyor. Daha önceki yaptığım oyunlarda karakter ekranın en soluna/sağına geldiğinde ilerlemesi duruyor ve bu sefer oyundaki bloklar, puanlar v.b sola/sağa doğru kaymaya başlıyordu. Ancak bu bazı kısıtlamalara sebep oluyordu. Mesela karakteri haritanın en sağına koyduğumda karakteri takip eden bir kamera olmadığı için haritanın en başını gösteriyordu ve orası karakterin olduğu yer değildi. Haritanın en sağı ekranın gösterdiği kısmın dışında kaldığı için “Karakter ekranın sonuna gitmiş haritanın sağa kayması lazım.” gibi bir durum da söz konusu olmuyordu. O yüzden unity deki gibi bir kamera sistemi yapmayı denedim. Unity de Main Camera diye bir obje var ve onu mesela oyuncunun içine sürükleyince oyuncu hareket ettikçe kamera da hareket ediyor. Benzer bir sistemi pygame ile de yapmaya çalıştım ancak ekranın sadece belli bir kısmını aldığımızdan küçük bir görüntü oluşuyor. Bu yüzden görüntüyü büyütüp ekrana sığdırmak istedim.

Deneyerek daha iyi anlayacağınızı düşünüyorum. Kodlar github da yüklü ve kodları yükledikten sonra main dosyasını çalıştırırsanız kod çalışacaktır (pygame yüklü ise).

Daha iyi anlayabilmeniz için main.py dosyasında scene isimli surface in arkaplan rengini değiştirdim böylece anlaması daha kolay olacaktır sanırım.

Ayrıca ilk fotoğraftaki görüntüyü elde etmek için kodda değişiklik yapmanıza gerek yok ama 2. fotoğraftaki görüntüyü elde etmek için level.py dosyasında en alttaki yorum satırını kaldırmalısınız.

Birde neden anlamış değilim ama kameranın oluşturduğu görüntüyü (0, 0) a koyması gerekirken daha aşağıya koyuyor. Hatta 86. satırdaki 250 değerleriyle oynadıkça sonuçta ne kadar aşağıya koyduğuda değişiyor (ki oradaki 250 lerin amacı farklıydı).