1

我正在开发一个婴儿应用程序,并且有一个沐浴场景,其中用户将肥皂涂抹在婴儿的身体上。那就是他像绘画一样将肥皂条拖到身体上,肥皂泡出现在身体上,无论肥皂被涂抹在哪里,就像用刷子(肥皂条)绘制肥皂纹理一样。

我有皂条精灵、纹理精灵和婴儿精灵。

我怎样才能达到这样的效果?

编辑:所以我有这个气泡精灵。我希望用户触摸到的任何地方,精灵中该点的不透明度变为 1 或 255。在开始时,不透明度将为零,因此它不可见,当用户将肥皂拖到婴儿的身体上时,不透明度将变为255 对于用户将肥皂拖过的每一点。

在这里看到肥皂泡精灵

4

4 回答 4

0

有两种方法可以做到这一点,具体取决于您希望气泡的外观。

  1. 只需添加很多soap_bubble sprite 作为baby_body 的子节点(或您用作父节点的任何节点)。这真的很容易做,你可以在以后弄乱soap_bubble(例如把它们洗掉)

  2. 您还可以使用soap_bubbles 生成纹理,并将其放在婴儿身上。这需要更多的努力,这个链接告诉你它是如何完成的

在任何一种情况下,您还需要一种方法来限制玩家只能在婴儿上绘画,这可以通过使用碰撞箱轻松实现。

于 2013-09-24T22:27:32.370 回答
0

好吧,我想气泡会在应用后的某个时间“弹出”,所以你不妨尝试使用粒子效果。粒子设计器与 cocos2d-x 配合得很好,不幸的是它不是免费的 -链接

于 2013-09-25T08:13:09.693 回答
0

您应该考虑 CCClippingNode,它在内部使用 opengl 模板缓冲区并且非常有效。看一下 cocos2d-x 示例代码的用法。

于 2013-12-25T12:09:33.910 回答
0

我认为您可以通过以下方式实现这一目标:

  1. 将您的“带泡泡的婴儿”放在 CCLayer 中(作为精灵)。这将是背景。
  2. 在第一个图层的前面创建第二个图层,然后将 CCTexture2D 放入其中,填充为白色。
  3. 每当用户触摸屏幕时,将画笔精灵绘制到纹理中。画笔精灵必须以透明度绘制。

这个参考可能会有所帮助。

这个有帮助吗?

于 2013-12-25T12:23:37.047 回答