Feature: AnimationHandle Include & Chain accept time offset and prepend #134
Replies: 1 comment
-
@adgray1, I've been thinking about this as I'm porting our UI over and I'm seeing a pattern that may be worth capturing since y'all are looking at animation idioms. I'm also trying to think in terms of what would appeal to devs in the marketing materials... Most UI transitions deal with everything being in some (typically steady) state and then something happens that causes new sub views to appear, disappear, expand, or contract. What if changes to typically animated values (size, position, clip mask tint) could optionally be set (or modulated) with some time interval value an ease function enum ID? -- in contrast to detecting a size change or UI event, reading current state, and setting up animations from the start to end state. One might ask, what's so hard about using the current Nova animation system? I'd respond that what adds pain and complexity to most (good) animation code is the case where an animation is in progress and then another animation basically needs to replace it (e.g. a panel that is half retracted when it's told to extend again). As a result, Going down memory lane, iOS AppKit maintains two states of every UIView, one for the app to alter and the other internal which is what iOS actually uses to draw UIViews. It was used to firewall and manage UIView state changes from app-level UIView state and AppKit-level state, allowing iOS to pull off many animations for free (and without devs having to explicitly add animation everywhere--huge, right?). For example, if every UIBlock change carried with it a time transition duration, Nova could offer automated animation for 90% of use cases. Tell me automated animation isn't a killer feature -- and from what I can see, Nova has 95% of the internal infra already to pull it off. Some brainstorming and hopefully ideas for y'all anyway. :D |
Beta Was this translation helpful? Give feedback.
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
Hi friends,
This is probably already on y'alls list, but I thought I'd post it here for tracking and discussion.
Request that
AnimationHandleExtensions.Include
andChain
include an optional time offset parameter such as seen in popular tweening frameworks as well as prepend idioms where possible. For example, see the "Creating a Sequence" section in DOTween. As a minimum, adding anInterval
or equivalent is needed so that multiple animations can be orchestrated over time with each other.On a related note, one thing DOTween does great is making the invocation idioms as easy and tiny as possible. That's brought them a ton of success and adoption so I suspect folks considering Nova will be more won over if they see easy to use convenience functions. Syntactic sugar yes, but that makes a difference for junior devs deciding if they're going to try a framework or not (esp if what's already out there is lean and mean).
Just trying to help and keep up the great work! :D
Beta Was this translation helpful? Give feedback.
All reactions