MicrosoftEdge / WebView2Feedback

Feedback and discussions about Microsoft Edge WebView2
https://aka.ms/webview2
454 stars 55 forks source link

[Problem/Bug]: Construct 3 games miss some sprites and text objects on Xbox Series X/Y. #4767

Open thejacs opened 3 months ago

thejacs commented 3 months ago

What happened?

Hi guys, as @AshleyScirra recomended, I start this as a new issue. As you already know, Construct 3 games now work on Xbox Series X/Y, but there is another problem: Some sprites and text objects just vanish during the game (get invisible). Sometimes they load properly. Also some sprites (like characters) can miss just some animations.

@victorhuangwq asked me for a test made on Xbox Series X, and the ressults show 3 Fails on Xbox Series Edge (I attach screenshots). I hope guys we can solve this problem.

image

image

Importance

Moderate. My app's user experience is affected, but still usable.

Runtime Channel

Stable release (WebView2 Runtime)

Runtime Version

No response

SDK Version

No response

Framework

Win32

Operating System

Windows 10

OS Version

No response

Repro steps

Executing a Construct 3 game on Xbox Series X console will reproduce the bug. It should work well like on Windows Edge, but instead of this, some sprites and text objects can just vanished (get invisible).

Also doing this test (On Xbox Series X EDGE) you can check 3 bugs/Fails: https://registry.khronos.org/webgl/sdk/tests/conformance/extensions/ext-disjoint-timer-query.html

also

Repros in Edge Browser

Yes, issue can be reproduced in the corresponding Edge version

Regression

No, this never worked

Last working version (if regression)

No response

AshleyScirra commented 3 months ago

I believe everything relating to EXT_disjoint_timer_query extension is irrelevant and just confusion by originally posting this in a different issue. I think it will be clearer and easier to deal with this issue if you remove all references to that. It will also be very difficult for anyone to investigate or make progress on this issue unless you provide a sample project that demonstrates the problem.

thejacs commented 3 months ago

Well, that test is what @victorhuangwq asked me for. Please, understand I'm not an expert on this area. I can provide a sample of my game @AshleyScirra, no problem. Would you need the "Xbox" (WebView2) exported file? or .C3P?

AshleyScirra commented 3 months ago

By posting this issue in the other issue I think it has just caused confusion and those results are not relevant to this issue. Therefore including it will only cause further confusion and make it harder to help you. You should really start over from scratch as this kind of confusion can be a real impediment to solving issues.

Including both a .c3p file and an exported project for Xbox would be helpful.

victorhuangwq commented 3 months ago

@thejacs thanks for running those tests in the first place and being active about having us look at this issue. So, here's what I'm seeing from my perspective:

  1. Based on what Ashley has stated in this issue, https://github.com/MicrosoftEdge/WebView2Feedback/issues/4370, as well as the tests that you have ran, we can for certain say that EXT_disjoint_timer_query_webgl2 and EXT_disjoint_timer_query is not working on Edge in Xbox Series X/Y. There are folks on Xbox looking into it.

  2. It seems like @AshleyScirra's new package already has a workaround that does not use EXT_disjoint_timer_query_webgl2 and EXT_disjoint_timer_query. So this would be unrelated to the bug that we discovered in #4370. That's why it would be great if @thejacs could provide a sample to showcase the bug, as that would allow @AshleyScirra to figure out if it's a bug in Construct 3 or in Xbox.

thejacs commented 3 months ago

@victorhuangwq Thank you for your understanding and help. I Finally "solved" the problem. Of course, I can provide a sample of my game. Just let me know how can I do it in private.

As I thought, it's probably some kind of graphics memory limitation on Xbox Series Edge. I finally "solved" the problem by reducing some of the graphical resources in the project properties. Is not a final solution but aparently it worked.