0

私は問題を抱えており、Candy Crush Saga のゲームでも見ましたが、問題は解決されました。スプライトがボードにある場合にのみ表示されるようにします (下の画像リンクを参照)。ボードは、前述のゲームのレベルのように、さまざまな形にすることができます。Cocos2dでこれをどのように達成できるか、誰かアイデアがありますか? 誰かのヒントがあればとてもうれしいです。

前もって感謝します。

画像リンク: http://www.android-games.fr/public/Candy-Crush-Saga/candy-crush-saga-bonus.jpg

4

2 に答える 2

1

Cocos2d では、さまざまな z レベルでスプライトをレンダリングできます。低い z レベルの画像がグラフィック カードによって最初に描画され、高い z 値の画像 (スプライト) が後で描画されます。したがって、画像 (A など) が他の画像と同じ位置にあるが、より高い z 値を持つ場合、2 つの画像が交差する画像 A のピクセルのみが表示されます。

Cocos2d はレイヤーも使用するため、スプライトをレイヤーに追加し、レイヤーを特定の z 値に設定することができます。スプライトが見える領域に透明なビットを含む PNG 画像を含むボード (z=1 など) のレイヤーと、スプライトの z=0 の 2 番目のレイヤーを使用したと思います。このようにして、スプライトが透明な領域にあるときにのみスプライトを見ることができます。

これは役に立ちますか?

于 2013-09-05T09:46:31.847 に答える