bevyengine / bevyengine/bevy

Inconsistent Rendering with Webassembly on lower-end hardware. Game chokes.

Open
#6,363 3 comments 0 reactions 0 assignees View on GitHub
A-Rendering C-Bug O-Web
Dominant language
Rust
Stars
48.2k
Forks
4.8k
Avg merge
3d 16h
Merged PRs (30d)
171

Description

## Bevy version
`main`
The release number or commit hash of the version you're using.

```
[dependencies.bevy]
git = "https://github.com/bevyengine/bevy.git"
rev = "543465b721048355e34eb6078923645747c1d44b"
```

## \[Optional\] Relevant system information
```
105.0.1 (64-bit)

Mac OSX Monterrey 12.5
Processor Name: Quad-Core Intel Core i7
Processor Speed: 2.6 GHz
Number of Processors: 1
Total Number of Cores: 4
L2 Cache (per Core): 256 KB
L3 Cache: 6 MB
Hyper-Threading Technology: Enabled
Memory: 16 GB
```

Numerous reports from people I shared this game with indicated that the web assembly build is slow, stalls, or crashes.

I've tried it on 3 different machines (1 Skylake PC running Ubuntu 22.04, an M1 Mac, and on the above listed laptop). On the above listed laptop certain models do not get shaded or lit correctly. All build choke for at least 2 seconds after pressing the start button.
I suspect there is some sort of threading issue.

If you cannot get Bevy to build or run on your machine, please include:

- the Rust version you're using (you can get this by running `cargo --version`)

```
cargo 1.63.0 (fd9c4297c 2022-07-01)
```

If your bug is rendering-related, copy the adapter info that appears when you run Bevy.

## What you did

```
Play the webassembly build of the above-linked game

```
Describe how you arrived at the problem. If you can, consider providing a code snippet or link.

## What went wrong

If it's not clear, break this out into:

- what were you expecting?
Significantly better performance for WASM builds given the engine and language being used.
- what actually happened?
Very poor performance on WASM builds.

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the WebAssembly build of the referenced game on the reported lower-end systems and record the startup stall, performance, and shading behavior. Compare the affected builds with native runs and inspect the rendering and threading paths implicated by the symptoms. Done means the cause is isolated and the WASM performance or rendering inconsistency is addressed with a reproducible check.

Written by the indexing model from the issue text.

Assessment

Tech stack
rust, wasm
Domain
computer-graphics, game-dev, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.