[Golist] tween classes versus all-in-one
Moses Gunesch
moses at goasap.org
Mon Apr 21 09:54:04 PDT 2008
oohhhh reverse eh. That is different.
Maybe reverse play should be an open toggle option for tweens. It
complexifies repeater options though, for sure...
- m
On Apr 21, 2008, at 11:43 AM, Karsten Goetz wrote:
> Hi Moses,
>
> thank you for your reply.
> Just a quick question:
> Does skipTo really rewind, I mean does it change the play-direction?
> I thougt it jumps to he new target and plays from there on. Well,
> I'll check out again the new test-files, havn't done this for a while.
> The rewind-function I had in mind should play the animation reverse.
>
> I'll check that out, maybe it's that easy :-)
>
> Greetings
>
> Karsten
>
>
> Am 21.04.2008 um 17:18 schrieb Moses Gunesch:
>> K –
>> The reason that skipTo() was picked over a more complicated
>> interface is that only tweens which have start and end can be
>> rewound or fast-forwarded – not the case for physics animations
>> necessarily. But skipTo() can easily be used to rewind and ff:
>>
>> Rewind: skipTo(0);
>> FF: skipTo(tween.duration);
>>
>> Now, to the heart of your question which is skipTo + parallel or
>> sequence.
>>
>> Here is how I think we could implement that functionality:
>> 1. PlayableBase should have a read-only duration getter that
>> returns the max time of all children
>> 2. SequenceBase might also need a duration getter that sums all
>> step durations.
>> 3. SequenceBase should get skipToTime() functionality.
>> Alternatively skipTo could use time and the secondary method could
>> be skipToIndex().
>>
>> The time-based one is easy to implement; you just run a sum of
>> durations on each step and when the sum exceeds the time you back
>> it up one and run skipTo() on the step with the remainder.
>>
>> To implement a slider you could calculate a percentage against the
>> Sequence's total duration.
>>
>> Does this address your questions? I'm happy to help you add these
>> features to the utils or, give it a shot and post your version!
>>
>> - moses
>>
>> PS: Go is naturally time-based. Do not use the useFrames option,
>> there is nothing simpler or more intuitive about it. It is a
>> specialty option that should be saved for special cases where you
>> have to process things in frames.
>>
>> PPS: Also be sure to take a look at the GoTestBase class included
>> (there's also a GoFlexTestBase). It sets up buttons that let you
>> perform all the play controls on a tween (see the included examples
>> in the com.mosesSupposes.go.tests package). When you run the line
>> super.addButtonUI(), the second param defines the skipTo() amount
>> for that test, and will appear on the button.
>>
>>
>>
>>
>>
>> On Apr 21, 2008, at 5:12 AM, Karsten Goetz wrote:
>>> Hi Coders,
>>>
>>> I like the idea to seperate into different tweens.
>>> I tried to do something like this a few weeks ago - but the work
>>> is not finished and has some bugs.
>>> I've submited them anyway to SVN in my package ( KarstenGoetz ).
>>> If you are interessted, have a look.
>>>
>>> I tried to set up some "interactive test", too ( not post to svn ).
>>> What I mean is some more complex animation that starts on
>>> mouseover, rewinds on mouseout and perhaps do
>>> some new animation on click from the given position... in other
>>> words, i played around.
>>> I don't have results from this session but some questions:
>>> - how would you arrange such an animation?
>>> - I sometimes miss a more timebased handling of tweening. We can
>>> play forward and skipTo - but what about rewind a tween and
>>> rewindTo?
>>> Imagine a slider, representing the animation time, you drag it and
>>> a tween, group or sequence would calculate the animation at this
>>> time.
>>>
>>> I get a bit confused about this things, so I want to ask you. For
>>> me LinearGo and PlayableGroup ( and Sequence ) are leaving the
>>> "lightweight"-zone ( I'm pointing here to the implementations of
>>> Repeater and useFrames - all absolutly nessesary, but I start to
>>> miss the basic thing... ).
>>> I think a basic Tween ( LinearGo, or maybe a new Class called
>>> TimeGo?;- ) should be more timeline-like. In my point of view it's
>>> not far away and I started to create some experients on that to
>>> try if its possible. I think it is - but is it a way? Maybe I'm
>>> totally wrong? Maybe I've missed some tools in Go that doing this
>>> stuff.
>>>
>>> Lots of greetings
>>>
>>> Karsten
>>>
>>>
>>>
>>>
>>>
>>>
>>> Am 17.04.2008 um 18:56 schrieb Moses Gunesch:
>>>> On Apr 17, 2008, at 10:41 AM, Tollman Owens wrote:
>>>>> I can only see the benefit of doing all of the extra
>>>>> functionality in
>>>>> external classes for legibility, because you are going to
>>>>> get the weight when you do the import, so being able to save
>>>>> file size
>>>>> is not really an issue, please correct me is i am wrong.
>>>>
>>>> It's not about legibility, it's about modularity.
>>>>
>>>> Think about it from an Object-Oriented and Open-Source Sharing
>>>> perspective: Whoever extends LinearGo with the best (simplest, most
>>>> coherent, most functional) set of basic tween classes will be
>>>> providing a bedrock foundation for everyone else.
>>>>
>>>> The most attractive set of basic tween classes put out by one of
>>>> you
>>>> should end up receiving a VERY high adoption rate, because this
>>>> set of
>>>> basic tween classes can be repurposed for ANY parser or more
>>>> complex
>>>> system. No one has so far realized this and picked up the gauntlet
>>>> but, I'm freely handing it to all of you for the taking. So go
>>>> ahead,
>>>> get famous if you want. ;-)
>>>>
>>>> Such a set is not included in GoASAP in order to maintain purity:
>>>> Go is a base system that doesn't propose any specific syntax, not
>>>> even
>>>> for tween classes, because there are so many approaches to that
>>>> interface.
>>>>
>>>>
>>>> A basic list of tweens might be something like this:
>>>> * A DisplayObject tween
>>>> * A generic any-object/ any-property multiple-value tween
>>>> * A generic any-object/ any-property multiple-value tween
>>>> * A ColorTransform tween (could subclass the multi-value tween)
>>>> * A BitmapFilter tween
>>>> (could be several of them since some filters are multi-value)
>>>> * A Bezier-arc tween
>>>>
>>>> Just my two cents.
>>>>
>>>> moses
>>>>
>>>> _______________________________________________
>>>> GoList mailing list
>>>> GoList at goasap.org
>>>> http://goasap.org/mailman/listinfo/golist_goasap.org
>>>
>>> ------------------------
>>> Karsten Goetz
>>> Flashprogrammierung
>>>
>>> Bernstorffstr. 120
>>> 22767 Hamburg
>>>
>>> Tel: +49 40 43 09 91 07
>>> Mobil: 0173 57 14 984
>>>
>>>
>>>
>>> _______________________________________________
>>> GoList mailing list
>>> GoList at goasap.org
>>> http://goasap.org/mailman/listinfo/golist_goasap.org
>>
>> _______________________________________________
>> GoList mailing list
>> GoList at goasap.org
>> http://goasap.org/mailman/listinfo/golist_goasap.org
>
> ------------------------
> Karsten Goetz
> Flashprogrammierung
>
> Bernstorffstr. 120
> 22767 Hamburg
>
> Tel: +49 40 43 09 91 07
> Mobil: 0173 57 14 984
>
>
>
> _______________________________________________
> GoList mailing list
> GoList at goasap.org
> http://goasap.org/mailman/listinfo/golist_goasap.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://goasap.org/pipermail/golist_goasap.org/attachments/20080421/da23681a/attachment-0001.html
More information about the GoList
mailing list