Уведомления

Группа в Telegram: @pythonsu

#1 Апрель 7, 2009 15:25:39

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

Pygame-прозрачность

Гружу несколько спрайтов одним и тем же кодом:

def load_image(name, colorkey=None):
fullname = os.path.join('data', name)
try:
image = pygame.image.load(fullname)
except pygame.error, message:
print "Cannot load image:", name
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()
Собственно прозрачность определяет цвет из верхнего правого уголка, как видно. Все они - объекты одного и того же класса:
class Animal(pygame.sprite.Sprite):
def __init__(self, img, cX, cY, addx, addy):
pygame.sprite.Sprite.__init__(self)
self.image, self.rect = load_image(img, -1)
screen = pygame.display.get_surface()
self.area = screen.get_rect()
self.rect.topleft = (cX-1)*50+addx, (cY-1)*50+addy
screen.blit(self.image, self.rect)
Прикол в том, что из четырех картинок с АБСОЛЮТНО одинаковой структурой (BMP, 8bit) две почему-то остаются с непрозрачным фоном.
Примеры картинок вот:

Тигр грузится нормально, у медведя фон остается непрозрачным.



Офлайн

#2 Апрель 7, 2009 15:39:19

Enchantner
От:
Зарегистрирован: 2009-02-11
Сообщения: 442
Репутация: +  0  -
Профиль   Отправить e-mail  

Pygame-прозрачность

Все, разобрался, зря создал :) Не все графические редакторы одинаково полезны…



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version