首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关闭Pygame alpha

关闭Pygame alpha
EN

Stack Overflow用户
提问于 2009-09-15 01:49:17
回答 2查看 556关注 0票数 1

我有一个正在开发的电脑游戏,我想给用户一个选项来关闭alpha合成以提高速度。与其到处做检查,Pygame有没有一个全局的选项来说“不要使用alpha”,这样它就会忽略我对set_alpha和类似的所有调用?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2009-09-15 20:29:26

考虑到pygame文档,我会说“不,没有全局的方法来禁用alpha”。

然而,至少有两种“本地”方法可以做到:

  • 首先是继承pygame.Surface的子类,并提供您自己的set_alpha实现,这反过来可以支持您的全局alpha设置。
  • 第二个比较棘手,因为它依赖于所使用的像素格式。引用pygame文档:

Surface.set_alpha

设置整个曲面的alpha值

..。

该值不同于每像素曲面alpha。如果Surface格式包含每像素alpha,则此alpha值将被忽略。如果曲面包含每像素alpha,则将alpha值设置为无将禁用每像素透明度。

..。

这样,您就可以提供两组纹理:

具有不透明(每像素) alpha通道的

  • one将覆盖您对没有每像素alpha的set_alpha()

的所有调用,从而支持您的

希望这能有所帮助!

票数 1
EN

Stack Overflow用户

发布于 2013-03-22 18:15:10

我读到过convert()-function禁用图像的alpha。我所知道的是:

使用convert()-function可以将我电脑上屏幕大的图像的速度提高到150FPS左右,颜色深度为16位。

代码语言:javascript
复制
image = image.convert()#video system has to be initialed
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/1424734

复制
相关文章

相似问题

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