tips blog

【AS3】読み込んだ画像がカクカク動く

2011年4月14日

【事象】
・Loaderで読み込んだ画像をそのままaddChild、BitmapにしてaddChildにしても0.1pxづつ動かすとカクカクしてしまう。
・スムージングが有効になっていないもしくはピクセルにスナップしている
・smoothing=true,pixelSnapping=”never”にしても駄目
【解決】
・graphics.beginBitmapFillを使って描く

var test_mc=new MovieClip();
stage.addChild(test_mc);
var loader=new Loader();
loader.load(new URLRequest(“ファイル名”));
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,comp);
function comp(e){
bitmapDraw(test_mc,loader);
test_mc.addEventListener(Event.ENTER_FRAME,handler);
}
function handler(e){
test_mc.x+=0.1;
}
function bitmapDraw(mc,l){
var bmd=new BitmapData(l.width,l.height);
bmd.draw(l.content);
mc.graphics.clear();
mc.graphics.beginBitmapFill(bmd,new Matrix(),false,true);  
mc.graphics.drawRect(0,0,l.width,l.height);  
mc.graphics.endFill();
}
【理由】
・不明

【余談】
色々調べてsmoothingの設定順番等の解説もあったが解決しなかった
smoothingやpixelSnappingを設定しても動きに大した変化はなかった
本来ならaddChild(Bitmap)で解決したかったがとりあえずgraphicsを使って解決させた

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です