透明な複数の PNG で構成される画像を作成する必要があります。私のソリューションはデスクトップでは完全に機能しますが、モバイル (iOS) でパフォーマンスを向上できるかどうか知りたいです。
私の現在の解決策は次のとおりです。
まず、画像のImageDecodingPolicy.ON_LOAD
読み込みとデコード中に CPU と遅延を回避するために、すべての画像をメモリに読み込みます。
Sprite
次に、必要な画像を、表示リストに追加されないにロードします。
最後に、すべての画像を 1 つのBitmapData
オブジェクトに合成し、新しく合成した画像を前の画像の上にフェードします。
bitmapData.draw(compositionBufferSprite,null,null,null,rect,false);
前の画像から新しい画像への移行を可能な限りシームレスにする必要があるため、(構成なしですべての PNG をステージ上に配置するのではなく) 画像全体を構成する必要があります。
画像のピクセルデータなどを直接操作してみましたが、性能も作業時間も を使った場合とまったく同じでしたdraw()
。私もdrawWithQuality()
一緒StageQuality.LOW
に使ってみましたが、全く違いがありませんでした。draw()
当時の私の結論は、Air はそのビットマップ作業をすべて最適化しており、私が.NET から直接作成するかどうかは問題ではないというものでしたBitmapData
。
ANE (ネイティブ拡張) を作成することを考えましたが、それによってパフォーマンスが向上するかどうかはわかりません。これまでのところ、ANE は作業負荷を共有するのではなく、ネイティブ API にアクセスするためだけに存在しているようです。
これを改善する方法について何かアイデアはありますか?