#webgl2 #bevy #webgl #game-engine

bevy_webgl2

A webgl2 wasm32 render backend for Bevy Engine

7 releases

0.5.2 Apr 21, 2021
0.5.1 Apr 19, 2021
0.4.3 Feb 6, 2021
0.4.2 Jan 2, 2021
0.4.1 Dec 31, 2020

#744 in Game dev

Download history 143/week @ 2024-01-08 132/week @ 2024-01-15 113/week @ 2024-01-22 67/week @ 2024-01-29 124/week @ 2024-02-05 129/week @ 2024-02-12 177/week @ 2024-02-19 181/week @ 2024-02-26 185/week @ 2024-03-04 192/week @ 2024-03-11 206/week @ 2024-03-18 161/week @ 2024-03-25 288/week @ 2024-04-01 180/week @ 2024-04-08 240/week @ 2024-04-15 235/week @ 2024-04-22

960 downloads per month
Used in 3 crates

MIT license

120KB
2.5K SLoC

Rust 2K SLoC // 0.1% comments GLSL 442 SLoC // 0.2% comments

WebGL2 rendering backend for Bevy game engine

bevy_webgl2 is external plugin for Bevy providing WebGL2 rendering backend on wasm target. To see it in action take a look on live examples

Building examples

Prerequisites

cargo install cargo-make
rustup target add wasm32-unknown-unknown

to build and serve sprite example do:

cargo make example sprite --profile release

and open http://127.0.0.1:4000

Using bevy_webgl2 in your project

Take a look on bevy_webgl2_app_template - it is a template of bevy application using cargo-make for building both native and WASM targets.

To initialize plugin simply replace Bevy's DefaultPlugins with bevy_webgl2::DefaultPlugins:

    App::build()
        .add_plugins(bevy_webgl2::DefaultPlugins)

or add Bevy DefaultPlugins and bevy_webgl2::WebGL2Plugin

    App::build()
        .add_plugins(DefaultPlugins)
        .add_plugin(bevy_webgl2::WebGL2Plugin)

Dependencies

~40–85MB
~836K SLoC