SDL:使现有表面透明/删除所有像素数据

SDL: Make existing surface transparent / delete all pixel data

本文关键字:删除 像素 数据 像素数 透明 表面 SDL      更新时间:2023-10-16

我在SDL中有一个透明表面,这个表面包含像素数据。现在我需要"清除"这个表面。

有没有办法清除表面,使其完全透明(所以我可以在上面画新的东西?)我找到的唯一方法是创建一个全新的表面,但出于几个原因,我不想这样做。

您使用的是什么版本的SDL(1.2还是2.0)

你可以通过将所有像素设置为某种颜色来"清理"表面(参见memset和SDL_Surface中的pixels成员)。但是你不需要让它透明来绘制它。如果你把另一个表面放在上面,所有的像素都应该改变它们的颜色。你能提供os代码吗?