2015-01-07 4 views
1

Я использую cocos2D-python, и я загружаю изображения с pyglet.image.load и pyglet.resource.image, но он по-прежнему добавляет некоторые белые пиксели, где он оказывается прозрачным ,Загрузить изображение с pyglet превращает некоторые прозрачные пиксели белый

Я раньше использовал pygame, но не испытывал этого.

Если это имеет значение я использую paint.net и сохранять изображения в формате .png

Спасибо заранее

https://dl.dropboxusercontent.com/u/58141766/white%20pixels%20%3B(.png

ответ

1

Так, по-видимому, потому что я хотел, пикселизированным он решил MIPMAP его или что-то так она сглаживается это вид .. в любом случае я нашел это как halfworking решение:

from pyglet.gl import * 
glEnable(GL_TEXTURE_2D) 
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST) 

Тогда в рабочем решении было добавлено glTexParameteri (GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST) ​​ каждый раз, когда я загружал текстуру, возможно, не самую эффективную вещь, кроме meh.

Вот где я нашел его: https://gamedev.stackexchange.com/questions/20297/how-can-i-resize-pixel-art-in-pyglet-without-making-it-blurry

0

Просто, чтобы добавить некоторую ясность для ответа Frothiny в:

линии он упомянул исправить проблему, но их расположение очень важно. Я смог заставить исправление работать, добавив строки gl сразу после создания спрайта.

Пример

# Your imports... 
from pyglet.gl import * 
# Your program's code... 
Sprite('someimage.png') 
glEnable(GL_TEXTURE_2D) 
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST) 
Смежные вопросы