Почему не загружаются мои изображения Pygame? - PullRequest
1 голос
/ 04 марта 2011

Я нашел учебник в Интернете (на Youtube), и он показал мне основы создания игры с Pygame.я нашел изображения того вида, которые он сказал и что у него было.он не сказал, где их спасти, я думаю, это может быть моей проблемой.здесь, это пример того, что у меня есть в моей программе и что показывает ошибка

bif="bg.jpg"
mif="images.png"

import pygame, sys
from pygame.locals import *

pygame.init()
screen=pygame.display.set_mode((420,315),0,32)

backround=pygame.image.load(bif).convert()
mouse_c=pygame.image.load(mif).convert_alpha()

while True:
    for event in pygame.event.get():
        if event.type == QUIT:
            pygame.quit()
            sys.exit()

    screen.blit(backround, (0,0))

    x,y = pygame.mouse.get_pos()
    x -= mouse_c.get_width()/2
    y -+ mouse_c.get_height()/2

    screen.blit(mouse_c, (x,y))

    pygame.display.update()

ошибка гласит:

Traceback (most recent call last):  
File "C:/Python26/pygame.games/pygame
1", line 10, in <module>
    backround=pygame.image.load(bif).convert()
error: Couldn't open bg.jpg

Пожалуйста, ответьте как можно скорее.

Ответы [ 3 ]

3 голосов
/ 04 марта 2011

Исходя из этого кода, ваши файлы изображений должны быть сохранены в том же каталоге, что и файл .py вашей игры. Попробуйте переместить их туда.

В качестве проверки работоспособности (чтобы убедиться, что изображения будут загружены, и это действительно проблема с предоставлением правильного пути), вы можете временно указать абсолютный путь к изображению в вашем коде, поэтому вместо

bif = "bg.jpg"

Вы бы

bif = "C:/My_game/images/bg.jpg"

Но, очевидно, измените второй бит, чтобы указать, где на самом деле хранится ваше изображение. Если вы уверены, что изображение может быть загружено с использованием абсолютного пути, вы должны использовать относительный путь, и если у вас может быть много ресурсов, вы должны хранить их отдельно от кода, например, поместив их в assets папка в той же папке, что и код вашей игры, или похожая.

bif = "assets/bg.jpg"
0 голосов
/ 15 апреля 2019

Возможно, ваше изображение слишком велико.Сначала уменьшите изображение, используя другое приложение для обработки изображений, и повторите попытку.

0 голосов
/ 17 октября 2013

У меня просто была такая же проблема. пытаясь понять тот же учебник

То, как я это исправил.

  1. Поместите ваши изображения в C: \ Python26 \ Lib \ site-packages

Здесь установлена ​​программа pygame, и она не работала, пока я не поместил туда изображения.

  1. при объявлении вашей переменной для bif и mif вы должны написать так:

bif = "C: /Python26/Lib/site-packages/bg.jpg"

с полным расположением файла изображения. ЗАМЕТЬТЕ, что косые черты впереди, как так

Я пробовал с одинарной и двойной обратной косой чертой, например, "\" и "\", но ни одна из них не работала.

Попробуйте все разные способы и убедитесь, что все написано правильно, и ваши изображения находятся там, где вы сказали, что они есть, и что вы получили правильное имя файла (.jpg, .JPG или .jpeg). Вы можете просто посмотреть в свойствах файла изображения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...