Web ページで Flash オブジェクトのサイズを 100% に設定し、ステージのスケールを show_all に設定します
stage.scaleMode = StageScaleMode.SHOW_ALL;
ブラウザにページをロードし、ブラウザのウィンドウサイズを変更すると、フラッシュサイズも変更されます
ステージ領域全体ですべてのフレームを再描画し続けるプログラムの例を挙げてください。一部の低スペック PC では、このフラッシュを実行すると 90% 以上の CPU リソースが消費されます
package
{
import flash.display.BlendMode;
import flash.display.GradientType;
import flash.display.Graphics;
import flash.display.Sprite;
import flash.events.Event;
import flash.geom.Matrix;
[SWF(width="1200", height="600", frameRate="24")]
public class Test5 extends Sprite
{
public function Test5()
{
var g:Graphics = this.graphics;
g.beginFill(0x4000);
g.drawRect(0,0,1200,600);
g.endFill();
var sp:Sprite = new Sprite();
sp.alpha = 0.5;
sp.blendMode = BlendMode.LAYER;
sp.cacheAsBitmap = false;
this.addChild(sp);
g = sp.graphics;
var matrix:Matrix = new Matrix();
matrix.createGradientBox(1200,600,0,0,0);
var count:int = 0;
this.addEventListener(Event.ENTER_FRAME,function(e:Event):void{
g.clear();
g.beginGradientFill(GradientType.RADIAL,[0xff,0],[1,0.3],[count++%256,255],matrix);
g.drawRect(0,0,1200,600);
});
}
}
}
ウィンドウのサイズを縮小すると、コストが大幅に下がります。1920x1080 に拡大すると、fps が低下します。
ステージサイズの雲の絵を片側から反対側に移動するなど、同じことがビットマップでも起こりました。
私の質問は、ステージ幅とステージ高さが変わらなかったので、なぜビューサイズがそんなにかかるのですか?フラッシュプレーヤーは最終結果とbitbltのみをスケーリングすると思います.しかし、おそらく私は間違っていました.