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.pump()
またはのいずれかでイベントを処理する必要がありpygame.event.get()
ます。またはの
Surface
いずれpygame.display.flip()
かによって、それぞれの表示ウィンドウを表すものを更新する必要がありますpygame.display.update()
。
ゲームのフレームごとに、イベントキューに何らかの呼び出しを行う必要があります。これにより、プログラムがオペレーティングシステムの他の部分と内部的に対話できるようになります。
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()