0
どうすればスプライト画像が制御不能にちらつくのを防ぐことができますか? (画像名は配管工です)。プログラムを実行すると、唯一のイメージフリッカーがスプライトになります。なぜスプライト画像が点滅/フィラーですか?
import pygame
import os, sys
import itertools
import pygame
from pygame.sprite import Sprite
cloud_background = pygame.image.load('clouds.bmp')
brick_tile = pygame.image.load('brick_tile.png')
plumbers = pygame.image.load('Mario_sideways_sprite_2xL.png')
pink = (255, 64, 64)
w = 640
h = 480
screen = pygame.display.set_mode((w, h))
running = 1
def setup_background():
screen.fill((pink))
screen.blit(cloud_background,(0,0))
brick_width, brick_height = brick_tile.get_width(), brick_tile.get_height()
for x,y in itertools.product(range(0,640,brick_width),
range(390,480,brick_height)):
# print(x,y)
screen.blit(brick_tile, (x,y))
def show_sprites():
screen.blit(plumbers,(50,337))
pygame.display.flip()
while running:
show_sprites()
setup_background()
pygame.display.flip()
event = pygame.event.poll()
if event.type == pygame.QUIT: sys.exit()
show_spritesで反転し、背景を設定した後。 "flip"を取り除いてイメージが表示されない場合は、 – Glider
が動作する可能性があるshow_spritesのフリップを削除してみてください。 – enrique2334
setup_background()を呼び出してからshow_sprites()を呼び出すと思いますスプライトは背景に描画されます。また、gliderが言ったように、show_spritesからpygame.display.flip()を削除してください。 –