2013-06-15 3 views
2

Это код: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) 

Когда я пытаюсь открыть файл с питона пусковым я получаю сообщение об ошибке:

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. Я использую Komodo Edit 8 на OS X Mountain Lion с Python 2.7.5

ответ

0

Это не проблема с pygame, а общая проблема с загрузкой файлов. Вы можете получить такую ​​же проблему, просто пытаясь открыть файл для чтения:

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

Вы используете «родственник» для файла изображения. Это означает, что ваша программа будет выглядеть под текущей рабочей папкой для этого файла. Вы можете узнать, что это такое, проверив os.getcwd(). Другой тип пути - это «абсолютный» путь в OS X. Это просто путь, начинающийся с косой черты.

Общим трюком, который я использую, является загрузка изображений относительно исходного кода игры. Например, если dude.png находится в том же каталоге, что и код питона, вы всегда можете найти его, как это:

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

Надеется, что это помогает. Вероятно, вы можете найти дополнительную информацию по общим вопросам загрузки файлов и путей к файлам.

+0

Хорошо, спасибо, попробуем! EDIT: О, подождите, я получаю эту ошибку: Файл «/Users/finnfallowfield/Desktop/Code/Game1.py», строка 15, в basePath = os.path.dirname (__ file__) NameError: name 'os' не определено – exitcode

+0

Вам нужно «импортировать os» – ninMonkey

+0

* FIXED * Спасибо! – exitcode

Смежные вопросы