diff --git a/Cargo.lock b/Cargo.lock
index aa35ae37..818e6c1d 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -90,7 +90,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "39b801912a977c3fd52d80511fe1c0c8480c6f957f21ae2ce1b92ffe970cf4b9"
dependencies = [
"android-properties",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"cc",
"cesu8",
"jni 0.21.1",
@@ -316,7 +316,7 @@ version = "0.69.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"cexpr",
"clang-sys",
"itertools",
@@ -359,9 +359,9 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
[[package]]
name = "bitflags"
-version = "2.4.2"
+version = "2.5.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "ed570934406eb16438a4e976b1b4500774099c13b8cb96eec99f620f05090ddf"
+checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1"
[[package]]
name = "block"
@@ -452,7 +452,7 @@ version = "0.12.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"log",
"polling 3.3.2",
"rustix 0.38.30",
@@ -678,9 +678,9 @@ dependencies = [
[[package]]
name = "core-foundation"
-version = "0.9.3"
+version = "0.9.4"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "194a7a9e6de53fa55116934067c844d9d749312f75c6f6d0980e8c252f8c2146"
+checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
dependencies = [
"core-foundation-sys",
"libc",
@@ -688,9 +688,9 @@ dependencies = [
[[package]]
name = "core-foundation-sys"
-version = "0.8.3"
+version = "0.8.6"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "5827cebf4670468b8772dd191856768aedcb1b0278a04f989f7766351917b9dc"
+checksum = "06ea2b9bc92be3c2baa9334a323ebca2d6f074ff852cd1d7b11064035cd3868f"
[[package]]
name = "core-graphics"
@@ -707,13 +707,12 @@ dependencies = [
[[package]]
name = "core-graphics-types"
-version = "0.1.1"
+version = "0.1.3"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "3a68b68b3446082644c91ac778bf50cd4104bfb002b5a6a7c44cca5a2c70788b"
+checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
dependencies = [
"bitflags 1.3.2",
"core-foundation",
- "foreign-types 0.3.2",
"libc",
]
@@ -885,7 +884,7 @@ version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3e3d747f100290a1ca24b752186f61f6637e1deffe3bf6320de6fcb29510a307"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"libloading 0.8.0",
"winapi",
]
@@ -1354,7 +1353,7 @@ version = "0.6.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"gpu-alloc-types",
]
@@ -1364,7 +1363,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
]
[[package]]
@@ -1449,7 +1448,7 @@ version = "0.11.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "af2a7e73e1f34c48da31fb668a907f250794837e08faa144fd24f0b8b741e890"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"com",
"libc",
"libloading 0.8.0",
@@ -1971,7 +1970,7 @@ version = "0.27.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c43f73953f8cbe511f021b58f18c3ce1c3d1ae13fe953293e13345bf83217f25"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"block",
"core-graphics-types",
"foreign-types 0.5.0",
@@ -2090,7 +2089,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "8878eb410fc90853da3908aebfe61d73d26d4437ef850b70050461f939509899"
dependencies = [
"bit-set",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"codespan-reporting",
"hexf-parse",
"indexmap 2.1.0",
@@ -2164,7 +2163,7 @@ version = "0.8.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"jni-sys",
"log",
"ndk-sys 0.5.0+25.2.9519653",
@@ -2411,7 +2410,7 @@ version = "0.10.60"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "79a4c6c3a2b158f7f8f2a2fc5a969fa3a068df6fc9dbb4a43845436e3af7c800"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"cfg-if",
"foreign-types 0.3.2",
"libc",
@@ -2869,9 +2868,9 @@ dependencies = [
[[package]]
name = "renderdoc-sys"
-version = "1.0.0"
+version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "216080ab382b992234dda86873c18d4c48358f5cfcb70fd693d7f6f2131b628b"
+checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
[[package]]
name = "reqwest"
@@ -2977,7 +2976,7 @@ version = "0.38.30"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "322394588aaf33c24007e8bb3238ee3e4c5c09c084ab32bc73890b99ff326bca"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"errno",
"libc",
"linux-raw-sys 0.4.13",
@@ -3208,7 +3207,7 @@ version = "0.18.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "60e3d9941fa3bacf7c2bf4b065304faa14164151254cd16ce1b1bc8fc381600f"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"calloop",
"calloop-wayland-source",
"cursor-icon",
@@ -3284,7 +3283,7 @@ version = "0.3.0+sdk-1.3.268.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
]
[[package]]
@@ -3401,18 +3400,18 @@ dependencies = [
[[package]]
name = "thiserror"
-version = "1.0.56"
+version = "1.0.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "d54378c645627613241d077a3a79db965db602882668f9136ac42af9ecb730ad"
+checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709"
dependencies = [
"thiserror-impl",
]
[[package]]
name = "thiserror-impl"
-version = "1.0.56"
+version = "1.0.61"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "fa0faa943b50f3db30a20aa7e265dbc66076993efed8463e8de414e5d06d3471"
+checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533"
dependencies = [
"proc-macro2",
"quote",
@@ -4197,9 +4196,9 @@ dependencies = [
[[package]]
name = "wasm-bindgen-futures"
-version = "0.4.40"
+version = "0.4.42"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "bde2032aeb86bdfaecc8b261eef3cba735cc426c1f3a3416d1e0791be95fc461"
+checksum = "76bc14366121efc8dbb487ab05bcc9d346b3b5ec0eaa76e46594cabbe51762c0"
dependencies = [
"cfg-if",
"js-sys",
@@ -4327,7 +4326,7 @@ version = "0.31.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1ca7d52347346f5473bf2f56705f360e8440873052e575e55890c4fa57843ed3"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"nix 0.26.4",
"wayland-backend",
"wayland-scanner",
@@ -4339,7 +4338,7 @@ version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"cursor-icon",
"wayland-backend",
]
@@ -4361,7 +4360,7 @@ version = "0.31.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "e253d7107ba913923dc253967f35e8561a3c65f914543e46843c88ddd729e21c"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"wayland-backend",
"wayland-client",
"wayland-scanner",
@@ -4373,7 +4372,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"wayland-backend",
"wayland-client",
"wayland-protocols",
@@ -4386,7 +4385,7 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"wayland-backend",
"wayland-client",
"wayland-protocols",
@@ -4484,7 +4483,7 @@ checksum = "6b15e451d4060ada0d99a64df44e4d590213496da7c4f245572d51071e8e30ed"
dependencies = [
"arrayvec",
"bit-vec",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"cfg_aliases",
"codespan-reporting",
"indexmap 2.1.0",
@@ -4512,7 +4511,7 @@ dependencies = [
"arrayvec",
"ash",
"bit-set",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"block",
"cfg_aliases",
"core-graphics-types",
@@ -4565,7 +4564,7 @@ version = "0.19.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "895fcbeb772bfb049eb80b2d6e47f6c9af235284e9703c96fc0218a42ffd5af2"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"js-sys",
"web-sys",
]
@@ -4956,7 +4955,7 @@ dependencies = [
"ahash 0.8.7",
"android-activity",
"atomic-waker",
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"bytemuck",
"calloop",
"cfg_aliases",
@@ -5058,7 +5057,7 @@ version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6924668544c48c0133152e7eec86d644a056ca3d09275eb8d5cdb9855f9d8699"
dependencies = [
- "bitflags 2.4.2",
+ "bitflags 2.5.0",
"dlib",
"log",
"once_cell",
diff --git a/code/beginner/tutorial9-models/src/resources.rs b/code/beginner/tutorial9-models/src/resources.rs
index d898f908..e807b10b 100644
--- a/code/beginner/tutorial9-models/src/resources.rs
+++ b/code/beginner/tutorial9-models/src/resources.rs
@@ -10,8 +10,8 @@ fn format_url(file_name: &str) -> reqwest::Url {
let window = web_sys::window().unwrap();
let location = window.location();
let mut origin = location.origin().unwrap();
- if !origin.ends_with("learn-wgpu") {
- origin = format!("{}/learn-wgpu", origin);
+ if !origin.ends_with("res") {
+ origin = format!("{}/res", origin);
}
let base = reqwest::Url::parse(&format!("{}/", origin,)).unwrap();
base.join(file_name).unwrap()
@@ -118,34 +118,40 @@ pub async fn load_model(
.into_iter()
.map(|m| {
let vertices = (0..m.mesh.positions.len() / 3)
- .map(|i| {
- if m.mesh.normals.is_empty(){
- model::ModelVertex {
- position: [
- m.mesh.positions[i * 3],
- m.mesh.positions[i * 3 + 1],
- m.mesh.positions[i * 3 + 2],
- ],
- tex_coords: [m.mesh.texcoords[i * 2], 1.0 - m.mesh.texcoords[i * 2 + 1]],
- normal: [0.0, 0.0, 0.0],
+ .map(|i| {
+ if m.mesh.normals.is_empty() {
+ model::ModelVertex {
+ position: [
+ m.mesh.positions[i * 3],
+ m.mesh.positions[i * 3 + 1],
+ m.mesh.positions[i * 3 + 2],
+ ],
+ tex_coords: [
+ m.mesh.texcoords[i * 2],
+ 1.0 - m.mesh.texcoords[i * 2 + 1],
+ ],
+ normal: [0.0, 0.0, 0.0],
+ }
+ } else {
+ model::ModelVertex {
+ position: [
+ m.mesh.positions[i * 3],
+ m.mesh.positions[i * 3 + 1],
+ m.mesh.positions[i * 3 + 2],
+ ],
+ tex_coords: [
+ m.mesh.texcoords[i * 2],
+ 1.0 - m.mesh.texcoords[i * 2 + 1],
+ ],
+ normal: [
+ m.mesh.normals[i * 3],
+ m.mesh.normals[i * 3 + 1],
+ m.mesh.normals[i * 3 + 2],
+ ],
+ }
}
- }else{
- model::ModelVertex {
- position: [
- m.mesh.positions[i * 3],
- m.mesh.positions[i * 3 + 1],
- m.mesh.positions[i * 3 + 2],
- ],
- tex_coords: [m.mesh.texcoords[i * 2], 1.0 - m.mesh.texcoords[i * 2 + 1]],
- normal: [
- m.mesh.normals[i * 3],
- m.mesh.normals[i * 3 + 1],
- m.mesh.normals[i * 3 + 2],
- ],
- }
- }
- })
- .collect::