Python 使用pyglet加载图像会将一些透明度像素变为白色
我使用的是cocos2D python,我使用pyglet.image.load和pyglet.resource.image加载图像,但它仍然在支持透明的地方添加了一些白色像素 我以前使用过pygame,但从未体验过 如果有关系,我使用paint.net并将图像另存为.png 提前谢谢Python 使用pyglet加载图像会将一些透明度像素变为白色,python,image,transparency,pyglet,cocos2d-python,Python,Image,Transparency,Pyglet,Cocos2d Python,我使用的是cocos2D python,我使用pyglet.image.load和pyglet.resource.image加载图像,但它仍然在支持透明的地方添加了一些白色像素 我以前使用过pygame,但从未体验过 如果有关系,我使用paint.net并将图像另存为.png 提前谢谢 很明显,因为我想对其进行像素化,所以决定对其进行mipmap或其他操作,以便对其进行某种程度的抗锯齿处理。。 无论如何,我发现这是一个半途而废的解决方案: from pyglet.gl import * glEn
很明显,因为我想对其进行像素化,所以决定对其进行mipmap或其他操作,以便对其进行某种程度的抗锯齿处理。。 无论如何,我发现这是一个半途而废的解决方案:
from pyglet.gl import *
glEnable(GL_TEXTURE_2D)
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_NEAREST)
然后,一个有效的解决方案被添加
glTexParameteri(GL_纹理_2D,GL_纹理_贴图过滤器,GL_最近)
每次我加载一个纹理,可能不是最有效的事情,但我
这是我找到它的地方:
为了让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)