rusya119a - I'm not sure I follow... it sounds like you started off talking about GPU performance, and then you went in to a whole bunch of things but didn't talk about GPU performance again. So I'm confused as to whether you really think GPU performance is an issue now.
You raised a whole load of things that involve a lot of complex tradeoffs. I could probably write a whole series of blog posts covering a full response. I'm afraid however I just don't have the time to do that. I've just added a few responses off the top of my head in the time I have available.
I would however point out that you're comparing Unity - a billion-dollar public multinational corporation with thousands of staff - to Construct - a small UK company with a handful of staff. The fact we even merit comparison is, I think, quite a credit to us.
1. WebView Overhead Construct apps run inside a WebView (Cordova/Capacitor). While functional, this essentially runs a full browser instance inside the app.
These days I don't think this is actually significant. I also don't believe it affects GPU performance at all - WebGL and WebGPU come down to the same GPU commands a native app would use.
2. Native vs. Interpreted Execution (The GC Issue)
Well-written JavaScript code (which we have) can come pretty close to C in performance. It's also been a long time since I've seen good evidence the GC is responsible for any performance degradation. Modern JavaScript GCs are generational, incremental, and concurrent, meaning they have less work to process, collection can happen on different CPU cores, and the work done on the main thread can be done in tiny increments well within a frame time, all making the performance impact negligible in most cases. People often misattribute things like this - what if you're skipping frames because of v-sync scheduling misses? It's necessary to rule out other causes like that before you point the finger at GC. So please share your evidence - if GC really is an issue in some case, it is possible we could optimize things to reduce GC pressure - but as I said it's been a long time since I've had to do that.
3. Thermal Throttling
Thermal throttling happens in the hardware and affects all software.
4. Tooling and Profiling (Critical)
If you want more advanced tools in this area, use the browser developer tools. They have things like performance profiles, flame graphs, memory analysis and more.
5. Texture Management Support for KTX2 / Basis Universal
Compressed texture support involves tricky tradeoffs. All compressed texture formats are lossy, and so degrade the quality of your artwork. This is generally a poor fit for 2D content where people want pristine artwork. It's easier to get away with lossy images with 3D content, as it often appears distorted (e.g. far away, at oblique angles, or wrapped around a mesh). Perhaps we could do this now Construct has 3D model support, but then you run in to the next tradeoff: compressed texture formats have much poorer compression than WebP/AVIF. So if you put everything in that format, the project download size would get significantly larger - not great for a web-first engine. You could download WebP/AVIF and then encode to compressed texture formats on startup, but that could significantly increase in-game load times. I don't think there's an easy route to have both a small download size and fast loading times with compressed textures.
Suggestion: Implementing SDF (Signed Distance Field) font rendering
SDF font rendering is monochrome. The Text object supports quite a lot of color formatting options, as well as color emoji. So this also involves tricky tradeoffs and is definitely not as obvious a thing to do as it might sound.
7. Blur
We could definitely do improvements in this area. The main complication is the effects compositor is one of the most complex parts of Construct.
8. Mobile Simulation Tools
Browser developer tools can emulate mobile behavior and even allow throttling performance. However I don't believe there will ever be as good a substitute as running on a real device. I don't think anyone else in the industry heavily relies on powerful PCs trying to pretend to be a weaker device, instead of just having some actual devices to hand to run on. Construct's Remote Preview makes it pretty quick and easy to try things out on mobile devices, and it's one of the reasons we have it.
9. I've noticed that even with the Preload Sounds checkbox enabled, the game might not launch at all on my older devices.
If you ask Construct to load the entire project's audio in to memory on startup, then yeah, it's going to potentially use a lot of memory. So if you want to reduce memory use, you should definitely turn that off.