Ashley's Recent Forum Activity

  • I'm afraid to me that looks a lot like a graphics driver issue. Inconsistent glitches that only occur on some devices are often caused by driver issues. Unfortunately the state of graphics drivers has always been poor, all through my carrer, and it's a constant problem for the industry, including being responsible for ruining the launch of major titles. It's not an issue specific to Construct, it's an issue with all computer graphics really.

    One workaround may be to switch the project back to WebGL if WebGPU is enabled, which you can do in Project Properties. Perhaps the older renderer technology is more consistent, especially on older devices.

    In some cases it's possible for us to work around driver issues in Construct itself, but we need detailed information from affected users to be able to do that. If you can get a few users who see the glitches to get this information and share it, we may be able to work around it:

    1. Open Construct 3 at https://editor.construct.net
    2. Choose Menu > About
    3. Click Copy platform information for issue report
    4. Paste the copied text and share it

    For example in the past, with sufficient evidence from affected users, we've determined that WebGPU has rendering glitches due to graphics driver issues on Intel Gen7 GPUs, and worked around it by disabling WebGPU on those systems. It's possible we could do something here, but only if we have the necessary evidence.

  • Well, Construct is a game engine, and so it's designed accordingly - normally everything fully suspends in the background because it's the most user-friendly thing to do and is sometimes a requirement for store publishing or some kinds of application certification. Construct provides the suspend and resume triggers so you know when it is changing state, but that's about it. If you truly need some process to run in the background, you could look at finding a third-party addon for running in the background, developing a custom wrapper extension for a desktop app, or just use a different tool such as a node.js service which is better suited to running like a server.

  • There's a relatively small set of changes in that release which potentially narrows it down a lot, but I'm afraid from your description alone it's not clear what change could be responsible. Perhaps there is an accidental side-effect from an unrelated change. I think we will need a smaller project demonstrating the issue to be able to resolve it. The bug report guidelines includes advice on stripping down a full project to a smaller reproduction project for a bug report.

  • You need to configure your Steam app to run the GameInput installer when installing the Steam app. I'm no expert on this as we do not publish content to Steam ourselves, but it looks like the way to do that is with install scripts.

    it turns out to be that he can use gamepad without any issue while I cannot

    This is probably because they had GameInput already installed by something else, whereas you did not. You need to run the GameInput installer to make sure it is installed.

    when I checked another C3 game(which gamepad is also working for my laptop) file downloaded from Steam, there is no "scirra-gameinput-x64.ext.dll" in the package

    There have been some recent changes to support the Steam Overlay. Older games may either work differently or not support the overlay.

  • In general, you shouldn't do that because it will waste system resources. Either the operating system or browser will commonly put background apps to sleep to prevent wasting system resources, so this is not always something you can work around.

    The catch-up time example shows how you can essentially fast-forward time when resuming, and the offline builder example shows a simpler approach based on measuring how long the app was closed/asleep for. Both can create the impression of the app running in the background, but don't actually need it to be really running.

  • One way to get a summary of changes over the past few years is to look at all the stable release notes over time. You can also go to the releases page and click a category, e.g. new features or additions, and see all the past changes of that type since then.

    For example a stable release from about 4 years ago is r302. Some of the biggest new features since then are:

    • 3D models
    • 3D editor
    • Custom actions
    • Instances bar
    • Asset Browser
    • Flowcharts editor (good for conversation trees, finite-state machines, etc)
    • New plugins: Construct Game Services, Clipboard, QR Code, Cryptography, File System, CSV, Internationalization, MIDI, BBC micro:bit, Steamworks, Epic Games
    • Show icons in Text objects
    • Dynamic layers (add/remove layers at runtime)
    • HTML layers (show sprites on top of HTML objects)
    • Support for coding with TypeScript
    • Linux CEF export option (also supports Steam Deck)
    • Tile randomization
  • I have a project that works perfectly in 476.4 but not in 487.

    As I said before, one of the most helpful things you can do is test every beta release in between those release numbers, and identify the specific release number the problem first started in. That can narrow it down from hundreds of potential changes to maybe a dozen.

    You can also speed things up by testing the half-way point - e.g. test r481, if it works then test half way between that and r487, if it doesn't then test half way between that and r476.4, etc. So you split the range in half each time.

  • It sounds like a bug - please file an issue and we'll look in to it.

  • Folks - we're happy to help but unfortunately there is just nothing we can do if you only write a forum post saying something's broken. Please file an issue if you can. If you really can't figure out the problem from a new project, you can send your full project to supportdnd@construct.net where we will do our best, but it is often impossible to work out what is wrong from a large and complex project, which is why our bug report guidelines ask for a minimal project.

  • Try Construct 3

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

    Try Now Construct 3 users don't see these ads
  • In general, if you run in to a problem, please file an issue following all the guidelines. If you are able to provide all that information, frequently issues can be resolved within minutes. Otherwise it is significantly harder and can take weeks or months to establish the problem.

    It is also particularly helpful if you can test every beta release from the previous stable release to the latest stable release, and determine which specific release something stopped working in. That usually narrows down the scope of potential changes from months of work to just a week's work.

  • Due to a known outstanding issue with WebView2, we've implemented a workaround for the time being using GameInput to read gamepad input with Steam exports. See the section on gamepad support in the Steamworks plugin documentation - the tl;dr is you need to run the GameInput installer as part of the game install process. Once you do that it should have broad support for all kinds of gamepads, as GameInput is a superset of all prior APIs (XInput, DirectInput, Raw Input, HID and WinRT) and can read gamepads supporting any of those technologies.

  • The ideal outcome is that my mouse pointer sprite is positioned exactly where the cursor physically is

    I don't believe this is actually possible with any technology. IIRC, the system mouse cursor is rendered with a special low-latency hardware overlay that bypasses much of the existing rendering system to allow things like continuing to respond when the app/system is busy/hung. On the other hand any app on the system itself will go through the usual GPU rendering pipeline, which usually includes something like double-buffering to ensure a smooth display, but at the cost of some extra latency. This is basically a consequence of how modern operating systems are designed - it's nothing specific to Construct or web technology.

    The only way to display something truly at the mouse cursor position with no delay is to set the cursor image as R0J0hound suggested. Anything else at all on the system will be subject to latency.

Ashley's avatar

Ashley

Early Adopter

Member since 21 May, 2007

Twitter
Ashley has 1,823,434 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
  • x126
    Coach One of your tutorials has over 1,000 readers
  • x74
    Educator One of your tutorials has over 10,000 readers
  • x5
    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
  • x44
    Great Comment One of your comments gets 3 upvotes
  • Email Verified

Progress

32/44
How to earn trophies

Blogs