pygame问题加载图像(精灵)

时间:2013-06-15 18:13:17

标签: image pygame

这是代码:

"""
Hello Bunny - Game1.py
By Finn Fallowfield
"""
# 1 - Import library
import pygame
from pygame.locals import *

# 2 - Initialize the game
pygame.init()
width, height = 640, 480
screen=pygame.display.set_mode((width, height))

# 3 - Load images
player = pygame.image.load("resources/images/dude.png")

# 4 - keep looping through
while 1:
    # 5 - clear the screen before drawing it again
    screen.fill(0)
    # 6 - draw the screen elements
    screen.blit(player, (100,100))
    # 7 - update the screen
    pygame.display.flip()
    # 8 - loop through the events
    for event in pygame.event.get():
        # check if the event is the X button 
        if event.type==pygame.QUIT:
            # if it is quit the game
            pygame.quit() 
            exit(0)

当我尝试用python启动器打开文件时,我收到以下错误消息:

  File "/Users/finnfallowfield/Desktop/Code/Game1.py", line 15, in <module>
    player = pygame.image.load("resources/images/dude.png")
pygame.error: Couldn't open resources/images/dude.png

顺便说一下,我正在运行一个移植64位版本的pygame。 我在OS X Mountain Lion上使用Komodo Edit 8和Python 2.7.5

1 个答案:

答案 0 :(得分:1)

这不是一个pygame问题,而是加载文件的一般问题。只要尝试打开文件进行阅读,您就会遇到同样的问题:

f = open("resources/images/dude.png")

您正在使用图像文件的“亲戚”。这意味着您的程序将在该文件的当前工作目录下查找。你可以通过检查os.getcwd()来了解它是什么。另一种类型的路径是OS X上的“绝对”路径。这只是一个以斜杠开头的路径。

我使用的一个常见技巧是相对于我的游戏源代码加载图像。例如,如果dude.png与python代码在同一目录中,您总是可以这样找到它:

basePath = os.path.dirname(__file__)
dudePath = os.path.join(basePath, "dude.png")
player = pygame.image.load(dudePath)

希望这会有所帮助。您可以在有关加载文件和文件路径的一般问题下找到更多信息。