Let's talk about the horrendous input lag in Chrome

Discussion and feedback on Construct 2

Post » Tue Dec 23, 2014 1:04 am

Yeah, Firefox is totally fine.

What @Aurel said is basically the situation as I'm seeing it too. 60fps+, everything works great. But, as soon as we start to dip below that, things start going haywire. Things like livestreams, recording etc (especially with no GPU support) can cause lots of games to dip fps, and C2 games suffer horribly. Look up any YT video of Airscape and it's just terrible. I can barely even bear to watch recordings of Airscape anymore!
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

Post » Tue Dec 23, 2014 1:16 am

@aurel
@sqiddster

I was more asking about not the input lag, but the general feel of the game with out-of-sync or variable framerate ( aka framerate drops) under firefox (terrible under chrome, definitely).

since if we can find at least one browser engine where the situation is not terribly wrong, that will give more weight to the argument itself!
Game design is all about decomposing the core of your game so it becomes simple instructions.
B
53
S
22
G
18
Posts: 2,122
Reputation: 17,123

Post » Tue Dec 23, 2014 4:28 am

Am I the only one who finds Firefox unusable due to random, severe lagging/janking? I'm not talking about a little here and there, I'm talking about terrible stop/starting and dt varience, even with relatively simple projects.

I see the input lag in Canary. At first I wasn't, even with my 'torture test', a bullet hell shooter with > 2000 objects onscreen and a couple webGL shaders. No lag, 60fps, on my lowly HD4000.

However...my project resolution is low. Like, 800x600. Scaled it up by 2x, and lo and behold, there is the input lag. Plus, janking and jerking...things look terrible even at 40-50fps.

Tried in IE11. Surprisingly...it still looked pretty bad below 60fps. However, there was no input lag. Scaling the window down, everything is smooth again.
Don't lose your work. Backup your game with Dropbox.
B
44
S
10
G
10
Posts: 1,106
Reputation: 9,202

Post » Tue Dec 23, 2014 6:57 am

Yes, all these issues definitely have one major thing in common: window size (or, more accurately, GPU fillrate).
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

Post » Tue Dec 23, 2014 2:25 pm

@sqiddster so you mean they are directly affected to the number of pixels to draw on screen for each frame, or to the total surface of the viewport?
Game design is all about decomposing the core of your game so it becomes simple instructions.
B
53
S
22
G
18
Posts: 2,122
Reputation: 17,123

Post » Tue Dec 23, 2014 4:39 pm

You need to be able to identify which system setups are affected and submit bugs to Google with minimal demos that reproduce the problem. The Chrome GPU team are always making tweaks to try to make the best tradeoff between rendering and input latency, and I've seen they've just introduced a new RendererScheduler to Canary which may affect this, so it seems to be a work in progress still. However giving real-world examples to the Chrome team should give them something to test their changes against.

I think the best way to measure input latency is with a stopwatch :P it's hard to automate this kind of thing since it's a long chain through the system and code will only see it's stage in the chain.

Firefox Nightly is way improved for me here so that may be worth looking at.
Scirra Founder
B
399
S
236
G
89
Posts: 24,525
Reputation: 195,382

Post » Tue Dec 23, 2014 6:51 pm

Minimal capx are very effective to find bugs, but sadly they do not show the problem at its maximum for jerkyness, input lag or missed cols problems.
I know a full game(*) is absolutely useless for debug purpose, but sometimes I wish the Chrome team could see what it looks like on a full game project. The more things on screen, the more you can see the problems. For example, when I was using a previous Chrome version, my game wasn't just flawed, but really unplayable. And the same goes for Airscape. The minimum capx looked pretty ok in comparaison.

Anyway, I'm still in absolute love with C2, but the situation is so frustrating!
you can craft awesome games with C2, but if the framerate reaches 50 fps, your game will look like crap for sure.
The only solution for a few months is to make less impressive effects and hope for weak hardwares to run the game at a rock solid 60fps.
And forget about livestream / youtubers to like your game. And people watching them to decide if they'll buy it or not.
This time we can't use the "hey, let's bug Ashley with this! I'm sure he'll fix this in a week" magic card, we all know you can't do nothing for these issues.
I deeply hope this situation won't last for more weeks or months, I couldn't imagine to make another professional game this way.


(*) full game = more lively than sbperftest, which is alreeady great and has many sprites and particles, but no fullscreen scrolling backgrounds with parrallax layers or transparent elements for example. While screens become bigger and bigger (some are already getting 4k laptops for christmas), the GPU related problems will only be more important to handle.
Image | @AurelRegard on twitter
B
19
S
6
G
1
Posts: 307
Reputation: 2,500

Post » Tue Dec 23, 2014 11:06 pm

Aurel wrote:And forget about livestream / youtubers to like your game. And people watching them to decide if they'll buy it or not.


I find that streaming or capturing gameplay on later Chrome (or NW 11.x) is a stuttery mess, completely unplayable and game-breaking. BUT! Doing it running the NW 10.5 export works just fine.

Are you guys having these stutters and input lag in NW 10.5 too or just limited to Chrome 38+ & NW 11.x?
B
70
S
24
G
19
Posts: 1,757
Reputation: 17,616

Post » Tue Dec 23, 2014 11:55 pm

It's situations like this that make me shy away from big developments in C2 - I spend all of my dev time making mobile games, so funnily enough this never really effects me as my games are minimalist from the ground up.

Is this entirely a browser problem though? IIRC C2 crippled itself when the 30FPS cap option was put in, was that somehow related to what's going on now? I ask from a position of childlike ignorance.

Happy holidays!
B
62
S
22
G
10
Posts: 647
Reputation: 10,478

Post » Wed Dec 24, 2014 12:19 am

@Silverforce I find that the problems with streaming/recording are just an extension of the problems at large, e.g. fillrate limitations. Basically, when recording, the game is more likely to dip below 60fps, even on a very good machine. Even my high-end gaming laptop can barely run the game at 60fps and record at the same time (and that's *after* going through the shenanigans with the NVIDIA Control Panel to get the game to even use the GPU!)

These stutters/input lag have always happened afaik. I think it's a separate issue from the janking that's happening in later Chrome versions. Honestly, I don't even notice the janking amidst these other issues!


My question is: where do we go from here? I can't in good conscience release a game in this state. It's clear that minimal repros don't show the problems as effectively as 'real games'.

Maybe what we need to do is take some time to figure out exactly what it is in full games that makes the performance so bad. WebGL shaders was my #1 suspect, but disabling all the shaders in the game actually didn't have too much of an effect.

In 3 years using Construct 2, it seems like it's been constant battling with browser and wrapper developers. HTML5 is great, but we're entirely at the mercy of faceless megacorporations, usually with games not even being a priority for them. This makes professional development hugely frustrating. I can't commit to a release window because I have no idea when these bugs will be fixed. I can't commit to release on certain platforms (linux) due to some sort of driver issues.
The game is supposed to release in a few months but I'm afraid that eventually I'm going to have to delay it. Ignoring the fact that performance sucks for a lot of players, looking bad on youtube/livestreams is the worst thing a game can do, marketing-wise.
B
92
S
31
G
24
Posts: 3,191
Reputation: 32,699

PreviousNext

Return to Construct 2 General

Who is online

Users browsing this forum: No registered users and 4 guests