2017-02-20 9 views
0

Soweit ich weiß, ist dies alles, was ich tun muss, um auf dem Bildschirm anzuzeigen und zu sehen, aber es tut es nicht. Ich weiß, dass ich hier etwas ziemlich Offensichtliches vermissen muss, aber ich kann nicht sehen, was ich verpasst habe, dass mein Bild nicht auf dem Bildschirm erscheint.Warum erscheint dieses Bild nicht auf dem Bildschirm?

main.py

import pygame 
from loading import * 
from settings import * 

class game(): 
    def __init__(self): 
     self.gameRunning = True 
     self.screen = pygame.display.set_mode((screen_width, screen_height)) 
     self.clock = pygame.time.Clock() 
     self.Background_images = load_images() 

    def gameLoop(self): 

     self.clock.tick(fps) 
     self.event() 
     self.update() 

    def event(self): 
     for event in pygame.event.get(): 
      if event.type == pygame.QUIT: 
       self.gameRunning = False 

    def update(self): 
     self.screen.blit(self.Background_images["layer1"], (0,0)) 
     pygame.display.update() 

playGame = game() 
while playGame.gameRunning == True: 
    playGame.gameLoop() 

loading.py

import pygame 
from settings import * 

def load_images(): 
    Parallax_images = {} 
    Parallax_images["layer1"] = pygame.image.load("PARALLAX\layer1.png") 
    Parallax_images["layer2"] = pygame.image.load("PARALLAX\layer2.png") 
    Parallax_images["layer3"] = pygame.image.load("PARALLAX\layer3.png") 
    Parallax_images["layer4"] = pygame.image.load("PARALLAX\layer4.png") 
    Parallax_images["layer5"] = pygame.image.load("PARALLAX\layer5.png") 
    Parallax_images["layer6"] = pygame.image.load("PARALLAX\layer6.png") 
    Parallax_images["layer7"] = pygame.image.load("PARALLAX\layer7.png") 
    Parallax_images["layer8"] = pygame.image.load("PARALLAX\layer8.png") 
    return Parallax_images 
+0

Wo werden screen_width und screen_height erstellt? Wenn Sie auf einen nicht vorhandenen Bildschirm blitschen, wird nichts passieren. Erhalten Sie irgendwelche Fehler oder nur einen leeren Bildschirm? –

+0

Sie werden in settings.py erstellt, die ich oben importiert habe. Auch das Pygame-Fenster öffnet sich gut, aber es ist komplett schwarz. Der Code funktioniert auch mit verschiedenen Bildern, nur nicht mit denen, die ich benutze. Also ich denke, das Problem ist mit den Bildern nicht der Code. – CustomerSupport

+1

Haben die PNGs leere/leere Bereiche? Wenn ja, wenn Sie ein Bild laden, verwenden Sie: 'pygame.image.load (" PARALLAX \ layer1.png "). Convert_alpha()' –

Antwort

0

diesen Beitrag war sehr nützlich für das Zeichnen Bilder

What is a good way to draw images using pygame?

UPDATE

Es scheint etwas mit den PNG-Bildern selbst zu fehlen. Wenn er kompiliert und mit verschiedenen Bildern ausgeführt wird, funktioniert der Code ordnungsgemäß.

+0

Ich weiß, dass Sie blit mit einem x und y für die obere linke Ecke von wo Sie sich blit vorstellen möchten. Auch ich habe gerade versucht, ein Rechteck zu verwenden und immer noch nichts angezeigt wird. – CustomerSupport

+0

können Sie bestätigen, dass es tatsächlich in die Update-Methode eingeht? – The4thIceman

+0

Nur überprüft, es ist 100% zu der Update-Methode und es ist auch 100% durch die Load_images-Methode – CustomerSupport

Verwandte Themen