-
-
Notifications
You must be signed in to change notification settings - Fork 21.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
macOS Safari 16.1 (latest version) - all HTML5 exports crash on loading (even empty projects with default settings) #67949
Comments
Update: same happens with Gnome Web version 43.0, which also uses the WebKit rendering engine. |
I can confirm this, all Godot web builds crash with Safari Browser 16.1 If anyone knows how to fix this, please tell as this is very detrimental to any web game made with Godot. |
Same here with Godot 4 and the latest beta. Working fine on windows/linux web browser. |
Please report this to WebKit upstream, as this is a regression on their end. Also, open the developer tools then reload the page to get a full error log. |
This was tested by someone else I asked, I don't have Gnome installed myself. Maybe someone reading this can report it there? |
Could affected users provide some more information on what issue you're experiencing exactly?
|
More information would help create a bug report on https://bugs.webkit.org/ Thanks for the heads up. |
(Adding info from a mastodon chat with Rémi.)
On both machines it loads with both GLES2 and GLES3. @akien-mga pointed out the the GLES3 problem with the shading is probably this one. |
mac OS 12.6.1, Intel, Macbook Pro early 2015, GPU: Intel Iris 6100 1.5GB
Safari 16.1:
Chrome:
both
same crash with Safari
everything, your test project crashes
I only have this one Apple device
It only prints:
Also does not load on Gnome Web (uses WebKit) on Linux the same way on my PC. I've been asking others to try, and it seems to not affect everyone, some don't have the issue on Apple hardware. |
I just tried Gnome Web/Epiphany on Linux (version 43.0), and I can reproduce some issues, though I can't say if it's the same as on Safari and/or Chrome on macOS:
Full log with stacktraces for the errors: Worth noting that the process doesn't crash, the music of the main menu actually plays, but nothing renders. Click randomly seems to trigger game logic, still without rendering. BTW pro-tip for Epiphany, as they don't seem to mention it anywhere and it's not accessible from the menus: the hotkey for the dev tools is Ctrl+Shift+I, like in Chromium. |
WebKit bug report: https://bugs.webkit.org/show_bug.cgi?id=247860 |
If needed for testing, I've uploaded WebGL 1.0 and 2.0 builds of Jetpaca from Godot 3.5.1:
And for non Godot users some steps to reproduce to export a project locally and see if the bug(s) is (are) reproducible: https://bugs.webkit.org/show_bug.cgi?id=247860#c9 |
I've seen the issue with black materials on my iPhone with safari using WebKit 605/604. I've briefly checked if this reproduces on the WPE WebKit port on Linux, and with the latest WebKit from |
If it helps, I was able to reproduce a black screen issue on Lubuntu using the resources Akien linked above (i.e. using the Gnome Web browser which is Webkit based, and running the jetpaca demo). Interestingly, I did not get any errors reported in the console. |
Sorry if I am misunderstanding something, but I wanted to give it a try just to see if I could replicate it, but both of these load and play fine on my Macbook. macOS 12.6.1 |
Quick update, issue still present in Safari 16.3 on my machine. |
Exporting a web build from Godot 4.0b17 and testig it in Safari 16.3 on macOS 13.2 I do not get a crash on loading. However, after the loading bar finishes the game just seems to get stuck processing something with a spinning loading icon (see below) that I haven't seen on any other platform. According to Activity monitor it's doing something, but not very intensely at about 1.5% CPU with little/no memory activity and after waiting 30+ minutes I've seen no change. |
I get the same infinite spinning disk after the loading bar finishes on ios Safari 16.2 with Godot 4 RC1 with a blank project. Godot 3.5.1 works perfectly fine however. |
I get the same !! have you got news about it ? |
Those who get crashes/infinite loading, can you tell which device/os version you are running? |
Hi thanks a lot ! and on IOS 16.2 or 16.3.x: i have another project : |
Also the sale with final version 4 ! |
After adding this code to the index.js and limiting the maximum memory, the error is different.
The error becomes: |
Good news: with Safari 16.4 the crash on loading is fixed! Would be nice if others that were affected could confirm, since the behaviour seems different between different hardware. Also sidenote, performance degraded quite a bit with Safari 16.4 compared to 16.0, which was the last version I could use without it crashing on load. It lost at least 25% fps (my test project didn't changed). Guess nothing that can be done from Godot side of things as I'm sure thats a Safari issue, just might be worth mentioning. |
@NanitesNanites do you have a specific test to reproduce the loss of performances. tracked on rdar://107286259 at @apple |
related #70621 |
I tried on an ipad with 16.4 and it did NOT fix the issue |
I just used a level from my game. It's not consitent enough to qualify as a proper benchmark but it did run significantly worse then before. |
it is so sad ... in this example, i have test the new addon with "Cross Origin Isolation Service Worker" and it work !!! (without .htaccess modifications) wait and see |
@NianoTT Do you or anyone here have a simple example which could show how the performance degraded from Safari 16.0 to Safari 16.4, and if it's better or not for Safari 17 ? |
More an more bad even Godot 3.5.4 who was funcrional in 16.x doesnt work anymore… so sad exception thrown: TypeError: null is not an object (evaluating 'gl.getContextAttributes().antialias'),createOffscreenFramebuffer@https://billiar.info/jeux/conceptkids/index.js:9:120004 @https://billiar.info/jeux/conceptkids/index.js:9:326105 |
This was really weird. I have 3.5.3 projects running fine even with iPhone 7. Do you have the specifications of the device? Are there anything that you suspect to be a culprit? |
It is a iPhone 13 PRO and IOS 17.2 BETA public |
@dragonal42 Although I found the culprit but it's completely fixable. Godot 3 with WebGL 2 is known to have a lot of issues and Godot 3 isn't the best at handling WebGL 2 on WebKit browsers. If you don't mind (judging by all elements you have on the game), you may switch the render to 1.0 version at the moment. I know this is not a true solution at the long run (plus Godot 3 is likely to be dropped a support sooner or later depends on conditions), but for Godot 3 this is the best bet for you. |
@SysError99 thanks a lot .. but i can't find WebGL 1.0 parameter in godot 3.5.4, can you help me please ? |
Switch the project to use GLES2 in the top-right corner of the editor. GLES2 maps to WebGL 1.0, whereas GLES3 maps to WebGL 2.0. |
@Calinou Thanks ... but this version is also with this ... i will test to rebuild it |
This comment was marked as off-topic.
This comment was marked as off-topic.
It is not, this is a specific issue, and for 3.x, please ask questions about this here first (it is a configuration error it seems) and then open a new report if it's a bug |
@iryan2 Make sure that you have satisfied the special requirements it said for Godot 4.x before jumping into the multitude of bugs that plague Apple-specific platforms. Making games with Godot 4.x for web is a mistake anyway.
Depending on what CDN or hosting platforms you use, you have to tap on those configurations. It can't be done in Godot game's file. It's by the design of the browser's specs and out of control of Godot unless the version 4.3 makes it working without multi-threading again. |
Bugsquad note: This issue has been confirmed several times already. No need to confirm it further.
Godot version
3.5.1, 3.4.5
System information
macOS Monterey 12.6.1, Safari 16.1
Issue description
Since the update to Safari 16.1 on macOS (Macbook Pro early 2015, macOS 12.6.1), every Godot HTML5 export (GLES2 and GLES3) crashes on loading, even empty projects with no settings changed.
It looks exactly like in the video in this report: #62445 and might be a similar issue. I can not check it on iOS as I don't have a device capable of running the latest version.
This basically prevents any Godot game from running on a Mac with the latest Safari version.
Steps to reproduce
Minimal reproduction project
any project, even empty (main scene with one Node2D)
The text was updated successfully, but these errors were encountered: