Z-order.as
// Create some balls each of different colours and put in z-buffer balls = 6; zbuff = []; for ( i = 0; i < balls; i++ ) { attachMovie( 'ball', 'ball'+i, i ); zbuff[i] = _root['ball'+i]; j = i + 1; r = (j & 1) ? 0xff : 0; g = (j & 2) ? 0xff : 0; b = (j & 4) ? 0xff : 0; c = new Color( zbuff[i] ); c.setTransform( { ra:r, ga:g, ba:b } ); }
// Per frame function reduce() {
// Sort the z-buffer by z zbuff.sort( function(a,b) { return a.z > b.z; } );
// Set ball coordinates, scales and depths for this frame a += 0.05; c = 2*Math.PI/balls; for ( i = 0; i < balls; i++ ) { obj = _root['ball'+i]; b = a + c * i; obj.z = obj._xscale = obj._yscale = 20+Math.cos(b)*5; obj._x = width/2 + Math.sin(b) * width/3; obj._y = height/2 + obj.z * 2; zbuff[i].swapDepths(i); }
}



