对象的间歇/交错加载

时间:2010-06-14 13:14:48

标签: actionscript-3 papervision3d

我刚刚尝试了动作脚本3并遇到了障碍。 如何间歇地渲染立方体(cube1),即。交错装载。我需要立方体彼此加载一秒钟。

以下是我到目前为止的摘要:

var rows:int = 5;
var cols:int = 3;
var spacery:int = 100;
var spacerx:int = 120;
var box_count:int = 8;

for(var i:int; i < box_count; i++)   {                                              
    cube1 = new Cube(ml,100,10,80,1,1,1);               
    cube1.y = ((i % rows)) * (cube1.x + spacery);
    cube1.x = Math.floor(i/rows) * (cube1.x +spacerx);
    cube1.z = 0;

    bigBox.addChild(cube1); 
}

1 个答案:

答案 0 :(得分:2)

//Create an array out side the function; as a global (instance) variable:
var cubes:Array = [];

//instead of bigBox.addChild(cube1), store them in the array:
cubes.push(cube1);

//initialize a timer outside after for loop
//Fire every 100 milliseconds, box_count times
var timer:Timer = new Timer(100, box_count);
timer.addEventListener(TimerEvent.TIMER, onTick);
timer.addEventListener(TimerEvent.TIMER_COMPLETE, onTickDone);

function onTick(e:Event):void
{
  bigBox.addChild(cubes[timer.currentCount]);
}
function onTickDone(e:Event):void
{
  cubes = null;
  timer.removeEventListener(TimerEvent.TIMER, onTick);
  timer.removeEventListener(TimerEvent.TIMER_COMPLETE, onTickDone);
  timer = null;
}