pong and news

pull/480/head
Benjamin Hansen 11 months ago
parent 8b8e844b76
commit 48d4d1a353

1215
Cargo.lock generated

File diff suppressed because it is too large Load Diff

@ -16,5 +16,5 @@ members = [
]
exclude = [
"code/showcase/imgui-demo",
"code/showcase/pong",
#"code/showcase/pong",
]

@ -13,17 +13,17 @@ path = "src/main.rs"
[dependencies]
cfg-if = "1"
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
wgpu = "0.16"
pollster = "0.2"
pollster = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "=0.2.84"
wasm-bindgen = "=0.2.86"
wasm-bindgen-futures = "0.4.30"
web-sys = { version = "0.3.53", features = [
"Document",

@ -9,15 +9,15 @@ crate-type = ["cdylib", "rlib"]
[dependencies]
cfg-if = "1"
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
wgpu = "0.16"
pollster = "0.2"
pollster = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -9,15 +9,15 @@ crate-type = ["cdylib", "rlib"]
[dependencies]
cfg-if = "1"
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
wgpu = "0.16"
pollster = "0.2"
pollster = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -10,17 +10,17 @@ crate-type = ["cdylib", "rlib"]
[dependencies]
cfg-if = "1"
winit = "0.27"
winit = "0.28"
wgpu = "0.16"
env_logger = "0.10"
log = "0.4"
pollster = "0.2"
pollster = "0.3"
# NEW!
bytemuck = { version = "1.12", features = [ "derive" ] }
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,9 +13,9 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
env_logger = "0.10"
log = "0.4"
pollster = "0.2"
pollster = "0.3"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -24,7 +24,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -14,9 +14,9 @@ bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
log = "0.4"
pollster = "0.2"
pollster = "0.3"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -25,7 +25,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -14,9 +14,9 @@ bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
log = "0.4"
pollster = "0.2"
pollster = "0.3"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -25,7 +25,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,10 +13,10 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -25,7 +25,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,11 +13,11 @@ bytemuck = { version = "1.12", features = [ "derive" ] }
cfg-if = "1"
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -27,7 +27,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,11 +13,11 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -27,7 +27,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,11 +13,11 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
[dependencies.image]
version = "0.24"
@ -27,7 +27,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,11 +13,11 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
instant = "0.1"
[dependencies.image]
@ -28,7 +28,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -13,11 +13,11 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = { version = "0.18", features = [ "swizzle" ] }
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
instant = "0.1"
[dependencies.image]
@ -28,7 +28,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -9,13 +9,13 @@ anyhow = "1.0"
bytemuck = { version = "1.4", features = ["derive"]}
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
image = "0.24"
log = "0.4"
rayon = "1.4"
tobj = "2.0"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
[build-dependencies]
anyhow = "1.0"

@ -10,13 +10,13 @@ thiserror = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
image = "0.24.2"
log = "0.4"
tobj = "2.0"
wgpu = "0.16"
wgpu-subscriber = "0.1"
winit = "0.27"
winit = "0.28"
[build-dependencies]
anyhow = "1.0"

@ -10,12 +10,12 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
image = "0.24.2"
log = "0.4"
tobj = "3.1"
wgpu = "0.16"
winit = "0.27"
winit = "0.28"
gif = "0.11.4"
futures-intrusive = "0.4"

@ -9,7 +9,7 @@ edition = "2018"
[dependencies]
anyhow = "1.0"
wgpu = "0.16"
pollster = "0.2"
pollster = "0.3"
imgui = "0.7"
imgui-wgpu = "0.17"
imgui-winit-support = "0.7"

@ -8,5 +8,5 @@ edition = "2021"
[dependencies]
anyhow = "1"
wgpu = "0.16"
winit = "0.27"
pollster = "0.2"
winit = "0.28"
pollster = "0.3"

@ -13,11 +13,11 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
instant = "0.1"
[dependencies.image]
@ -28,7 +28,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -10,13 +10,13 @@ crate-type = ["cdylib", "rlib"]
[dependencies]
cfg-if = "1"
env_logger = "0.10"
winit = "0.27"
winit = "0.28"
anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
pollster = "0.2"
pollster = "0.3"
wgpu = { version = "0.16", features = ["spirv"]}
wgpu_glyph = "0.18"
wgpu_glyph = "0.20"
rand = "0.8"
rodio = { version = "0.16", default-features = false, features = ["wav"] }
log = "0.4"
@ -24,11 +24,11 @@ instant = "0.1"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
getrandom = { version = "0.2", features = ["js"] }
rodio = { version = "0.16", default-features = false, features = ["wasm-bindgen", "wav"] }
wasm-bindgen-futures = "0.4.20"
wasm-bindgen = "=0.2.84"
wasm-bindgen = "=0.2.86"
web-sys = { version = "0.3.53", features = [
"Document",
"Window",

@ -1,4 +1,4 @@
use anyhow::{Context, bail, Result};
use anyhow::{bail, Context, Result};
use fs_extra::copy_items;
use fs_extra::dir::CopyOptions;
use glob::glob;
@ -40,12 +40,12 @@ pub fn load_shader(src_path: PathBuf) -> anyhow::Result<()> {
};
let flags = naga::valid::ValidationFlags::all();
let info = naga::valid::Validator::new(
flags,
naga::valid::Capabilities::empty(),
)
.validate(&module)?;
std::fs::write(wgsl_path, wgsl::write_string(&module, &info, wgsl::WriterFlags::all())?)?;
let info =
naga::valid::Validator::new(flags, naga::valid::Capabilities::empty()).validate(&module)?;
std::fs::write(
wgsl_path,
wgsl::write_string(&module, &info, wgsl::WriterFlags::all())?,
)?;
Ok(())
}

@ -8,7 +8,7 @@ mod util;
use input::Input;
use system::System;
#[cfg(target_arch="wasm32")]
#[cfg(target_arch = "wasm32")]
use wasm_bindgen::prelude::*;
use winit::dpi::PhysicalSize;
@ -16,7 +16,7 @@ use winit::event::*;
use winit::event_loop::{ControlFlow, EventLoop};
use winit::window::{Fullscreen, WindowBuilder};
#[cfg_attr(target_arch="wasm32", wasm_bindgen(start))]
#[cfg_attr(target_arch = "wasm32", wasm_bindgen(start))]
pub fn start() {
cfg_if::cfg_if! {
if #[cfg(target_arch = "wasm32")] {
@ -30,7 +30,9 @@ pub fn start() {
let event_loop = EventLoop::new();
let monitor = event_loop.primary_monitor().unwrap();
let video_mode = monitor.video_modes().next();
let size = video_mode.clone().map_or(PhysicalSize::new(800, 600), |vm| vm.size());
let size = video_mode
.clone()
.map_or(PhysicalSize::new(800, 600), |vm| vm.size());
let window = WindowBuilder::new()
.with_visible(false)
.with_title("Pong")
@ -56,8 +58,8 @@ pub fn start() {
// Request fullscreen, if denied, continue as normal
match canvas.request_fullscreen() {
Ok(_) => {},
Err(_) => ()
Ok(_) => {}
Err(_) => (),
}
Some(())
@ -193,11 +195,15 @@ pub fn start() {
}
}
Event::WindowEvent {
event: WindowEvent::Resized(size), ..
event: WindowEvent::Resized(size),
..
} => {
render.resize(size);
events.push(state::Event::Resize(size.width as f32, size.height as f32));
}
Event::RedrawEventsCleared => {
window.request_redraw();
}
Event::RedrawRequested(window_id) if window_id == window.id() => {
for event in &events {
match event {

@ -1,3 +1,3 @@
fn main() {
pong::start();
}
}

@ -107,11 +107,20 @@ pub struct StagingBuffer {
}
impl StagingBuffer {
pub fn new<T: bytemuck::Pod + Sized>(device: &wgpu::Device, data: &[T], is_index_buffer: bool) -> StagingBuffer {
pub fn new<T: bytemuck::Pod + Sized>(
device: &wgpu::Device,
data: &[T],
is_index_buffer: bool,
) -> StagingBuffer {
StagingBuffer {
buffer: device.create_buffer_init(&BufferInitDescriptor {
contents: bytemuck::cast_slice(data),
usage: wgpu::BufferUsages::COPY_SRC | if is_index_buffer { wgpu::BufferUsages::INDEX } else { wgpu::BufferUsages::empty() },
usage: wgpu::BufferUsages::COPY_SRC
| if is_index_buffer {
wgpu::BufferUsages::INDEX
} else {
wgpu::BufferUsages::empty()
},
label: Some("Staging Buffer"),
}),
size: size_of_slice(data) as wgpu::BufferAddress,

@ -44,7 +44,7 @@ impl Render {
backends: wgpu::Backends::all(),
dx12_shader_compiler: Default::default(),
});
// # Safety
//
// The surface needs to live as long as the window that created it.
@ -75,7 +75,9 @@ impl Render {
// Shader code in this tutorial assumes an Srgb surface texture. Using a different
// one will result all the colors comming out darker. If you want to support non
// Srgb surfaces, you'll need to account for that when drawing to the frame.
let surface_format = surface_caps.formats.iter()
let surface_format = surface_caps
.formats
.iter()
.copied()
.find(|f| f.is_srgb())
.unwrap_or(surface_caps.formats[0]);
@ -218,7 +220,6 @@ impl Render {
self.staging_belt.finish();
self.queue.submit(iter::once(encoder.finish()));
frame.present();
}
Err(wgpu::SurfaceError::Outdated) => {
log::info!("Outdated surface texture");

@ -17,8 +17,13 @@ impl SoundSystem {
let sink = rodio::Sink::try_new(&stream_handle).unwrap();
sink.set_volume(0.5);
let spatial_sink =
rodio::SpatialSink::try_new(&stream_handle, [0.0, 0.0, 0.0], [-1.0, 0.0, 0.0], [1.0, 0.0, 0.0]).unwrap();
let spatial_sink = rodio::SpatialSink::try_new(
&stream_handle,
[0.0, 0.0, 0.0],
[-1.0, 0.0, 0.0],
[1.0, 0.0, 0.0],
)
.unwrap();
Self {
stream,

@ -13,12 +13,12 @@ anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
env_logger = "0.10"
pollster = "0.2"
pollster = "0.3"
log = "0.4"
rayon = "1.4" # NEW!
tobj = { version = "3.2", features = ["async"]}
wgpu = { version = "0.16"}
winit = "0.27"
winit = "0.28"
instant = "0.1"
async-std = "1"
@ -30,7 +30,7 @@ features = ["png", "jpeg"]
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "0.2"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -10,7 +10,7 @@ edition = "2018"
image = "0.24"
shaderc = "0.8"
wgpu = { version = "0.16", features = ["spirv"] }
pollster = "0.2"
pollster = "0.3"
futures-intrusive = "0.4"
[[bin]]

@ -12,4 +12,4 @@ env_logger = "0.10"
rayon = "1"
serde = { version = "1", features = ["derive"]}
serde_json = "1"
wasm-bindgen-cli-support = "0.2.84"
wasm-bindgen-cli-support = "0.2.86"

@ -8,7 +8,7 @@ For the beginner stuff, we're going to keep things very simple, we'll add things
```toml
[dependencies]
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
wgpu = "0.16"
@ -109,7 +109,7 @@ cfg-if = "1"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4.30"

@ -236,7 +236,7 @@ Now that `run()` is async, `main()` will need some way to await the future. We c
```toml
[dependencies]
# other deps...
pollster = "0.2"
pollster = "0.3"
```
We then use the `block_on` function provided by pollster to await our future:
@ -258,15 +258,15 @@ If we try to build WASM now it will fail because `wasm-bindgen` doesn't support
```toml
[dependencies]
cfg-if = "1"
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
wgpu = "0.16"
pollster = "0.2"
pollster = "0.3"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"

@ -446,10 +446,10 @@ For convenience, let's pull our texture code into its own module. We'll first ne
[dependencies]
image = "0.23"
cgmath = "0.18"
winit = "0.27"
winit = "0.28"
env_logger = "0.10"
log = "0.4"
pollster = "0.2"
pollster = "0.3"
wgpu = "0.16"
bytemuck = { version = "1.12", features = [ "derive" ] }
anyhow = "1.0" # NEW!

@ -0,0 +1,45 @@
# Update to 0.16
Very few changes here! We no longer need to use `NonZeroU32` and the like, instead it will be an `Option<u32>`. This is mostly used in dealing with textures.
```rust
queue.write_texture(
wgpu::ImageCopyTexture {
aspect: wgpu::TextureAspect::All,
texture: &texture,
mip_level: 0,
origin: wgpu::Origin3d::ZERO,
},
&rgba,
wgpu::ImageDataLayout {
offset: 0,
// bytes_per_row: NonZeroU32::new(4 * dimensions.0),
bytes_per_row: Some(4 * dimensions.0),
// rows_per_image: NonZeroU32::new(dimensions.1),
rows_per_image: Some(dimensions.1),
},
size,
);
```
In other news WebGPU has been added to Chrome 113 and up! Currently the Linux version of Chrome beta isn't working and while it's working in Firefox, I'm going to hold off on switching to using that instead of the WebGL compatibility mode. If you mess around with WebGPU in browser check <https://caniuse.com/webgpu> to see if your browser is supported and then remove the extra `wgpu` line from the `[target.'cfg(target_arch = "wasm32")'.dependencies]` section of `Cargo.toml`:
```toml
[target.'cfg(target_arch = "wasm32")'.dependencies]
reqwest = { version = "0.11" }
console_error_panic_hook = "0.1"
console_log = "1.0"
# wgpu = { version = "0.16", features = ["webgl"]}
wasm-bindgen = "0.2"
wasm-bindgen-futures = "0.4"
web-sys = { version = "0.3", features = [
"Document",
"Window",
"Element",
"Location",
]}
```
No other changes need to be made to switch to using WebGPU in browser, so once the WebGPU samples at <https://webgpu.github.io/> work in Chrome on Linux, I'll look into removing the `webgl` feature.
That's all! As always let me know if I missed anything!

@ -269,11 +269,11 @@ In order for wasm-pack to work properly I first needed to add some dependencies:
```toml[dependencies]
cfg-if = "1"
env_logger = "0.10"
winit = "0.27"
winit = "0.28"
anyhow = "1.0"
bytemuck = { version = "1.12", features = [ "derive" ] }
cgmath = "0.18"
pollster = "0.2"
pollster = "0.3"
wgpu = { version = "0.16", features = ["spirv"]}
wgpu_glyph = "0.17"
rand = "0.8"
@ -283,11 +283,11 @@ instant = "0.1"
[target.'cfg(target_arch = "wasm32")'.dependencies]
console_error_panic_hook = "0.1.6"
console_log = "0.2.0"
console_log = "1.0"
getrandom = { version = "0.2", features = ["js"] }
rodio = { version = "0.15", default-features = false, features = ["wasm-bindgen", "wav"] }
wasm-bindgen-futures = "0.4.20"
wasm-bindgen = "=0.2.84"
wasm-bindgen = "=0.2.86"
web-sys = { version = "0.3.53", features = [
"Document",
"Window",

@ -101,7 +101,7 @@ Update dependencies to support SPIR-V module.
image = "0.23"
shaderc = "0.7"
wgpu = { version = "0.16", features = ["spirv"] }
pollster = "0.2"
pollster = "0.3"
```
Using that we'll create a simple `RenderPipeline`.

@ -46,5 +46,9 @@
{
"package": "tutorial12-camera",
"out": "docs/.vuepress/components/wasm/tutorial12_camera"
},
{
"package": "pong",
"out": "docs/.vuepress/components/wasm/pong"
}
]
Loading…
Cancel
Save