私は現在、画面にメッセージを描画し、フレームごとに1文字追加するpygameを使用して関数を作成しています(つまり、赤い10月の狩り)。元の文字列から徐々に大きなスライスを単純にコピー (または渡す) できることはわかっていますが、リソースを大量に消費することはわかっています。これを行うより良い方法はありますか?
徐々に大きくなるスライスを使用するコード:
def full_screen_dialog_tt(thesurface, thefont, theclock, message, thebeep):
i = 0
while(i < len(message)): # Initialize the string display
theclock.tick(60)
thesurface.fill((0, 0, 0))
thesurface.blit(thefont.render(message[i]+"_"))
pygame.display.flip()
thebeep.play()
while(1): # Whole string is here now
theclock.tick(60)
for event in pygame.events.get():
if event.type == MOUSEBUTTONDOWN: return