首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用pyglet加载图像会使一些透明像素变为白色

使用pyglet加载图像会使一些透明像素变为白色
EN

Stack Overflow用户
提问于 2015-01-08 03:53:48
回答 2查看 1.1K关注 0票数 1

我正在使用cocos2D-python,我正在使用pyglet.image.load和pyglet.resource.image加载图像,但它仍然在被支持为透明的地方添加了一些白色像素。

我以前用过pygame,但从来没有用过它。

如果重要的话,我使用paint.net并将图像保存为.png

提前感谢

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

EN

回答 2

Stack Overflow用户

发布于 2015-01-09 00:55:17

所以很明显,因为我想让它像素化,所以决定对它进行mipmap或其他什么东西,所以它对它进行了抗锯齿处理。无论如何,我发现这是一个半途而废的解决方案:

代码语言:javascript
复制
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

票数 1
EN

Stack Overflow用户

发布于 2017-05-27 03:51:21

只是为了让Frothiny的回答更清晰一些:

他提到的行解决了问题,但它们的位置很重要。我可以通过在创建sprite后立即添加gl行来使修复生效。

示例

代码语言:javascript
复制
# 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)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/27827547

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档