Pygame库 - Sprites无法在屏幕上正确呈现

时间:2015-12-14 16:28:18

标签: python macos pygame visual-glitch

当我在基于pygame的游戏中使用精灵时,他们似乎无法正常工作 - 正如您在屏幕截图中看到的那样,他们没有正确的形状并且有一些奇怪的失真在上半部分。

Black squares have distortions on the top; sprite in the centre must be something like arrow-shaped.

加载图片所涉及的一段代码(从pygame的教程中复制):

def load_image(name, colorkey=None):
fullname = os.path.join('data', 'images')
fullname = os.path.join(fullname, name)
try:
    image = pygame.image.load(fullname)
except pygame.error as message:
    print('Cannot load image:', fullname)
    raise SystemExit(message)
image = image.convert()
if colorkey is not None:
    if colorkey is -1:
        colorkey = image.get_at((0,0))
    image.set_colorkey(colorkey, RLEACCEL)
return image, image.get_rect()

我在Mac OS X上使用Python 2.7.11和3.4.2进行了我的项目并得到了这个问题。但是当我在Windows上的Python 3.1上测试它时,问题并没有显示出来,精灵正常加载。所以我认为它与Mac OS X有关。

1 个答案:

答案 0 :(得分:1)

你是El Capitan(OS X 10.11)吗?如果是这样,您在该版本的OS X上看到SDL_image中的已知错误。有关详细信息和可能的解决方法,请参阅此链接:

https://bitbucket.org/pygame/pygame/issues/284/max-osx-el-capitan-using-the-deprecated