Pygameの応答しない表示[重複]

Aug 22 2020

そこで、スプライトを使用してXとYの動きを伴う基本的な2DPythonゲームの基盤を作成しようとしています。

ディスプレイがコードにもかかわらずunresposiveですが、ここにしようとするscreen.fillと、screen.blit

playerX = 50
playerY = 50
player = pygame.image.load("player.png")
width, height = 64*8, 64*8
screen=pygame.display.set_mode((width, height))
screen.fill((255,255,255))
screen.blit(player, (playerX, playerY))

重要なものが欠けていますか?

回答

3 Rabbid76 Aug 22 2020 at 19:08

最小限の典型的なPyGameアプリケーション

参照pygame.event.get()

ゲームのフレームごとに、イベントキューに何らかの呼び出しを行う必要があります。これにより、プログラムがオペレーティングシステムの他の部分と内部的に対話できるようになります。

PythonPygameの紹介も参照してください

最小限の例:

import pygame

pygame.init()

playerX = 50
playerY = 50
player = pygame.image.load("player.png")
width, height = 64*8, 64*8
screen = pygame.display.set_mode((width, height))

# main application loop
run = True
while 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()