Jank is... back / was never fixed / my hardware problem?

Discussion and feedback on Construct 2

Post » Thu Oct 01, 2015 11:16 pm

There are a couple of problems here....

I created a scene camera pan effect in Umbra and was so disappointed by the gross apparent jank that I decided to do some testing to see what might be the cause. I therefore created a test that simply scrolls a camera around a large layout (8000 x 8000) using lerp. It's a terrible camera action, but I think it highlights a real problem. I'm posting this to see if any javascript gurus might be able to shed light on why the jank is happening (if it's not a c2 problem) and/or offer suggestions for a next move (c2 bug report / chrome bug report etc). If there was no jank in Firefox and/or Edge then I would not be inclined to look towards the c2 engine as being a factor in the problem. However, all of my browsers show frequent dropped frames.

Here's a link to the html5 demo. Run this and test your browser if you wish. HTML5 Link

If you'd like to tinker with the capx then here you go. My original plan was to fade in/out a "jank" indicator every time the dt exceeded the normal time, but it never worked in Chrome (see below): jank capx

This simple test moves the camera lerp target every second, then the camera lerps onwards over a seamless tiled background.

I see two problems here:

1. There is lots of apparent jank, as discussed. This is confirmed by plenty of dropped frames being recorded in the javascript console. This is possibly the simplest action "game" I could ever make... yet jank is apparent on all of my browsers (both versions of Chrome, Firefox & Edge).

2. In Chrome (release AND Canary) the FPS and dt are both reported in the demo as fixed and unchanging, yet in the javascript console there are plenty of dropped frames. This seems like a Chrome bug.

Of note, when I tried to open the javascript console in Chrome release it just froze on me when I tried to record the timeline. Looks like Chrome has some issues....

My system spec: AMD A10-5800 with NVIDIA GeForce GTX 750 Ti. The same happens on my old wheezy i5 laptop as well.... Anyone any thoughts?

Edit - update with a non-subtle Jank indicator (does not work in Chrome).

Edit 2 - Further testing has shown that Edge is really quite good, with minimal jank / dropped frames.
Last edited by Colludium on Fri Oct 02, 2015 2:09 am, edited 2 times in total.
A big fan of JavaScript.
B
74
S
20
G
69
Posts: 2,205
Reputation: 43,832

Post » Fri Oct 02, 2015 12:01 am

On my tests fps and dt looks stable in the demo. In Firefox console fps drops are visible (having max 60, min 50.36) in chrome the lowest I noticed is min 46 fps.
and besides that the fast moving screen in the demo is also not the greatest, it's visible that something is going on, micro pauses every few seconds.

(Intel i7-3770K 3.5Ghz, 32GB ram and Nvidia GTX 780, win 8.1)
ImageImageImageImage
B
157
S
66
G
41
Posts: 2,598
Reputation: 34,823

Post » Fri Oct 02, 2015 12:17 am

Hi @shinkan, I can only show a shot of Chrome Canary:

Image

Here's Firefox. The red splodge is where I cut the image by a 4 seconds (a smattering of <60 fps but nothing significant like the big drops at approx 10000 ms):
Image

Running all versions this time, it appears that Edge was actually very good, and so was IE in W10. Both had almost zero frame drops when the javascript consoles were not running.
A big fan of JavaScript.
B
74
S
20
G
69
Posts: 2,205
Reputation: 43,832

Post » Fri Oct 02, 2015 12:21 am

Hey Colludium.

First I tried with an ipad2. Perfectly smooth right from the start (may have dropped to 59 fps at one point but didn't cause it to jank).

Next on the desktop, loaded it up in chrome and surprisingly - for the first 10 seconds or so it was pretty janky - then perfectly smooth (of note, every time I load it up again in chrome now it is perfectly smooth from start to finish). Tried in firefox, jank for about 2 seconds then perfectly smooth (same story subsequent attempts are perfectly smooth from the start). Not sure what that is about.

Will try again with a couple more devices later and update.

(old i7, gtx 660)
Last edited by GenkiGenga on Fri Oct 02, 2015 12:25 am, edited 1 time in total.
ImageImage
B
118
S
23
G
7
Posts: 1,070
Reputation: 12,964

Post » Fri Oct 02, 2015 12:23 am

@GenkiGenga - I tried it on my Nexus 5 and it was flawless as well.... :shock:
A big fan of JavaScript.
B
74
S
20
G
69
Posts: 2,205
Reputation: 43,832

Post » Fri Oct 02, 2015 12:29 am

That is quite drastic. It never went that far for me.
ImageImageImageImage
B
157
S
66
G
41
Posts: 2,598
Reputation: 34,823

Post » Fri Oct 02, 2015 12:33 am

@shinkan / @Genkigenga,

Do you guys find that the dt / fps indications are also frozen in Chrome? Or is it just my hardware that's causing some weird glitch?

Thanks.
A big fan of JavaScript.
B
74
S
20
G
69
Posts: 2,205
Reputation: 43,832

Post » Fri Oct 02, 2015 12:36 am

Nope. Both works fine over here.
ImageImageImageImage
B
157
S
66
G
41
Posts: 2,598
Reputation: 34,823

Post » Fri Oct 02, 2015 12:37 am

:/
A big fan of JavaScript.
B
74
S
20
G
69
Posts: 2,205
Reputation: 43,832

Post » Fri Oct 02, 2015 12:48 am

That was on a fresh startup so there might have been a couple of things still going on in the background to slow it down. I can definitely see the dt moving around (ranging from about 0.016500 to 0.01700).

Just cleared the cache and tried again and it was smooth from the start now in chrome. Do you possibly have other things running in the background that are taking up too much of your resources perhaps? Maybe that would explain it.
ImageImage
B
118
S
23
G
7
Posts: 1,070
Reputation: 12,964

Next

Return to Construct 2 General

Who is online

Users browsing this forum: ugurtufekci, Wink and 10 guests