まず第一に、これは非常に控えめな表現です。
痛い!
次に、技術的な理由。スプライトは、16.384 個をバッチ処理するとすぐにレンダリングに失敗します。各スプライトはクワッド (4 つの頂点) を使用してスプライトを画面にレンダリングするため、バッチ操作ごとに 65.536 頂点の頂点制限に達します。
バッチ操作ごとにそれ以上の頂点が描画されません ( VBO バッファー制限)。これは技術的な制限です。追加のスプライトに別の CCSpriteBatchNode を使用することもできますが、真剣に、ここではどこにも行きません。
線を引くことだけが必要な場合、これはおそらく私が想像できる最悪のアプローチです。線画 (ccDrawLine)、個々のピクセル (ccDrawPixel も存在すると思いますが、15k ピクセルは非常に遅くなります)、またはシェーダーを使用して、同じまたは類似の効果を実現することを検討してください。CCDrawNode を使用して、cocos2d 2.1 で描画プリミティブをバッチ処理することもできます。
私がYETIPIPIで成功裏に使用したもう 1 つの解決策は、限られた数 (たとえば 20 ~ 200) のスプライトを使用し、それらを CCRenderTexture に描画することです。新しいスプライトを追加するたびに、使用頻度の最も低いスプライトが再利用されます。rendertexture をクリアしないことで、以前に描画されたすべてのものを残したまま、はるかに少ないスプライトで描画を続けることができます。不透明度の低いスプライトを描画すると、その領域をより不透明にするために、同じ位置に長時間描画する効果さえ得られます。