#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

#800 in Game dev

Download history 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 188/week @ 2024-04-29 176/week @ 2024-05-06 189/week @ 2024-05-13 193/week @ 2024-05-20 183/week @ 2024-05-27 172/week @ 2024-06-03 103/week @ 2024-06-10 178/week @ 2024-06-17 183/week @ 2024-06-24

671 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

~42–87MB
~867K SLoC