ホームページ >バックエンド開発 >Python チュートリアル >私の PyGame 描画が表示されないのはなぜですか?
PyGame で何も描画されない理由
PyGame アプリケーションでオブジェクトをレンダリングしようとしているにもかかわらず、結果が表示される場合があります一貫性がない、または存在しない。これが発生する理由を理解するには、サーフェス上での描画と表示の更新の違いを認識する必要があります。
サーフェス上での描画
PyGame では、通常、描画します。グラフィックスをサーフェスオブジェクトに貼り付けます。アプリケーションで表示される画面は、実際にはディスプレイに関連付けられたサーフェスです。ただし、このサーフェスに描画するだけでは、実際のディスプレイに表示されるわけではありません。
ディスプレイの更新
サーフェス上で行った変更を表示するには、以下が必要です。表示を更新します。 PyGame は、このために 2 つの主なメソッドを提供します。
あなたの特定のケースでは、サーフェス上に長方形を描画しましたが、表示は更新されていません。その結果、変更は目に見えないままになります。
典型的な PyGame アプリケーション ループ
典型的な PyGame アプリケーションは、以下を含むループに従います。
更新されたコードの例は次のとおりですこれには必要なディスプレイの更新が含まれます:
import pygame from pygame.locals import * pygame.init() DISPLAY = pygame.display.set_mode((800, 800)) pygame.display.set_caption("Thing") clock = pygame.time.Clock() run = True while run: # Handle events for event in pygame.event.get(): if event.type == QUIT: run = False # Clear display DISPLAY.fill(0) # Draw scene pygame.draw.rect(DISPLAY, (200, 200, 200), pygame.Rect(0, 400, 800, 400)) # Update display pygame.display.flip() # Limit frames per second clock.tick(60) pygame.quit() exit()
ディスプレイを組み込むことにより更新すると、アプリケーションで描画されたオブジェクトを正しく表示できるようになります。
以上が私の PyGame 描画が表示されないのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。