-
-
Notifications
You must be signed in to change notification settings - Fork 3.6k
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
iOS example crashes in 0.15-rc.3 and in main #16363
Comments
Can you please check 0.15.rc-2? There's a wgpu upgrade between them that is a very plausible candidate. |
It works in 0.15.rc-2! |
Confirming that reverting the wgpu upgrade commit (4b05d2f) makes the iOS example run again |
Thanks a ton for checking that. I've brought it to the awareness of the relevant experts. |
There's not a whole lot of changes in that wgpu version on Metal/Mac/Apple specific things. But the linked upgrade commit also does changes to xcode projects, could those be relevant? 4b05d2f#diff-10e1daed39805d49f29b77cec041a235e4c8a8795169b84bdb28df24af5d6c0c |
That was due to changes in gfx-rs/wgpu#6107. |
fixed by gfx-rs/wgpu#6535 on wgpu side |
wgpu 23.0.1 was just released, @ferama would you be able to test this again and confirm that the issue is no longer there? Thanks! |
Cloning... git clone [email protected]:bevyengine/bevy.git
git checkout release-0.15.0 Patching wgpu version... diff --git a/crates/bevy_image/Cargo.toml b/crates/bevy_image/Cargo.toml
index 7b317a521..4346ee0d8 100644
--- a/crates/bevy_image/Cargo.toml
+++ b/crates/bevy_image/Cargo.toml
@@ -49,7 +49,7 @@ image = { version = "0.25.2", default-features = false }
# misc
bitflags = { version = "2.3", features = ["serde"] }
bytemuck = { version = "1.5" }
-wgpu = { version = "23", default-features = false }
+wgpu = { version = "23.0.1", default-features = false }
serde = { version = "1", features = ["derive"] }
derive_more = { version = "1", default-features = false, features = [
"error",
diff --git a/crates/bevy_mesh/Cargo.toml b/crates/bevy_mesh/Cargo.toml
index 85e7c1503..8a2fda119 100644
--- a/crates/bevy_mesh/Cargo.toml
+++ b/crates/bevy_mesh/Cargo.toml
@@ -24,7 +24,7 @@ bevy_utils = { path = "../bevy_utils", version = "0.15.0-rc.3" }
# misc
bitflags = { version = "2.3", features = ["serde"] }
bytemuck = { version = "1.5" }
-wgpu = { version = "23", default-features = false }
+wgpu = { version = "23.0.1", default-features = false }
serde = { version = "1", features = ["derive"] }
hexasphere = "15.0"
derive_more = { version = "1", default-features = false, features = [
diff --git a/crates/bevy_render/Cargo.toml b/crates/bevy_render/Cargo.toml
index 9535fb61e..559a56946 100644
--- a/crates/bevy_render/Cargo.toml
+++ b/crates/bevy_render/Cargo.toml
@@ -68,7 +68,7 @@ codespan-reporting = "0.11.0"
# It is enabled for now to avoid having to do a significant overhaul of the renderer just for wasm.
# When the 'atomics' feature is enabled `fragile-send-sync-non-atomic` does nothing
# and Bevy instead wraps `wgpu` types to verify they are not used off their origin thread.
-wgpu = { version = "23", default-features = false, features = [
+wgpu = { version = "23.0.1", default-features = false, features = [
"wgsl",
"dx12",
"metal",
Launching... cd examples/mobile && make run It works now :) Thanks guys |
You rock: thanks for testing this! |
Mmm why the issue is closed? There is not any commit with the new version of wgpu on bevy repo, I only applied the patch manually and tested it locally. Do I misunderstood something? |
The versions specified in |
I still think we should correctly specify the patch to not allow an invalid combination |
# Objective - Fixes #16363 - Ensure that someone using minimum version doesn't get the bugs that were fixed in the 23.0.1 patch ## Solution - Use wgpu 23.0.1
# Objective - Fixes #16363 - Ensure that someone using minimum version doesn't get the bugs that were fixed in the 23.0.1 patch ## Solution - Use wgpu 23.0.1
Guys unfortunately it seems there is another issue. The app launches and run with wgpu 23.0.1 but the interaction with the button doesn’t work. I noticed that the same happens if I run a wasm build . To be more specific running the wasm build, ui button interactions works until you open the browser developer console and enable phone screen simulator (tested with chrome) You can test it using the button example from bevy example ui folder It works in 0.14.2, maybe I should test with 0.15rc2 this too but it seems more ui related. |
# Objective - Fix the issue mentioned on iOS in #16363 (comment) - touch on the button in the mobile example are not detected ## Solution - UI focus now uses the window scale factor for touches
# Objective - Fix the issue mentioned on iOS in #16363 (comment) - touch on the button in the mobile example are not detected ## Solution - UI focus now uses the window scale factor for touches
# Objective - Fix the issue mentioned on iOS in #16363 (comment) - touch on the button in the mobile example are not detected ## Solution - UI focus now uses the window scale factor for touches
@ferama touch interaction should now work on iOS if you try the I couldn't reproduce in wasm. my fix was about touch, maybe this "phone screen emulator" replaces click by touches input. Could you also try? |
Now works properly on mobile, thanks again for the effort. Still there is a regression on wasm build (works on 0.14.2, do not with release-0.15.0 branch) How I tested:
Point the chrome browser at http://127.0.0.1:1334. Interactions with the button works properly. Another proof that in 0.14.2 works is that if you point your phone mobile browser at https://bevyengine.org/examples/ui-user-interface/button/ it works as expected. |
works for me on chromium. there's no hover but I guess that's normal as there isn't a touch equivalent, but press/release works correctly chrome.device.simulator.mp4 |
I agree with you about the hover event. Repeating the steps above on 0.14.2, it always works |
Bevy version
I attempted to run the iOS example using 0.15-rc.3 and from the latest commit in main (4225848)
Relevant system information
I'm using Rust v1.82.0 on MacOS Sonoma
What you did
Attempting to run the iOS example crashes with:
It works in bevy 0.14.2
I also attemped to reduce the example removing almost everything.
This one crashes too:
The text was updated successfully, but these errors were encountered: