如何在Android中创建“战争迷雾”位图叠加层

时间:2011-09-02 22:19:57

标签: android bitmap overlay transparent fog

我有一个简单的2D游戏,其中有一些角色在屏幕上移动。我想创造一场战争迷雾,只有每个角色周围的背景都可见。

希望这很清楚(不是太模糊了?!?!)。我的想法是创建一个黑色位图,然后绘制一个以每个角色为中心的“透明”磁盘。然后我可以绘制背景,绘制字符,最后在顶部绘制叠加位图。

不确定如何将'透明'磁盘绘制到黑色位图上。

任何想法或替代设计?

2 个答案:

答案 0 :(得分:1)

Canvas.drawCircle()Paint设置为0的alpha对象一起使用。或者,您可以使用位图创建一个透明圆圈,并像另一个位图一样绘制它。如果你想要一个淡入淡出的强控制,那么基于位图的圆圈会更有利。

  1. 创建一个位图来保存黑色叠加层
  2. 用黑色填充位图
  3. 在你想要打孔的地方画一个透明的圆圈
  4. 在游戏画布上绘制叠加层
  5. 重复。

答案 1 :(得分:0)

实际上,由于战争迷雾需要持久,我不得不寻求不透明的平铺解决方案,而不是直的位图,因为位图太大而且需要花费太长时间来加载/保存激活。