<html><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">John,<div><br></div><div>I have never seen an approach like this, but it is appealing at first glance. &nbsp;It would appear that this might also create a speed gain via direct access/no parsing, compared to traditional implementations we have seen so far. &nbsp;Have you run any test to see if this approach does perform better?</div><div><br></div><div>Graeme</div><div><br></div><div><br><div><div>On May 6, 2008, at 12:54 PM, John Grden wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><b>Was this:</b><br>tween_0 = new Tween3D(target, 1, Equations.easeOutCubic);<br>tween_0.x = 0;<br>tween_0.y = 50;<br>tween_0.rotationZ = 0;<br>sequence.addStep(tween_0);<br><br>sequence.lastStep.advance = new OnDurationComplete(.2); // advance early/overlap<br> tween_0b = new Tween3D(target, 1, Equations.easeOutCubic);<br>tween_0b.z = 200;<br>sequence.addStep(tween_0b, true); // 2nd param groups it with previous step. param is "addToLastStep"<br><br>tween_1 = new Tween3D(target, 1, Equations.easeOutCubic);<br> tween_1.x = -10;<br>tween_1.y = 85;<br>tween_1.rotationZ = 15;<br>sequence.addStep(tween_1);<br>sequence.lastStep.advance = new OnDurationComplete(.25); // advance early/overlap<br><br>tween_2 = new Tween3D(target, 1, Equations.easeOutBounce);<br> tween_2.rotationX = 0;<br>tween_2.rotationY = 0;<br>sequence.addStep(tween_2);<br><br><b>Is now this:</b><br><br>tween_0 = new Tween3D(target, [Go3D.x(0), Go3D.y(50), Go3D.rotationZ(0)], 1, Equations.easeOutCubic);<br>sequence.addStep(tween_0);<br> sequence.lastStep.advance = new OnDurationComplete(.2); // advance early/overlap<br><br>tween_0b = new Tween3D(target, [Go3D.z(200)], 1, Equations.easeOutCubic);<br>sequence.addStep(tween_0b, true); // 2nd param groups it with previous step. param is "addToLastStep"<br> <br>tween_1 = new Tween3D(target, [Go3D.x(-10), Go3D.y(85), Go3D.rotationZ(15)], 1, Equations.easeOutCubic);<br>sequence.addStep(tween_1);<br>sequence.lastStep.advance = new OnDurationComplete(.25); // advance early/overlap<br> <br>tween_2 = new Tween3D(target, [Go3D.rotationX(0), Go3D.rotationY(0)], 1, Equations.easeOutBounce);<br>sequence.addStep(tween_2);<br clear="all"><br><br>I'm still thinking about this approach, but thought I would throw it out to you guys to see what you thought.&nbsp; Right now, there's static methods in Go3D that return a Go3Dproperty.&nbsp; Tween3D has an array called propertyChanges and if there is an array in the propertyChanges argument, I just set it straight away - no parsing required.&nbsp; It's all ready to go and is filled with Go3DProperty objects.<br> <br>Thoughts?<br>-- <br>[ JPG ] <span>&lt;ATT00001.txt></span></blockquote></div><br></div></body></html>