來自更多'傳統' C++背景更多地用於處理低級API,而不是類似於flash.display API。如何避免flash.display閃爍
我的問題是相當原始的,但我的搜索沒有找到解決方案。
如何避免顯示API中的屏幕撕裂/閃爍? 即使像60 fps這樣高的幀速率,我也會遇到一些相當令人討厭的幀間閃爍/撕裂現象。
請看下面的簡單例子,其中Sprite的子元素只是Shape的實例而且從不改變。
private function onEnterFrame(event:Event):void
{
var t:Number = (getTimer() - time)/1000;
time = getTimer();
step(t);
}
private function step(t:Number):void {
var speed:Number = 100;
for (var i:uint = 0; i < numChildren; i++){
getChildAt(i).x += speed * t;
getChildAt(i).y += speed * t;
}
}
然而,因爲所有人都能夠做到看似流暢的快的動畫我有點困惑的是如何真正做到這一點,因爲它基本上看起來像一個同步問題。
http://stackoverflow.com/questions/989471/vsync-in-flex-flash-as3 – jedierikb 2011-05-07 11:15:12