2012-02-12 2 views
0

Cocos2d-iphoneでiPhoneゲームを開発する。私は巨大なスプライトを持っており、CCLiquid(または他の液体波のような効果)を適用したいと考えています。CCSpriteの特定の領域にCCLiquid効果がありますか?

しかし、画像は巨大なので、(ゲームプレイ中に他の多くの大きな要素があるとは言わずに)多くのメモリを消費します。

まあ、私は、 "プレイヤーが見ることができる領域に液体効果を適用する"(そのような領域の寸法は480x320である)ことを試みることができると考えました。それはたくさんの助けになるかもしれません。

私は既に影響を受けるはずのCCSpriteの領域を表すCGRectを取得しました。しかし、実際にそのような領域内にのみの効果を適用するにはどうすればいいですか??何か案は?

答えて

1

スプライトフレームから手動でCCSpriteを作成し、そのフレームの境界をCGRectに設定することができます。次に、この結果のCCSpriteにエフェクトを使用します。基本的に、オリジナルのCCSpriteイメージは、スプライトの実際のフレームになるようにそのイメージの小さな部分を指定する、より大きなテクスチャアトラス形式のように動作します。この新しいコピーされたスプライトを、メインの大きなスプライトの上に正確な位置にレイヤーした場合、そのスプライトの一部に見えるでしょうが、小さなCGRect部分だけがあなたのコードの影響を受けます。

+0

ええ、私はそれを昨日やろうとしていて、それが改善しました。しかし、私はまだ同じスプライトでそれをやりたかった...とにかく、十分に良い。 – Voldemort

関連する問題