0

スプライトで CCTintTo メソッドを使用して色を上から下に広げる方法。私は CCTintTo メソッドを使用してスプライトに色を広げているためです。でも上から下に色が広がって見えるようにしたい。このタイプのアニメーションに対して何をすべきか。

前もって感謝します。

4

3 に答える 3

1

cocos2d 2.0+ を使用している場合、これを行うシェーダーを作成し、スプライトの shaderProgram プロパティを設定できます。難しいことではありません。ディストリビューションの例に従ってください。私の最初のシェーダーは、作業を開始するのに 0.5 営業日かかり、その技術をソフトウェア アーキテクチャ全体に適切に統合するのにさらに 0.5 営業日かかったかもしれません。g'luck :)。

シェーダーの概要については、こちらを参照してください。メイン トランクに快適に統合できるようになるまで、サイド プロジェクトで試してみてください。

于 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 に答える