Jump to content
Search Community

Popmotion vs Velocity.js vs Greensock feature comparison

ice-frog test
Moderator Tag

Warning: Please note

This thread was started before GSAP 3 was released. Some information, especially the syntax, may be out of date for GSAP 3. Please see the GSAP 3 migration guide and release notes for more information about how to update the code to GSAP 3's syntax. 

Recommended Posts

Thanks for letting us know, ice-frog. Yeah, it looks like those guys have packed some nice features into Popmotion and I applaud their efforts but the "feature comparison" has a bunch of inaccuracies and of course it's designed to make Popmotion look great (I certainly can't blame them for that!)

 

We really try to stay out of arguments about things like this. We don't want to diminish the efforts of the author(s) who obviously put a lot of thought into their craft, but we're quite confident that GSAP stacks up much more favorably than that chart communicates. It's tough for me not to jump in and offer a comparison of my own (I'd have a TON to talk about), but that's not ultimately productive and it risks being perceived as insulting their work which I certainly don't want to do. 

 

We see things like this pop up every so often with the aim of dethroning GSAP (which is widely acknowledged as an industry standard), but typically they fade away as the community hammers away on things and gravitates toward solutions that deliver what they want most. We just keep our heads down and keep trying to support and innovate (as evidenced by the recent MorphSVGPlugin announcement). 

 

Feel free to try Popmotion out and let us know if there's anything in particular that you'd like us to improve in GSAP. We're always striving to get better. 

  • Like 6
Link to comment
Share on other sites

Hey Jack and Ice-Frog. I just saw this in my referrals and thought I'd jump in and clear some stuff up.

The feature comparison is accurate to the best of my knowledge. It has of course been designed to make Popmotion look great, mostly because I've hammered away on it for two years and think that, while not without its shortcomings, I hope it is great! Or at least one day will be.

I treat animation equally with the physics and input tracking, which is why I'm making the most of those aspects and from a Greensock point of view it would be easy to look at that table and think "well that's just physics! Why does that get like 5 ticks!" Which is fair enough but it is a first class citizen in Popmotion.

 

The Timeline aspect of Greensock makes it incredibly powerful, moreso than Popmotion, for animations. We're trying to make an UI-focused framework and Greensock can power much more intricate animations. I haven't stress-tested it either, but I would put good money on Greensock out-performing Popmotion in a stress-test. I know it's always been a core tenant of TweenMax (I used it back in the flash days!) and while we strive to be performant, we don't strive to be used as a 1000x particle generator or anything like that, which I bet Greensock could be.

 

If there's anything specific that we've got wrong, or some features you think deserve a slot on that table (MorphSVG is definitely getting one, like I said on Twitter, "woah") you can let me know here, or on Twitter, or to my email, whatever, and I'll happily amend the table because I haven't purposefully misrepresented either framework. Either way we're going to see the two diverge further as time goes on (which is why the table resembles a venn diagram with certain features) and I won't need stuff like this to explain the framework to people.

 

Thanks!

  • Like 3
Link to comment
Share on other sites

Thanks for chiming in, Sir hound! I appreciate the professionalism and kindness. It's also nice to hear from a fellow ex-Flash animation geek. :)

 

I'm sure you didn't intentionally skew anything on that chart. Sorry if my initial comment sounded accusatory - I didn't intend that at all. GSAP is a very rich system and it can be hard to know about all the features and functionality. No problem at all. Heck, even some of our top experts in these forums get pleasantly surprised by some little gems they never knew were tucked in there. 

 

Like I said, we really try not to get defensive or argumentative when another library comes out and claims to be "better" than GSAP in various ways. It's not critical to us that you change your chart, but since you asked I guess I'll mention a few things specific to that chart: 

  1. There is some support for AMD and CommonJS. I don't claim to be an expert on those, but I know plenty of people use GSAP with AMD/CommonJS and there's code in GSAP specifically for compatibility with those. It's not perfect/ideal integration yet, but there is definitely support (unless I'm totally misunderstanding something).
  2. Custom easing is available - in fact Blake (who chimed in above) authored one such solution. 
  3. TweenLite offers full seek() support
  4. You can stagger tweens in TweenLite even though there's not a specific stagger method. At the very least, you can use TimelineLite or TimelineMax to do that, both of which have stagger methods.
  5. I'm not even sure what "custom inputs" means, but GSAP can accept just about anything :)
  6. TweenMax does offer "Value property functions" in the stagger methods (we call it "cycle")
  7. You can track the velocity of any property using ThrowPropsPlugin.

And if it were up to me, there would be a lot of other features in that chart, but I totally understand that the goal is to highlight Popmotion's strengths (and maybe accentuate perceived weaknesses in the competition). I don't blame you at all, and I'd probably do exactly the same thing if I were you :) It'd be weird to have a super-long chart on your web site that may dilute the attactiveness of Popmotion.

 

Again, my hat's off to you for your hard work on Popmotion and your professionalism/kindness in your response here in our forums. We wish you nothing but the best. 

  • Like 4
Link to comment
Share on other sites

Thanks for this Jack - I did my best to scour the docs for some of this so I've clearly missed a few. I'll sort those out first thing tomorrow.

 

To be clear the CommonJS support is more like, can I run this module without polluting the global namespace? As far as I understand it there'll always be some globals with Greensock?

 

And the custom inputs, well my next tutorial will be about that but basically you can wrap any data source up as if it were a mouse-like device and have any value react to those inputs. For example it's relatively trivial to move stuff from a Leap Motion or WebSockets data feed.

 

Anyway it's bed for me, thanks for clarifying some stuff for me here!

  • Like 1
Link to comment
Share on other sites

Just tipping my hat to all of you guys. Being a former ES4 AS3 coder, this is the best discussion of "competitors" I have seen on the Net among Flash brothers. It has filled my heart with genuine warmth.

 

So I will have a look at Popmotion, though I am in love with GSAP.

  • Like 2
Link to comment
Share on other sites

  • 6 months later...

A 12kb Javascript motion engine. Use for animation, physics and input tracking.

http://popmotion.io

 

Popmotion vs Velocity.js vs Greensock feature comparison:

http://popmotion.io/guides/feature-comparison

Hi @ice-frog.

I'm making (originally forking from tween.js, GitHub) and improving for modern web, but never i can't will be as GSAP, here i write some pros/cons. Sorry for bad english.

 

GSAP:

[PROS]

* Accurate timer in the all of tweening engine

* Easier syntax

* Higher performance, no any tweening engine match GSAP performance ( even me )

* Lower System Resource / Reduced, almost no Garbage Collection / Very low Memory Usage ( test yourself )

* Limitless feature such as MorphSVG, DrawSVG, Physics

* Amazing cross-browser and cross-device support

* And more and more

[CONS]

* It's not cons, but some plug-ins requires Club Member, as i mention, "In life nothing free"

 

Popmotion

[PROS]

* Good performance

* Many features

* IE9+ works fine, but for Android 2.3.3, 2.3.6 doesn't work properly

* And more and more

 

[CONS]

* Long syntax codes

* Sometime FPS drops

* In demos used not a real javascript language as not worked on my PC when tested with Notepad++ ( Need fix )

* Timing goes wrong when tab re-focus

 

I think it's enough, so thanks for reading. Let me know if i wrong

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...