Ashley's Recent Forum Activity

  • OK, so I checked our code logs, and last year we had a bad bug with WebGL 2 causing blank screens on Android devices with WebGL 2+. At the time we had some really ugly workaround code. So when the fix in Chrome 75+ came out, we deleted the workaround code. However the fact that there seem to be loads of out-of-date Android WebViews out there - the reasons for which are still a complete mystery to me - means we probably need to keep that workaround indefinitely, so apps on old Android devices don't still suffer the bug.

    This probably explains at least some of the "blank screen" cases, and everything adds up with the Samsung Note 3 SN900: a Mali GPU device that had an issue with v71 which was fixed in v75 and works in v80.

    To make sure that's fixed, I've added in (slightly cleaner) workaround code for the next stable release: any Android device using Chrome v75 or older will disable WebGL 2. This shouldn't affect any device with up-to-date software, but will stop devices with out-of-date software running in to the WebGL 2 bug.

    If you see a "Software update needed" message, that means the WebView is really old (3 years old or more). As to why that happens... 🤷‍♂️ The message does include instructions to update though, which should fix it.

    To downgrade the project to the C2 runtime you may well need to make a range of changes to your project. You'll have change everything it identified if you want to take that route.

    WebView 3.3.5.

    No such WebView version ever existed, so this must be a mistake. Do you know what the correct version is? The Huawei Y9 2019 has a Mali GPU as well, so assuming its WebView version is older than 75, could be the same issue if you saw a blank screen, but since we're talking about multiple issues here, you need to make sure you're clear about how it's not working. Did you see the "Software update needed" screen, a blank screen, or something else?

  • We're going in circles here. If you set too low a latency, then you hear audio glitches instead, which is worse. So that is not a solution; it's something that works sometimes, only by chance.

    As far as I gather, the situation is that there are three classes of devices:

    1) Devices supporting low-latency audio and they say they support low-latency audio. These work fine.

    2) Devices supporting low-latency audio that don't say they support low-latency audio. These have high latency, but could have low latency if the latency is manually reduced.

    3) Devices which don't support low-latency audio and don't say they support low-latency audio. These have high latency and there is nothing that can be done about it. Manually reducing the latency will result in audio glitches.

    The only opportunity for improvement is with type 2. However these devices are lying about their capabilities, and that's the real root cause of the problem here. How do you tell them apart from type 3? I don't see any easy way to do that at all. It seems like a really hard problem. Both type 2 and type 3 say they don't support low-latency audio, and if you mix them up, type 3 will start having audio glitches.

    You can just leave it up to the user to configure the latency themselves, but most users won't bother, and they can also misconfigure it themselves, such as taking a type 1 device that works fine, and then breaking it.

    I don't see any good path to take here: the real problem is Android manufacturers misconfiguring their devices. But it is too late for devices already released. And adding user-configurable settings results in equal or worse problems.

    And even if the issue for type 2 devices is somehow fixed, there will still be type 3 devices out there with high latency, and there's nothing that can be done for them. So Android devices with high latency will continue to exist, even if the Chrome issue is fixed.

  • There are already several, take a look in the Start Page.

  • 1. Yes, the editor works offline.

    2. The addon developer needs to have published an update for C3. Most actively developed addons should have already been ported. If the addon is no longer actively developed, unfortunately this is one of the possible consequencies of relying on third parties to support your game. There may well be an alternative addon available though, or the many new features in C3 may provide built-in support for it instead.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • Hmm, just thinking - the device you updated from v71 to v80 and started working - what model device is that?

    If it has a Mali GPU, this might be an old WebGL 2 bug that was fixed, but might still be affecting old devices with out-of-date software.

  • I think in the short term, the pragmatic thing to do if you just need it to work now is to downgrade the project to the C2 runtime and publish with that. It supports older browsers so should keep working even on devices that are missing years of software updates. The C2 runtime is scheduled to be removed in July 2021, but you can keep using it anyway for the time being.

    In the mean time I do want to figure out what is going on here. It's possible there's a problem with Construct, but it could equally be something else like a driver bug on certain devices. I think the best next step to diagnose the problem would be to find an old device, connect it up with USB debugging, and check for any errors being logged to the browser console. The tutorial checking for errors in browsers has some info on that. It could also involve several different problems, so you may need to repeat this a few times and see what's going on in each case.

  • If you think it's a bug please file an issue following all the guidelines - we need all that information to be able to help: https://github.com/Scirra/Construct-3-bugs

  • Some things don't support breakpoints, so pressing F3 won't add a breakpoint for them.

  • The scripting feature is fully documented in the manual.

    Mirroring an object just means setting a negative width.

  • That message will not appear for any browser released in the past decade or so, so it's pretty much irrelevant now. Besides since C2 is now on track for retirement, only critical issues will be fixed from now on.

  • In practice 90%+ of users won't change the default. You'll either get complaints about latency, or complaints that the audio is glitching, depending on which default you choose. There isn't a good way to get it to work by default right now - I think the best thing to do is to wait and see if Google can fix it first.

  • There is no message, I was just saying it would be good to have the possibility to add a warning message with a link to update if WebView is out of date.

    When the WebView is out of date, it does show a message. It says "Software update needed" with instructions.

    WebView version 71.0.3578.99 should be able to run C3 runtime games just fine.

    So I think we're back to square 1 - I doubt it's solely because of an old WebView version. There must be something else going on.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,450,764 followers

Connect with Ashley

Trophy Case

  • Jupiter Mission Supports Gordon's mission to Jupiter
  • Forum Contributor Made 100 posts in the forums
  • Forum Patron Made 500 posts in the forums
  • Forum Hero Made 1,000 posts in the forums
  • Forum Wizard Made 5,000 posts in the forums
  • Forum Unicorn Made 10,000 posts in the forums
  • Forum Mega Brain Made 20,000 posts in the forums
  • x109
    Coach One of your tutorials has over 1,000 readers
  • x64
    Educator One of your tutorials has over 10,000 readers
  • x3
    Teacher One of your tutorials has over 100,000 readers
  • Sensei One of your tutorials has over 1,000,000 readers
  • Regular Visitor Visited Construct.net 7 days in a row
  • Steady Visitor Visited Construct.net 30 days in a row
  • RTFM Read the fabulous manual
  • x36
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs