将SDL_VIDEODRIVER设置为“dummy”后,pygame中的颜色错误

时间:2017-02-21 03:30:37

标签: python colors pygame sdl pygame-surface

我正在使用PyGame来操纵和绘制图像。

例如,这是我使用draw.rect创建的图片:

normal image

我需要在AWS上运行我的代码,因此我按照instructions让pygame在无头服务器上运行,并将os.environ["SDL_VIDEODRIVER"] = "dummy"添加到我的代码中。 但是现在,生成的图像会以不同的方式解释相同的RGB值(尤其是蓝色通道)。

messed-up image

例如,原始图像中的灰白色是(254,252,213),但在第二个图像中,它产生为(255,255,255)。

为什么会这样?

1 个答案:

答案 0 :(得分:0)

解决方案是在PyGame的显示中启用alpha通道。

这可以通过在初始化显示后设置self.screen = pygame.display.set_mode((WIDTH, HEIGHT), 0, 32)来完成。