• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
0

Horizontal Crawler moves vertically and jerks

Explorer ,
Jan 01, 2018 Jan 01, 2018

Copy link to clipboard

Copied

https://www.dropbox.com/s/x0pgjlti4pxym7v/CANVAS.zip?dl=0

I cannot express how ridiculous the end of Adobe Edge Animate is.

I have several animations that I created in Edge that cannot be duplicated in

This pathetic Adobe Animate CC program.

I have often made crawlers that sweep from side to side like a panoramic

Or a set of images. Animate CC cannot export this in canvas to move smoothly

Or to move even in the correct direction.

Screen Shot 2018-01-01 at 11.04.30 PM.png

This is supposed to sweep horizontally, yet whenever I export this to any of the

Jerky inferior formats that Animate CC offers, it tries to move vertically.

See the flawlessly smooth movement that Edge Animate provided here:

http://thebootshack.com

I have uploaded the source files and exports to a dropbox.

If anyone who is expert in this Animate CC would be willing to download and

Examine the files to offer any suggestions how to make this program

Function like Edge Animate did I would appreciate any input you can provide.

Note, it previews very very jerky in Animate CC

But fails to move properly in OAM or HTM5 Canvas.

Views

1.4K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines

correct answers 1 Correct answer

LEGEND , Jan 04, 2018 Jan 04, 2018

I'm not questioning your solutions to the problem, I'm just saying that using Classic Tweens with no custom easing, will give smooth 60 fps animation without needing any code solutions.

Votes

Translate

Translate
Community Expert ,
Jan 02, 2018 Jan 02, 2018

Copy link to clipboard

Copied

You are using two different symbols in your animation.

In the first frame, you are using a Movie Clip called "Symbol 1" in the Library. In frame 2, you are using a Graphic called "Tween 1" in the Library. Both have different registration points.

One thing you can do is to set both keyframes to use either "Symbol 1" or "Tween 1". In this way, the registration and transformation points will be in the same place and the tweening will behave like you expect it to.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Adobe Employee ,
Jan 02, 2018 Jan 02, 2018

Copy link to clipboard

Copied

Hi Barry,

There were a couple of issues in your file:

1. The two ends of your classic tween had two different symbols. This was causing the entire x-axis movement to ignore.

You should remove the tween, remove the symbol at the end frame then place the same symbol used in first frame on the last frame as well and position it as desired. Now apply classic tween again.

2. The jerkiness can be overcome by increasing the FPS to 60 after enabling the below checkbox in Properties panel. This will maintain the original animation timing even with the increased fps.

                                  

Let me know if you still face issues.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 02, 2018 Jan 02, 2018

Copy link to clipboard

Copied

Dropbox - CANVAS60FPS.zip

Thank you so much for your help, it is improving,

however the quality of the animation is extremely poor and still appears to pause and jerk a bit.

Is there a quality setting that I am missing in the publish settings?

See the link in the initial post the website that the Adobe Edge Animate file plays so well in compared to this.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Jan 02, 2018 Jan 02, 2018

Copy link to clipboard

Copied

Animate Canvas converts animated content into Javascript Tweens.

In chrome, inspect the page, and then go to performance and enable CPU throttling, you will see the current animation becomes really bad!

So, if you want the animation to be perfect, you will need to use javascript and a ticker timer (with an "accumulator" if your worried about performance hits) to ensure consistent playback.

Also, use Classic Tweens where possible, the animation to tween conversion is lighter.

(For your example, classic tween uses the start and the end location to move the object. Motion tween is similar but breaks the motion up into smaller 5 frame chunks with positions)

Regards,

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Jan 03, 2018 Jan 03, 2018

Copy link to clipboard

Copied

Albert talked about a different problem, which is how to keep things going in real time. Your issue is that you have used Motion Tweens. Those convert to the worst possible performing tween. Change to using Classic Tweens, and also only use presets, with a strength of -100 to +100. Don't do a custom Ease tween, it will then go back to performing very poorly.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Jan 03, 2018 Jan 03, 2018

Copy link to clipboard

Copied

Colin, unfortunately not, its a known problem with standard javascript libraries (as Animate exports) and choppy animations in HTML5.

Animate uses the createJS libraries for its animations (When using canvas).

As said above, Clasic tween is less intensive, as it uses a start and then end point to move the object, with the "new" motion tween, it breaks the movement up into a series of multiple tween functions, this will have a greater impact on perfomance.

You have three options, Animate Optimisation or CSS scrolling or  External libraries  that are optemised for animation:

Animate Optemisation: ( Using animate as is, but optimising your banner with code to work )

White Paper: HTML5 Banner Ads With CreateJS

CSS Option: ( Animations and transitions are applied directly to a style sheet, instead of manually applying values on each frame like you would in JavaScript, CSS defines rules that the browser will implement to render the animation.)

Infinite All-CSS Scrolling Slideshow | CSS-Tricks

HTML Marquee Image

CSS Scrolling Image

External Library Option: ( These have fallbacks and specific optemisations to enable smooth javascript animations:)

GSAP, the standard for JavaScript HTML5 animation | GreenSock

https://webdesign.tutsplus.com/tutorials/silky-smooth-web-animation-with-velocityjs--cms-24266

Here are some examples using said opetmised animations:

Animated Background Headers | Codrops

Regards:

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Jan 03, 2018 Jan 03, 2018

Copy link to clipboard

Copied

Here is something similar, vtgaming 1 created some nice examples of frame rates, and multiple tween types.

How to get smooth animation ? ("translate" animation instead of "top-left" value animation)

There is still "jiggy" motion on both examples when performance drops (As its using tweenJS as its frame rate dependent), just less noticeable on 30fps.

just.emma noted that if you use code its better, remember, all animations automatically get converted to code on HTML5 export.

EDIT:
The simplest way is to change it to a time based animation:

EaselJS Tutorial: Animation and Ticker

from your example using motion tween: ( the tween has multiple position entries with pause states, this is why it is more intensive)

this.timeline.addTween(cjs.Tween.get(this.instance).wait(1).to({x:2316.5},0).wait(1).to({x:2311.9},0)..........the list goes on for a very long time.

now using classic tween:

this.timeline.addTween(cjs.Tween.get(this.instance).to({x:-1417},506).wait(1));

In the website example you included, the banner is controlled with CSS hence the smooth motion.

Regards.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
LEGEND ,
Jan 04, 2018 Jan 04, 2018

Copy link to clipboard

Copied

LATEST

I'm not questioning your solutions to the problem, I'm just saying that using Classic Tweens with no custom easing, will give smooth 60 fps animation without needing any code solutions.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines