最初,我正在创建一个具有维度宽度和高度的游戏界面
pygame.init()
SCREEN1 = pygame.display.set_mode((WIDTH,HEIGHT))
sprites = pygame.sprite.Group()
sprites.add( ..... #add sprite
...
...
sprites.draw(SCREEN)
SCREEN.blit("test", (WIDTH-4, HEIGHT-2))
pygame.display.flip()
clock.tick(FPS)如何将SCREEN1转换为具有x2规模的SCREEN2?我知道有pygame.transform.scale,我尝试了以下方法,但不起作用。它只显示一个具有新维度的空窗口。
pygame.init()
SCREEN1 = pygame.display.set_mode((WIDTH,HEIGHT))
sprites = pygame.sprite.Group()
sprites.add( ..... #add sprite
...
...
sprites.draw(SCREEN)
SCREEN.blit("test", (WIDTH-4, HEIGHT-2))
SCREEN2=pygame.display.set_mode((WIDTH*2,HEIGHT*2))
pygame.transform.scale(SCREEN, (WIDTH*2,HEIGHT*2), SCREEN2)
pygame.display.flip()
clock.tick(FPS)我可以知道做这件事的正确方法是什么吗?谢谢。
发布于 2020-03-02 13:44:41
SCREEN是与窗口关联的显示pygame.Surface。当执行pygame.display.set_mode()时,将生成新的显示图面,并且先前显示图面中的日期将丢失。在生成新的显示曲面之前,创建曲面的副本(pygame.Surface.copy()):
old_screen = SCREEN.copy()
SCREEN2 = pygame.display.set_mode((WIDTH*2,HEIGHT*2))
pygame.transform.scale(old_screen, (WIDTH*2,HEIGHT*2), SCREEN2)https://stackoverflow.com/questions/60481977
复制相似问题