0

如何在 sprite 中使用 CCTintTo 方法从上到下传播颜色。因为我使用 CCTintTo 方法在精灵中传播颜色。但我想看起来像从上到下传播颜色。如何处理这种类型的动画。

提前致谢。

4

3 回答 3

1

如果您使用的是 cocos2d 2.0+,您可以编写一个着色器来执行此操作,并设置精灵的 shaderProgram 属性。没那么难,请按照分发中的示例进行操作。我的第一个着色器花了我 0.5 个工作日才能开始工作,也许还需要 0.5 个工作日才能将这项技术正确地集成到我的整体软件架构中。幸运:)。

在这里查看着色器的介绍,在一个辅助项目中使用它,直到您可以舒适地集成到您的主干中。

于 2012-11-01T12:24:18.563 回答
0

这是不可能的颜色着色。更改节点的颜色属性或使用着色操作只会将整个精灵着色为单一颜色,不会有渐变。

您必须自定义绘制精灵并应用/调整来自 CCLayerGradient 的渐变渲染代码。

于 2012-11-01T11:57:01.437 回答
-1

是的,CCLayerGradient 是您正在寻找的。顺便说一下,您使用什么技术进行着色。如果您使用 CGContextSetRGBFillColor 方法来填充精灵颜色,那么它会很棘手,但是如果您使用图像来填充颜色,那么图像序列很好plist 可用于制作动画,这将为您提供您正在寻找的确切效果。

获取图像序列并使用 CCSpriteBatchNode 对其进行动画处理,否则如果您想使用 RGB 颜色填充精灵,则必须寻找渐变效果。

于 2012-11-01T12:19:46.843 回答