Pygame не отвечает на отображение
Итак, я пытаюсь создать основу для базовой 2D-игры на python с перемещением по X и Y с помощью спрайта.
Однако отображение не реагирует, несмотря на то, что приведенный здесь код пытается screen.fill и screen.blit
screen.fill
screen.blit
playerX = 50playerY = 50player = pygame.image.load("player.png")width, height = 64*8, 64*8screen=pygame.display.set_mode((width, height))screen.fill((255,255,255))screen.blit(player, (playerX, playerY))
Я упускаю что-то важное?
Переведено автоматически
Ответ 1
Минимальное, типичное приложение PyGame
имеет игровой цикл
должен обрабатывать события, используя либо pygame.event.pump(), либо pygame.event.get().
pygame.event.pump()
pygame.event.get()
необходимо обновить Surface то, что представляет отображаемое соответственно окно, с помощью pygame.display.flip() или pygame.display.update().
Surface
pygame.display.flip()
pygame.display.update()
Видеть pygame.event.get():
Для каждого кадра вашей игры вам нужно будет выполнить какой-либо вызов очереди событий. Это гарантирует, что ваша программа сможет внутренне взаимодействовать с остальной операционной системой.
Смотрите также Введение в Python Pygame
Минимальный пример: repl.it/@Rabbid76/PyGame-MinimalApplicationLoop
import pygamepygame.init()playerX = 50playerY = 50player = pygame.image.load("player.png")width, height = 64*8, 64*8screen = pygame.display.set_mode((width, height))# main application looprun = Truewhile run: # event loop for event in pygame.event.get(): if event.type == pygame.QUIT: run = False # clear the display screen.fill((255,255,255)) # draw the scene screen.blit(player, (playerX, playerY)) # update the display pygame.display.flip()