あなたは、ファイルには何も保存する必要はありません。 イメージをファイルに読み込むときは、Surface
オブジェクトです。あなたは、このオブジェクトを画面にblitします。しかし、これらのSurface
オブジェクトは、スクリーン(サーフェスでもあります)として機能するオブジェクトと同じメソッドとプロパティを持っています。プリミティブを描画し、他のイメージをメモリ内にblitできます。
一度イメージを読んだらコピーを作成し、その上に透明な透明な色の塗りつぶし矩形を描き、それを暗くして、それを画面にblitします。フェードインしたい場合は、透明度を上げて画面に貼り付けてください。
import pygame
screen = pygame.display.set_mode((640,480))
img = pygame.image.load("MYIMAGE.PNG")
for opacity in range(255, 0, -15):
work_img = img.copy()
pygame.draw.rect(work_img, (255,0, 0, opacity), (0,0, 640,480))
screen.blit(work_img, (0,0))
pygame.display.flip()
pygame.time.delay(100)
私は自分自身を明確にするdidntはおそらく、私は私のゲームがすでに画面にブリットたものを暗くしたい... –
ああ、私はあなたのポイントを持って、すでにあるものを暗くすることに –
を暗くなる、画面上の別の画像を描画透明な矩形を画面に描画するだけです。不透明度を表す4番目の「アルファ」成分を塗りつぶし色で渡します。 – jsbueno