2011-09-15 8 views
4

3840 x 2160の大きなステージサイズを使用して、ステージの端に向かって小さなスプライトをアニメーション化するとパフォーマンスの問題が発生します。AS3大きなステージのエッジでのパフォーマンスが悪い

これらは数百個も問題なくステージに追加できますが、エッジに近いものがあると問題が発生します。これを解決するために何かできることはありますか?

更新:

sprite.cacheAsBitmap = trueが私のために問題を引き起こしていました。 falseに設定すると問題が解決しました。

+1

これまでに尋ねたことがあります。それらの近くにカスタム機能がありますか?多分それはAdobeの問題です。 – apscience

+0

では、半径を増やし、各フレームでalpha、graphics.clear()、および再描画を減らして、まっすぐに拡大するパルスを増やしてはいけません。 – davivid

答えて

1

これは、おそらくフラッシュプレーヤーが画面をどのようにレンダリングするかと関係があります。最も外側にある4つの再描画される座標の間のすべてを再描画します。

座標1600,1000と1800,1200の2つのピクセルしかフレーム間で変更されていない場合は、領域のみが変更されていることを意味します(つまり、左端、右端、上端、下端)。 200x200ピクセルのピクセルが再描画されます。ただし、10,10のピクセルと3830,2150のピクセルを再描画する必要がある場合は、3820x2140ピクセルの領域を再レンダリングする必要があります。それは非常にピクセルです。 (8.174.800)

これは、それらの4つの最も外側のピクセルの間で他のものが変更されていない場合でも同じです。

+0

ええ、私は、 "表示領域を再表示"コンテキストメニューオプションを使って何が起こっているのかを見ることをお勧めします。 – meddlingwithfire

+0

有効: 'flash.profiler.showRedrawRegions(true)'を有効にして、再描画領域を確認することができます。スプライトがステージの境界を超えるまで、再描画はステージ全体に展開されます。 – davivid

+1

問題は 'cacheAsBitmap =本当に 'falseに設定すると問題が解決しました!乾杯。 – davivid

関連する問題