我正在开发一个婴儿应用程序,并且有一个沐浴场景,其中用户将肥皂涂抹在婴儿的身体上。那就是他像绘画一样将肥皂条拖到身体上,肥皂泡出现在身体上,无论肥皂被涂抹在哪里,就像用刷子(肥皂条)绘制肥皂纹理一样。
我有皂条精灵、纹理精灵和婴儿精灵。
我怎样才能达到这样的效果?
编辑:所以我有这个气泡精灵。我希望用户触摸到的任何地方,精灵中该点的不透明度变为 1 或 255。在开始时,不透明度将为零,因此它不可见,当用户将肥皂拖到婴儿的身体上时,不透明度将变为255 对于用户将肥皂拖过的每一点。
有两种方法可以做到这一点,具体取决于您希望气泡的外观。
只需添加很多soap_bubble sprite 作为baby_body 的子节点(或您用作父节点的任何节点)。这真的很容易做,你可以在以后弄乱soap_bubble(例如把它们洗掉)
您还可以使用soap_bubbles 生成纹理,并将其放在婴儿身上。这需要更多的努力,这个链接告诉你它是如何完成的
在任何一种情况下,您还需要一种方法来限制玩家只能在婴儿上绘画,这可以通过使用碰撞箱轻松实现。
好吧,我想气泡会在应用后的某个时间“弹出”,所以你不妨尝试使用粒子效果。粒子设计器与 cocos2d-x 配合得很好,不幸的是它不是免费的 -链接
您应该考虑 CCClippingNode,它在内部使用 opengl 模板缓冲区并且非常有效。看一下 cocos2d-x 示例代码的用法。
我认为您可以通过以下方式实现这一目标:
这个有帮助吗?