私は cocos2d を使用して子供向けのゲームに取り組んでおり、ステージの 1 つは、ボックスを覆っている砂/雪をユーザーがクリアすることです。したがって、ここで見たものに基づいて消しゴムツールを実装しています: http://muhammedale.wordpress.com/2012/09/21/erasing-pixels-from-ccrendertexture/。基本的に、最初に呼び出すパイルスプライト (砂の山) があります。
[renderTexture begin];
[pileSprite visit];
[renderTexture end];
renderTexture にレンダリングされるようにします。次に、スプライトの上に消しゴムをドラッグすると、次のようになります。
[renderTexture begin];
[eraserSprite visit];
[renderTexture end];
タスクの完了をトリガーするために、pileSprite 全体がいつ消去されたか (不透明度 = 0) を知りたいです。ccTouchEnded ごとにこのチェック メソッドを呼び出すことになるでしょう。renderTexture の UIImage のすべてのピクセルを調べる必要がありますか? スプライトのピクセルを繰り返し処理し、各ピクセルが透明かどうかを確認する方法はありますか? 本当に助けていただければ幸いです。私はこれを調べました: UIImage(ココアタッチ)またはCGImage(コアグラフィックス)からピクセルデータを取得する方法は? 同様に、カウント、xx、yy に設定する値が実際にはわかりません。