0 Favourites

Let's talk about the horrendous input lag in Chrome

  • 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 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.

  • 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.

  • 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?

  • 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!

  • 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.

  • Is it related with creating/destroying objects? I remember noticing stuttering/etc in one of my projects when multiple objects were created and/or destroyed within a short timeframe.

  • No, it's nothing to do with the logic side of things, because it's purely based on window size.

  • Just saw this post in another topic.

    At this point in time there are 3 main reasons games don't get to run buttery smooth (as far as I'm aware):

    1) GPU blacklisting: although this is becoming less serious over time as old devices die out, it's still not too hard to find old Windows systems or old Android phones where the GPU is buggy and prone to crashing, so the browser falls back to software rendering.

    2) Synchronous Javascript compilation. While most JS engines compile code concurrently, apparently they still have some key points which still run synchronously, so block the game while it does whatever it needs to do. I think this only affects mobile, since most desktops are simply fast enough to do that work in <16ms and not drop a frame. Javascript engine improvements should resolve this, we have open bugs with browser vendors for this type of issue.

    3) V-sync quality. This is a passing issue in Chrome (the Chromium team is aware of it and are working to fix it) and Firefox (which to me looks already fixed in Nightly), and is made worse by the fact the latest node-webkit is based on Chromium 38 which has the bug. This will be fixed in due course as subsequent Chromium and node-webkit updates come through.

    This issue definitely doesn't fit in any one of these categories. I don't think this is related to the v-sync issue at all, since these issues definitely happened in Chrome 38 and before that as well.

  • sqiddster

    You are right, if capturing gameplay cause extra stutters then its going to kill your indie game due to how popular youtube reviews or livestream form the basis of grassroots marketing for indies.

    But these stutters or input lag is definitely not present awhile ago in my own games, I only noticed it when I updated C2 and Chrome itself to newer versions. With NW 10.5 or Chrome prior to 38, it feels really smooth. With NW 11.x or Chrome 38+, I definitely see all the delays, stutter etc that you guys are talking about.

    As I posted in another thread, I was previewing Star Nomad 2 for my nephews last week, its the first time they seen it, 5s into it, they both claimed "something's wrong, why is it so laggy"...

  • I've definitely been experiencing these stutters and latency since well before Chrome 38. Aurel Aphrodite can you confirm?

  • I can confirm that when the window size was bigger than the window size parameter, I could see it (never reported it as I though it was really just my computer since nobody talked about that a lot in the past, not sure if the ratio between the real window size and the specified one is the culprit, or directly the real'size itself)

    however, with no scrolling actions, it is not as visible

  • Wow, I don't read these forums much any more as I have mostly moved onto other engines, but it is very sad to hear the current state of affairs, as I still have a lot of love for C2. When you have 2 of your most high profile users (Aurel and Squiddster) nervous about releasing their games, Scirra really needs to have a rethink about the direction of the product.

    I realise that native exports have been a hot topic forever on these forums, but I really think that C2 needs to be spawned off into another product that caters for this. Keep the HTML5 version but spin off the IDE into another that does exports using something something like Haxe or SFML. Yes, this will require a rewrite, but surely Scirra must be making some decent coin these days with the thousand of users and can afford to hire an extra dev or 2. The IDE and solid workflow is already established , but the exporters must be made a priority, even if it takes a year of rewrites. HTML5 is just not the ideal format yet, unless the web is your final destination, and even then it can be iffy at times.

    Competing products Stencyl and GDevelop are both from solo devs, and have managed both native and web exports, so I can't believe Scirra could not pull this off. Hopefully there is a rethink in 2015! Oh, and Merry Christmas to the excellent Scirra community

  • I've definitely been experiencing these stutters and latency since well before Chrome 38. Aurel Aphrodite can you confirm?

    I had things stuttering like year and two years ago already.

  • > I've definitely been experiencing these stutters and latency since well before Chrome 38. Aurel Aphrodite can you confirm?

    >

    I had things stuttering like year and two years ago already.

    Possibly due to nVidia disabling some of their GPU when detecting browsers, defaulting to the Intel HD graphics? I saw it was a known glitch. I didn't have such issues because I've been using AMD graphics for the past few years.

  • Construct 3

    Buy Construct 3

    Develop games in your browser. Powerful, performant & highly capable.

    Buy Now Construct 3 users don't see these ads
  • >

    > > I've definitely been experiencing these stutters and latency since well before Chrome 38. Aurel Aphrodite can you confirm?

    > >

    >

    > I had things stuttering like year and two years ago already.

    >

    Possibly due to nVidia disabling some of their GPU when detecting browsers, defaulting to the Intel HD graphics? I saw it was a known glitch. I didn't have such issues because I've been using AMD graphics for the past few years.

    It was in node webkit. I have i5 sandy bridge and back then had gtx 560.

Jump to:
Active Users
There are 1 visitors browsing this topic (0 users and 1 guests)