我正在研究如何以类似Monogame的方式在Pygame中为图像着色。我一直试图让像BLEND_ADD这样的自定义标志起作用,但很难找到我正在寻找的简洁例子,它主要是人们试图“变暗”或以某种方式使用alpha级别。
问题: 如何以与MonoGame相同的方式将图像着色到某个RGBA值?
答案 0 :(得分:5)
使用颜色填充图像,并将BLEND
常量之一作为special_flags
参数传递,例如your_image.fill((190, 0, 0, 100), special_flags=pygame.BLEND_ADD)
。
请注意,BLEND_RGB_ADD
只是BLEND_ADD
的别名(同样适用于其他模式)。 RGBA
模式也将修改Alpha通道(ADD和MAX使透明部分可见)。
这是一个表格,显示不同混合模式的效果(我还在Photoshop中添加了模式的名称):