diff --git a/Cargo.lock b/Cargo.lock index f4b24508c..607ce2275 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -20,24 +20,24 @@ checksum = "c71b1793ee61086797f5c80b6efa2b8ffa6d5dd703f118545808a7f2e27f7046" [[package]] name = "accesskit" -version = "0.11.2" +version = "0.12.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76eb1adf08c5bcaa8490b9851fd53cca27fa9880076f178ea9d29f05196728a8" +checksum = "ca8410747ed85a17c4a1e9ed3f5a74d3e7bdcc876cf9a18ff40ae21d645997b2" [[package]] name = "accesskit_consumer" -version = "0.15.2" +version = "0.16.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "04bb4d9e4772fe0d47df57d0d5dbe5d85dd05e2f37ae1ddb6b105e76be58fb00" +checksum = "8c17cca53c09fbd7288667b22a201274b9becaa27f0b91bf52a526db95de45e6" dependencies = [ "accesskit", ] [[package]] name = "accesskit_macos" -version = "0.9.0" +version = "0.10.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "134d0acf6acb667c89d3332999b1a5df4edbc8d6113910f392ebb73f2b03bb56" +checksum = "cd3b6ae1eabbfbced10e840fd3fce8a93ae84f174b3e4ba892ab7bcb42e477a7" dependencies = [ "accesskit", "accesskit_consumer", @@ -47,23 +47,23 @@ dependencies = [ [[package]] name = "accesskit_windows" -version = "0.14.3" +version = "0.15.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9eac0a7f2d7cd7a93b938af401d3d8e8b7094217989a7c25c55a953023436e31" +checksum = "afcae27ec0974fc7c3b0b318783be89fd1b2e66dd702179fe600166a38ff4a0b" dependencies = [ "accesskit", "accesskit_consumer", - "arrayvec", "once_cell", "paste", + "static_assertions", "windows 0.48.0", ] [[package]] name = "accesskit_winit" -version = "0.14.4" +version = "0.15.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "825d23acee1bd6d25cbaa3ca6ed6e73faf24122a774ec33d52c5c86c6ab423c0" +checksum = "88e39fcec2e10971e188730b7a76bab60647dacc973d4591855ebebcadfaa738" dependencies = [ "accesskit", "accesskit_macos", @@ -190,6 +190,12 @@ dependencies = [ "num-traits", ] +[[package]] +name = "arrayref" +version = "0.3.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "6b4930d2cb77ce62f89ee5d5289b4ac049559b1c45539271f5ed4fdc7db34545" + [[package]] name = "arrayvec" version = "0.7.4" @@ -205,6 +211,16 @@ dependencies = [ "libloading 0.7.4", ] +[[package]] +name = "async-broadcast" +version = "0.5.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b" +dependencies = [ + "event-listener", + "futures-core", +] + [[package]] name = "async-channel" version = "1.9.0" @@ -230,6 +246,18 @@ dependencies = [ "slab", ] +[[package]] +name = "async-fs" +version = "1.6.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "279cf904654eeebfa37ac9bb1598880884924aab82e290aa65c9e77a0e142e06" +dependencies = [ + "async-lock", + "autocfg", + "blocking", + "futures-lite", +] + [[package]] name = "async-lock" version = "2.8.0" @@ -247,7 +275,7 @@ checksum = "5fd55a5ba1179988837d24ab4c7cc8ed6efdeff578ede0416b4225a5fca35bd0" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -264,9 +292,15 @@ checksum = "a66537f1bb974b254c98ed142ff995236e81b9d0fe4db0575f46612cb15eb0f9" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] +[[package]] +name = "atomic-waker" +version = "1.1.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0" + [[package]] name = "attribute-derive" version = "0.8.1" @@ -276,7 +310,7 @@ dependencies = [ "attribute-derive-macro", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -292,7 +326,7 @@ dependencies = [ "proc-macro2", "quote", "quote-use", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -360,7 +394,7 @@ dependencies = [ "heck", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -392,18 +426,18 @@ checksum = "35636a1494ede3b646cc98f74f8e62c773a38a659ebc777a2cf26b9b74171df9" [[package]] name = "bevy" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91c6d3ec4f89e85294dc97334c5b271ddc301fdf67ac9bb994fe44d9273e6ed7" +checksum = "329e344f835f5a9a4c46a6d1d57371f726aa2c482d1bd669b2b9c4eb1ee91fd7" dependencies = [ "bevy_internal", ] [[package]] name = "bevy_a11y" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "132c9e35a77c5395951f6d25fa2c52ee92296353426df4f961e60f3ff47e2e42" +checksum = "271b812e5734f5056a400f7d64592dd82d6c0e6179389c2f066f433ab8bc7692" dependencies = [ "accesskit", "bevy_app", @@ -413,9 +447,9 @@ dependencies = [ [[package]] name = "bevy_animation" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f44eae3f1c35a87e38ad146f72317f19ce7616dad8bbdfb88ee752c1282d28c5" +checksum = "ab94187a1253433e14f175293d8a86ec1c2822fda2a17807908f11ec21f45f00" dependencies = [ "bevy_app", "bevy_asset", @@ -432,9 +466,9 @@ dependencies = [ [[package]] name = "bevy_app" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f557a7d59e1e16892d7544fc37316506ee598cb5310ef0365125a30783c11531" +checksum = "172d532ea812e5954fa814dae003c207f2a0b20c6e50431787c94a7159677ece" dependencies = [ "bevy_derive", "bevy_ecs", @@ -448,26 +482,29 @@ dependencies = [ [[package]] name = "bevy_asset" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9714af523da4cdf58c42a317e5ed40349708ad954a18533991fd64c8ae0a6f68" +checksum = "ccb2b67984088b23e223cfe9ec1befd89a110665a679acb06839bc4334ed37d6" dependencies = [ - "anyhow", - "async-channel", + "async-broadcast", + "async-fs", + "async-lock", "bevy_app", - "bevy_diagnostic", + "bevy_asset_macros", "bevy_ecs", "bevy_log", "bevy_reflect", "bevy_tasks", "bevy_utils", "bevy_winit", + "blake3", "crossbeam-channel", "downcast-rs", - "fastrand 1.9.0", + "futures-io", + "futures-lite", "js-sys", - "notify", "parking_lot", + "ron", "serde", "thiserror", "wasm-bindgen", @@ -475,13 +512,24 @@ dependencies = [ "web-sys", ] +[[package]] +name = "bevy_asset_macros" +version = "0.12.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1b3245193e90fc8abcf1059a467cb224501dcda083d114c67c10ac66b7171e3a" +dependencies = [ + "bevy_macro_utils", + "proc-macro2", + "quote", + "syn 2.0.39", +] + [[package]] name = "bevy_audio" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4de308bd63a2f7a0b77ffeb7cf00cc185ec01393c5db2091fe03964f97152749" +checksum = "478de80ff25cb7decbcb22797774d1597e8c32914e81431c67d64faadc08f84a" dependencies = [ - "anyhow", "bevy_app", "bevy_asset", "bevy_derive", @@ -491,15 +539,14 @@ dependencies = [ "bevy_transform", "bevy_utils", "oboe", - "parking_lot", "rodio", ] [[package]] name = "bevy_core" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d5272321be5fcf5ce2fb16023bc825bb10dfcb71611117296537181ce950f48" +checksum = "025e6800b73048092a55c3611e9327ad4c4c17b60517ec1c0086bb40b4b19ea8" dependencies = [ "bevy_app", "bevy_ecs", @@ -512,15 +559,16 @@ dependencies = [ [[package]] name = "bevy_core_pipeline" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67382fa9c96ce4f4e5833ed7cedd9886844a8f3284b4a717bd4ac738dcdea0c3" +checksum = "2e4b08a2d53ba62d9ec1fca3f7f4e0f556e9f59e1c8e63a4b7c2a18c0701152c" dependencies = [ "bevy_app", "bevy_asset", "bevy_core", "bevy_derive", "bevy_ecs", + "bevy_log", "bevy_math", "bevy_reflect", "bevy_render", @@ -533,20 +581,20 @@ dependencies = [ [[package]] name = "bevy_derive" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a44e4e2784a81430199e4157e02903a987a32127c773985506f020e7d501b62e" +checksum = "24bf40259be12a1a24d9fd536f5ff18d31eeb5665b77e2732899783be6edc5d6" dependencies = [ "bevy_macro_utils", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "bevy_diagnostic" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6babb230dc383c98fdfc9603e3a7a2a49e1e2879dbe8291059ef37dca897932e" +checksum = "41b5a99a9fb6cd7d1eb1714fad193944a0317f0887a15cccb8309c8d37951132" dependencies = [ "bevy_app", "bevy_core", @@ -559,9 +607,9 @@ dependencies = [ [[package]] name = "bevy_ecs" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "266144b36df7e834d5198049e037ecdf2a2310a76ce39ed937d1b0a6a2c4e8c6" +checksum = "ae11a1f467c372b50e9d4b55e78370f5420c9db7416200cc441cc84f08174dd3" dependencies = [ "async-channel", "bevy_ecs_macros", @@ -580,21 +628,21 @@ dependencies = [ [[package]] name = "bevy_ecs_macros" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7157a9c3be038d5008ee3f114feb6cf6b39c1d3d32ee21a7cacb8f81fccdfa80" +checksum = "f642c2b67c4d0daf8edf15074f6351457eb487a34b3de1290c760d8f3ac9ec16" dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "bevy_encase_derive" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0ac0f55ad6bca1be7b0f35bbd5fc95ed3d31e4e9db158fee8e5327f59006001" +checksum = "65b9fb5a62c4e3ab70caaa839470d35fa932001b1b34b08bc7f7f1909bd2b3a7" dependencies = [ "bevy_macro_utils", "encase_derive_impl", @@ -602,9 +650,9 @@ dependencies = [ [[package]] name = "bevy_gilrs" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "65f4d79c55829f8016014593a42453f61a564ffb06ef79460d25696ccdfac67b" +checksum = "ad31cc2c84315e0759d793d6c5bcb7d8789bbc16359c98d1b766e708c1bbae49" dependencies = [ "bevy_app", "bevy_ecs", @@ -618,9 +666,9 @@ dependencies = [ [[package]] name = "bevy_gizmos" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e286a3e7276431963f4aa29165ea5429fa7dbbc6d5c5ba0c531e7dd44ecc88a2" +checksum = "87d1cc978b91f416b23eb16f00e69f95c3a04582021827d8082e92d4725cc510" dependencies = [ "bevy_app", "bevy_asset", @@ -638,11 +686,10 @@ dependencies = [ [[package]] name = "bevy_gltf" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f07494a733dca032e71a20f4b1f423de765da49cbff34406ae6cd813f9b50c41" +checksum = "6f933745c0c86e2c07948def581259b466f99708328657054e956275430ccfd7" dependencies = [ - "anyhow", "base64 0.13.1", "bevy_animation", "bevy_app", @@ -669,9 +716,9 @@ dependencies = [ [[package]] name = "bevy_hierarchy" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "103f8f58416ac6799b8c7f0b418f1fac9eba44fa924df3b0e16b09256b897e3d" +checksum = "64fa240011fce8ee23f9b46e5a26a628a31d7860d6d2e4e0e361bb3ea6d5a703" dependencies = [ "bevy_app", "bevy_core", @@ -684,9 +731,9 @@ dependencies = [ [[package]] name = "bevy_input" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ffbd935401101ac8003f3c3aea70788c65ad03f7a32716a10608bedda7a648bc" +checksum = "9e86e241b3a10b79f65a69205552546723b855d3d4c1bd8261637c076144d32f" dependencies = [ "bevy_app", "bevy_ecs", @@ -698,9 +745,9 @@ dependencies = [ [[package]] name = "bevy_internal" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e0e35a9b2bd29aa784b3cc416bcbf2a298f69f00ca51fd042ea39d9af7fad37e" +checksum = "55124e486814c4d3632d5cfad9c4f4e46d052c028593ec46fef5bfbfb0f840b1" dependencies = [ "bevy_a11y", "bevy_animation", @@ -737,9 +784,9 @@ dependencies = [ [[package]] name = "bevy_log" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "07dcc615ff4f617b06c3f9522fca3c55d56f9644db293318f8ab68fcdea5d4fe" +checksum = "011417debf7868b45932bb97fc0d5bfdeaf9304e324aa94840e2f1e6deeed69d" dependencies = [ "android_log-sys", "bevy_app", @@ -753,21 +800,22 @@ dependencies = [ [[package]] name = "bevy_macro_utils" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "23ddc18d489b4e57832d4958cde7cd2f349f0ad91e5892ac9e2f2ee16546b981" +checksum = "cf6fba87c6d069fcbcd8a48625ca8ab4392ad40d2b260863ce7d641a0f42986d" dependencies = [ + "proc-macro2", "quote", "rustc-hash", - "syn 2.0.38", - "toml_edit", + "syn 2.0.39", + "toml_edit 0.20.7", ] [[package]] name = "bevy_math" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "78286a81fead796dc4b45ab14f4f02fe29a94423d3587bcfef872b2a8e0a474b" +checksum = "752764558a1f429c20704c3b836a019fa308961c43fdfef4f08e339d456c96be" dependencies = [ "glam", "serde", @@ -775,18 +823,18 @@ dependencies = [ [[package]] name = "bevy_mikktspace" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6cfc2a21ea47970a9b1f0f4735af3256a8f204815bd756110051d10f9d909497" +checksum = "b596c41a56f2268ec7cde560edc588bc7b5886e4b49c8b27c4dcc9f7c743424c" dependencies = [ "glam", ] [[package]] name = "bevy_pbr" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63ca796a619e61cd43a0a3b11fde54644f7f0732a1fba1eef5d406248c6eba85" +checksum = "eeb6a35a78d355cc21c10f277dcd171eca65e30a90e76eb89f4dacf606621fe1" dependencies = [ "bevy_app", "bevy_asset", @@ -801,24 +849,27 @@ dependencies = [ "bevy_window", "bitflags 2.4.1", "bytemuck", + "fixedbitset", "naga_oil", "radsort", + "smallvec", + "thread_local", ] [[package]] name = "bevy_ptr" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "72c7586401a46f7d8e436028225c1df5288f2e0082d066b247a82466fea155c6" +checksum = "308a02679f6ce21ef71de20fae6d6a2016c07baa21d8e8d0558e6b7851e8adf2" [[package]] name = "bevy_rapier3d" -version = "0.22.0" +version = "0.23.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "12402872b857ba490f1040ab6212915bd9bf25f8584b31f2c43cef41b33f3be4" +checksum = "c3f0a2641af76c9eb17da0dcb0fb20cd9d615b93b67be0b85f1867487e956b5a" dependencies = [ "bevy", - "bitflags 1.3.2", + "bitflags 2.4.1", "log", "nalgebra", "rapier3d", @@ -826,9 +877,9 @@ dependencies = [ [[package]] name = "bevy_reflect" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0778197a1eb3e095a71417c74b7152ede02975cdc95b5ea4ddc5251ed00a2eb5" +checksum = "cdd56914a8ad57621d7a1a099f7e6b1f7482c9c76cedc9c3d4c175a203939c5d" dependencies = [ "bevy_math", "bevy_ptr", @@ -837,8 +888,6 @@ dependencies = [ "downcast-rs", "erased-serde", "glam", - "once_cell", - "parking_lot", "serde", "smallvec", "smol_str", @@ -847,25 +896,23 @@ dependencies = [ [[package]] name = "bevy_reflect_derive" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "342a4b2d09db22c48607d23ad59a056aff1ee004549050a51d490d375ba29528" +checksum = "25f627907c40ac552f798423447fc331fc1ddacd94c5f7a2a70942eb06bc8447" dependencies = [ "bevy_macro_utils", - "bit-set", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "uuid", ] [[package]] name = "bevy_render" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "39df4824b760928c27afc7b00fb649c7a63c9d76661ab014ff5c86537ee906cb" +checksum = "90d777f4c51bd58e9e40777c6cb8dde0778df7e2c5298b3f9e3455bd12a9856c" dependencies = [ - "anyhow", "async-channel", "bevy_app", "bevy_asset", @@ -896,8 +943,6 @@ dependencies = [ "ktx2", "naga", "naga_oil", - "parking_lot", - "regex", "ruzstd", "serde", "smallvec", @@ -906,28 +951,26 @@ dependencies = [ "wasm-bindgen", "web-sys", "wgpu", - "wgpu-hal", ] [[package]] name = "bevy_render_macros" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0bd08c740aac73363e32fb45af869b10cec65bcb76fe3e6cd0f8f7eebf4c36c9" +checksum = "35b00c3d0abff94a729460fc9aa95c2ceac71b49b3041166bb5ba3098e9657e7" dependencies = [ "bevy_macro_utils", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "bevy_scene" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd47e1263506153bef3a8be97fe2d856f206d315668c4f97510ca6cc181d9681" +checksum = "ba6294396a6375f0b14341d8003408c10aa040e3f833ac8bd49677170ec55d73" dependencies = [ - "anyhow", "bevy_app", "bevy_asset", "bevy_derive", @@ -945,18 +988,18 @@ dependencies = [ [[package]] name = "bevy_shader_mtoon" -version = "0.0.1" +version = "0.0.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0a477f01cbf6074d2ac4eb2fc45d503d72c36cc7b0d594735cc5ba42b13806b1" +checksum = "07cce22c1249576e68a1b227472d6882f1eb8bcbd03402cda86d9dc48b6aa5e0" dependencies = [ "bevy", ] [[package]] name = "bevy_sprite" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68a8ca824fad75c6ef74cfbbba0a4ce3ccc435fa23d6bf3f003f260548813397" +checksum = "b4f7d1f88a6e5497fdafd95c20984a1d1b5517bc39d51600b4988cd60c51837a" dependencies = [ "bevy_app", "bevy_asset", @@ -973,15 +1016,16 @@ dependencies = [ "bytemuck", "fixedbitset", "guillotiere", + "radsort", "rectangle-pack", "thiserror", ] [[package]] name = "bevy_tasks" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c73bbb847c83990d3927005090df52f8ac49332e1643d2ad9aac3cd2974e66bf" +checksum = "3a45be906618192515bc613e46546150089adbb4a82178dc462045acd1e89e92" dependencies = [ "async-channel", "async-executor", @@ -993,12 +1037,11 @@ dependencies = [ [[package]] name = "bevy_text" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "692288ab7b0a9f8b38058964c52789fc6bcb63703b23de51cce90ec41bfca355" +checksum = "c136af700af4f87c94f68d6e019528c371bf09ebf4a8ff7468bb3c73806b34f5" dependencies = [ "ab_glyph", - "anyhow", "bevy_app", "bevy_asset", "bevy_ecs", @@ -1016,9 +1059,9 @@ dependencies = [ [[package]] name = "bevy_time" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3d58d6dbae9c8225d8c0e0f04d2c5dbb71d22adc01ecd5ab3cebc364139e4a6d" +checksum = "b29709cadf22d318a0b7c79f763e9c5ac414292bd0e850066fa935959021b276" dependencies = [ "bevy_app", "bevy_ecs", @@ -1030,22 +1073,23 @@ dependencies = [ [[package]] name = "bevy_transform" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3b9b0ac0149a57cd846cb357a35fc99286f9848e53d4481954608ac9552ed2d4" +checksum = "70262c51e915b6224129206d23823364e650cf5eb5f4b6ce3ee379f608c180d2" dependencies = [ "bevy_app", "bevy_ecs", "bevy_hierarchy", "bevy_math", "bevy_reflect", + "thiserror", ] [[package]] name = "bevy_ui" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "59b6d295a755e5b79e869a09e087029d72974562a521ec7ccfba7141fa948a32" +checksum = "cd5ecbf2dceaab118769dd870e34d780bfde556af561fd10d8d613b0f237297e" dependencies = [ "bevy_a11y", "bevy_app", @@ -1073,15 +1117,16 @@ dependencies = [ [[package]] name = "bevy_utils" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "08d9484e32434ea84dc548cff246ce0c6f756c1336f5ea03f24ac120a48595c7" +checksum = "c8e75d4a34ef0b15dffd1ee9079ef1f0f5139527e192b9d5708b3e158777c753" dependencies = [ "ahash", "bevy_utils_proc_macros", "getrandom", "hashbrown 0.14.2", "instant", + "nonmax", "petgraph", "thiserror", "tracing", @@ -1090,33 +1135,35 @@ dependencies = [ [[package]] name = "bevy_utils_proc_macros" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5391b242c36f556db01d5891444730c83aa9dd648b6a8fd2b755d22cb3bddb57" +checksum = "f7dfd3735a61a1b681ed1e176afe4eae731bbb03e51ad871e9eb39e76a2d170e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] name = "bevy_vrm" -version = "0.0.4" +version = "0.0.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fe943e1ca153b7cac11cb81f435356587303f1faa737537d609621692da6f0f2" +checksum = "58adfb1e2998a6e481e2c80b331228ced637a27dcaed5a4977576927bc5b058f" dependencies = [ "bevy", "bevy_shader_mtoon", "goth-gltf", "nanoserde", + "thiserror", ] [[package]] name = "bevy_window" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bd584c0da7c4ada6557b09f57f30fb7cff21ccedc641473fc391574b4c9b7944" +checksum = "e60d1830b3fbd7db5bfea7ac9fcd0f5e1d1af88c91ab469e697ab176d8b3140b" dependencies = [ + "bevy_a11y", "bevy_app", "bevy_ecs", "bevy_input", @@ -1128,9 +1175,9 @@ dependencies = [ [[package]] name = "bevy_winit" -version = "0.11.3" +version = "0.12.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bfdc044abdb95790c20053e6326760f0a2985f0dcd78613d397bf35f16039d53" +checksum = "7f8294e78c6a1f9c34d36501a377c5d20bf0fa23a0958187bb270187741448ba" dependencies = [ "accesskit_winit", "approx", @@ -1168,7 +1215,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1201,6 +1248,19 @@ dependencies = [ "serde", ] +[[package]] +name = "blake3" +version = "1.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "0231f06152bf547e9c2b5194f247cd97aacf6dcd8b15d8e5ec0663f64580da87" +dependencies = [ + "arrayref", + "arrayvec", + "cc", + "cfg-if", + "constant_time_eq", +] + [[package]] name = "block" version = "0.1.6" @@ -1226,6 +1286,22 @@ dependencies = [ "objc2-encode", ] +[[package]] +name = "blocking" +version = "1.4.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8c36a4d0d48574b3dd360b4b7d95cc651d2b6557b6402848a27d4b228a473e2a" +dependencies = [ + "async-channel", + "async-lock", + "async-task", + "fastrand 2.0.1", + "futures-io", + "futures-lite", + "piper", + "tracing", +] + [[package]] name = "bumpalo" version = "3.14.0" @@ -1249,7 +1325,7 @@ checksum = "965ab7eb5f8f97d2a083c799f3a1b994fc397b2fe2da5d1da1626ce15a39f2b1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1280,9 +1356,9 @@ dependencies = [ [[package]] name = "cached_proc_macro" -version = "0.18.0" +version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7da8245dd5f576a41c3b76247b54c15b0e43139ceeb4f732033e15be7c005176" +checksum = "c878c71c2821aa2058722038a59a67583a4240524687c6028571c9b395ded61f" dependencies = [ "darling", "proc-macro2", @@ -1486,6 +1562,12 @@ version = "0.1.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff" +[[package]] +name = "constant_time_eq" +version = "0.3.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "f7144d30dcf0fafbce74250a3963025d8d52177934239851c917d29f1df280c2" + [[package]] name = "constgebra" version = "0.1.3" @@ -1529,7 +1611,7 @@ dependencies = [ "bitflags 1.3.2", "core-foundation", "core-graphics-types", - "foreign-types", + "foreign-types 0.3.2", "libc", ] @@ -1667,12 +1749,12 @@ dependencies = [ [[package]] name = "d3d12" -version = "0.6.0" +version = "0.7.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d8f0de2f5a8e7bd4a9eec0e3c781992a4ce1724f68aec7d7a3715344de8b39da" +checksum = "e16e44ab292b1dddfdaf7be62cfd8877df52f2f3fde5858d95bab606be259f20" dependencies = [ - "bitflags 1.3.2", - "libloading 0.7.4", + "bitflags 2.4.1", + "libloading 0.8.1", "winapi", ] @@ -1731,7 +1813,7 @@ checksum = "146398d62142a0f35248a608f17edf0dde57338354966d6e41d0eb2d16980ccb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1787,7 +1869,7 @@ checksum = "3fe2568f851fd6144a45fa91cfed8fe5ca8fc0b56ba6797bfc1ed2771b90e37c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -1853,18 +1935,6 @@ dependencies = [ "simd-adler32", ] -[[package]] -name = "filetime" -version = "0.2.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d4029edd3e734da6fe05b6cd7bd2960760a616bd2ddd0d59a0124746d6272af0" -dependencies = [ - "cfg-if", - "libc", - "redox_syscall 0.3.5", - "windows-sys 0.48.0", -] - [[package]] name = "fixedbitset" version = "0.4.2" @@ -1893,7 +1963,28 @@ version = "0.3.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f6f339eb8adc052cd2ca78910fda869aefa38d22d5cb648e6485e4d3fc06f3b1" dependencies = [ - "foreign-types-shared", + "foreign-types-shared 0.1.1", +] + +[[package]] +name = "foreign-types" +version = "0.5.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965" +dependencies = [ + "foreign-types-macros", + "foreign-types-shared 0.3.1", +] + +[[package]] +name = "foreign-types-macros" +version = "0.2.3" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" +dependencies = [ + "proc-macro2", + "quote", + "syn 2.0.39", ] [[package]] @@ -1902,6 +1993,12 @@ version = "0.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "00b0228411908ca8685dba7fc2cdd70ec9990a6e753e89b6ac91a84c40fbaf4b" +[[package]] +name = "foreign-types-shared" +version = "0.3.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b" + [[package]] name = "form_urlencoded" version = "1.2.0" @@ -1911,15 +2008,6 @@ dependencies = [ "percent-encoding", ] -[[package]] -name = "fsevent-sys" -version = "4.1.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2" -dependencies = [ - "libc", -] - [[package]] name = "futures" version = "0.3.29" @@ -1991,7 +2079,7 @@ checksum = "53b153fd91e4b0147f4aced87be237c98248656bb01050b96bf3ee89220a8ddb" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -2157,7 +2245,7 @@ dependencies = [ "inflections", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -2194,21 +2282,21 @@ dependencies = [ [[package]] name = "gpu-alloc" -version = "0.5.4" +version = "0.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22beaafc29b38204457ea030f6fb7a84c9e4dd1b86e311ba0542533453d87f62" +checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.1", "gpu-alloc-types", ] [[package]] name = "gpu-alloc-types" -version = "0.2.0" +version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "54804d0d6bc9d7f26db4eaec1ad10def69b599315f487d32c334a80d1efe67a5" +checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.1", ] [[package]] @@ -2480,26 +2568,6 @@ version = "1.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a" -[[package]] -name = "inotify" -version = "0.9.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f8069d3ec154eb856955c1c0fbffefbf5f3c40a104ec912d4797314c1801abff" -dependencies = [ - "bitflags 1.3.2", - "inotify-sys", - "libc", -] - -[[package]] -name = "inotify-sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb" -dependencies = [ - "libc", -] - [[package]] name = "instant" version = "0.1.12" @@ -2627,26 +2695,6 @@ dependencies = [ "pkg-config", ] -[[package]] -name = "kqueue" -version = "1.0.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c" -dependencies = [ - "kqueue-sys", - "libc", -] - -[[package]] -name = "kqueue-sys" -version = "1.0.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b" -dependencies = [ - "bitflags 1.3.2", - "libc", -] - [[package]] name = "ktx2" version = "0.3.0" @@ -2768,7 +2816,7 @@ dependencies = [ "quote", "rstml", "serde", - "syn 2.0.38", + "syn 2.0.39", "walkdir", ] @@ -2804,7 +2852,7 @@ dependencies = [ "quote", "rstml", "server_fn_macro", - "syn 2.0.38", + "syn 2.0.39", "tracing", "uuid", ] @@ -2911,9 +2959,9 @@ dependencies = [ [[package]] name = "libc" -version = "0.2.149" +version = "0.2.150" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a08173bc88b7955d1b3145aa561539096c421ac8debde8cbc3612ec635fee29b" +checksum = "89d92a4743f9a61002fae18374ed11e7973f530cb3a3255fb354818118b2203c" [[package]] name = "libloading" @@ -2941,6 +2989,17 @@ version = "0.2.8" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4ec2a862134d2a7d32d7983ddcdd1c4923530833c9f2ea1a44fc5fa473989058" +[[package]] +name = "libredox" +version = "0.0.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" +dependencies = [ + "bitflags 2.4.1", + "libc", + "redox_syscall 0.4.1", +] + [[package]] name = "libudev-sys" version = "0.1.4" @@ -3013,7 +3072,7 @@ dependencies = [ "manyhow-macros", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3069,16 +3128,17 @@ dependencies = [ [[package]] name = "metal" -version = "0.24.0" +version = "0.26.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "de11355d1f6781482d027a3b4d4de7825dcedb197bf573e0596d00008402d060" +checksum = "623b5e6cefd76e58f774bd3cc0c6f5c7615c58c03a97815245a25c3c9bdee318" dependencies = [ - "bitflags 1.3.2", + "bitflags 2.4.1", "block", "core-graphics-types", - "foreign-types", + "foreign-types 0.5.0", "log", "objc", + "paste", ] [[package]] @@ -3127,12 +3187,12 @@ dependencies = [ [[package]] name = "naga" -version = "0.12.3" +version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bbcc2e0513220fd2b598e6068608d4462db20322c0e77e47f6f488dfcfc279cb" +checksum = "c1ceaaa4eedaece7e4ec08c55c640ba03dbb73fb812a6570a59bcf1930d0f70e" dependencies = [ "bit-set", - "bitflags 1.3.2", + "bitflags 2.4.1", "codespan-reporting", "hexf-parse", "indexmap 1.9.3", @@ -3148,9 +3208,9 @@ dependencies = [ [[package]] name = "naga_oil" -version = "0.8.2" +version = "0.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8be942a5c21c58b9b0bf4d9b99db3634ddb7a916f8e1d1d0b71820cc4150e56b" +checksum = "a1fa9518ff79ae8a98c3abe3897d873a85561d1b5642981c2245c1c4b9b2429d" dependencies = [ "bit-set", "codespan-reporting", @@ -3159,7 +3219,7 @@ dependencies = [ "naga", "once_cell", "regex", - "regex-syntax 0.6.29", + "regex-syntax 0.7.5", "rustc-hash", "thiserror", "tracing", @@ -3271,23 +3331,10 @@ dependencies = [ ] [[package]] -name = "notify" -version = "6.1.1" +name = "nonmax" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" -dependencies = [ - "bitflags 2.4.1", - "crossbeam-channel", - "filetime", - "fsevent-sys", - "inotify", - "kqueue", - "libc", - "log", - "mio", - "walkdir", - "windows-sys 0.48.0", -] +checksum = "99756f5493e135528f0cd660ac67b4c3a542bb65a3565efe92bb2c2317eb3669" [[package]] name = "ntapi" @@ -3408,7 +3455,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3503,19 +3550,13 @@ version = "1.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "dd8b5dd2ae5ed71462c540258bedcb51965123ad7e7ccf4b9a8cafaa4a63576d" -[[package]] -name = "optional" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978aa494585d3ca4ad74929863093e87cac9790d81fe7aba2b3dc2890643a0fc" - [[package]] name = "orbclient" -version = "0.3.46" +version = "0.3.47" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8378ac0dfbd4e7895f2d2c1f1345cab3836910baf3a300b000d04250f0c8428f" +checksum = "52f0d54bde9774d3a51dcf281a5def240c71996bc6ca05d2c847ec8b2b216166" dependencies = [ - "redox_syscall 0.3.5", + "libredox", ] [[package]] @@ -3640,7 +3681,7 @@ checksum = "4359fd9c9171ec6e8c62926d6faaf553a8dc3f64e1507e76da7911b4f6a04405" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3655,6 +3696,17 @@ version = "0.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8b870d8c151b6f2fb93e84a13146138f05d02ed11c7e7c54f8826aaaf7c9f184" +[[package]] +name = "piper" +version = "0.2.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "668d31b1c4eba19242f2088b2bf3316b82ca31082a8335764db4e083db7485d4" +dependencies = [ + "atomic-waker", + "fastrand 2.0.1", + "futures-io", +] + [[package]] name = "pkg-config" version = "0.3.27" @@ -3690,7 +3742,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ae005bd773ab59b4725093fd7df83fd7892f7d8eafb48dbd7de6e024e4215f9d" dependencies = [ "proc-macro2", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3700,7 +3752,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "7f4c021e1093a56626774e81216a4ce732a735e5bad4868a03f3ed65ca0c3919" dependencies = [ "once_cell", - "toml_edit", + "toml_edit 0.19.15", ] [[package]] @@ -3754,7 +3806,7 @@ checksum = "af066a9c399a26e020ada66a034357a868728e72cd426f3adcd35f80d88d88c8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "version_check", "yansi", ] @@ -3782,7 +3834,7 @@ checksum = "a7b5abe3fe82fdeeb93f44d66a7b444dedf2e4827defb0a8e69c437b2de2ef94" dependencies = [ "quote", "quote-use-macros", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3794,7 +3846,7 @@ dependencies = [ "derive-where", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -3904,6 +3956,12 @@ version = "0.6.29" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1" +[[package]] +name = "regex-syntax" +version = "0.7.5" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "dbb5fb1acd8a1a18b3dd5be62d25485eb770e05afb408a9627d14d451bae12da" + [[package]] name = "regex-syntax" version = "0.8.2" @@ -3953,9 +4011,9 @@ dependencies = [ [[package]] name = "robust" -version = "0.2.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e5864e7ef1a6b7bcf1d6ca3f655e65e724ed3b52546a0d0a663c991522f552ea" +checksum = "cbf4a6aa5f6d6888f39e980649f3ad6b666acdce1d78e95b8a2cb076e687ae30" [[package]] name = "rodio" @@ -3988,7 +4046,7 @@ dependencies = [ "proc-macro2", "proc-macro2-diagnostics", "quote", - "syn 2.0.38", + "syn 2.0.39", "syn_derive", "thiserror", ] @@ -4060,9 +4118,9 @@ checksum = "4c309e515543e67811222dbc9e3dd7e1056279b782e1dacffe4242b718734fb6" [[package]] name = "serde" -version = "1.0.190" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91d3c334ca1ee894a2c6f6ad698fe8c435b76d504b13d436f0685d648d6d96f7" +checksum = "bca2a08484b285dcb282d0f67b26cadc0df8b19f8c12502c13d966bf9482f001" dependencies = [ "serde_derive", ] @@ -4080,13 +4138,13 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.190" +version = "1.0.192" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67c5609f394e5c2bd7fc51efda478004ea80ef42fee983d5c67a65e34f32c0e3" +checksum = "d6c7207fbec9faa48073f3e3074cbe553af6ea512d7c21ba46e434e70ea9fbc1" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4162,7 +4220,7 @@ dependencies = [ "serde_json", "serde_qs", "server_fn_macro_default", - "syn 2.0.38", + "syn 2.0.39", "thiserror", "xxhash-rust", ] @@ -4178,7 +4236,7 @@ dependencies = [ "proc-macro2", "quote", "serde", - "syn 2.0.38", + "syn 2.0.39", "xxhash-rust", ] @@ -4189,7 +4247,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d8aaf8cf1f5dde82d3f37548732a4852f65d5279b4ae40add5a2a3c9e559f662" dependencies = [ "server_fn_macro", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4294,12 +4352,11 @@ dependencies = [ [[package]] name = "spade" -version = "2.2.0" +version = "2.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88e65803986868d2372c582007c39ba89936a36ea5f236bf7a7728dc258f04f9" +checksum = "ab085cfe5486093ca290034bd2d424e283f9725b4bcf8ba5a7f6c7612b59841c" dependencies = [ "num-traits", - "optional", "robust", "smallvec", ] @@ -4345,9 +4402,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.38" +version = "2.0.39" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e96b79aaa137db8f61e26363a0c9b47d8b4ec75da28b7d1d614c2303e232408b" +checksum = "23e78b90f2fcf45d3e842032ce32e3f2d1545ba6636271dcbf24fa306d87be7a" dependencies = [ "proc-macro2", "quote", @@ -4363,7 +4420,7 @@ dependencies = [ "proc-macro-error", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4409,9 +4466,9 @@ dependencies = [ [[package]] name = "taffy" -version = "0.3.17" +version = "0.3.18" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "642c33c68313dd268701fe12e0de45a07e9aa4926c4986d244b511d5fe5c17c2" +checksum = "3c2287b6d7f721ada4cddf61ade5e760b2c6207df041cac9bfaa192897362fd3" dependencies = [ "arrayvec", "grid", @@ -4465,7 +4522,7 @@ checksum = "266b2e40bc00e5a6c09c3584011e08b06f123c00362c92b975ba9843aaaa14b8" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4520,7 +4577,7 @@ checksum = "630bdcf245f78637c13ec01ffae6187cca34625e8c63150d424b59e55af2675e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4565,6 +4622,17 @@ dependencies = [ "winnow", ] +[[package]] +name = "toml_edit" +version = "0.20.7" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "70f427fce4d84c72b5b732388bf4a9f4531b53f74e2887e3ecb2481f68f66d81" +dependencies = [ + "indexmap 2.1.0", + "toml_datetime", + "winnow", +] + [[package]] name = "tower" version = "0.4.13" @@ -4638,7 +4706,7 @@ checksum = "34704c8d6ebcbc939824180af020566b01a7c01f80641264eba0999f6c2b6be7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4730,7 +4798,7 @@ checksum = "f03ca4cb38206e2bef0700092660bb74d696f808514dae47fa1467cbfe26e96e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] [[package]] @@ -4754,7 +4822,6 @@ dependencies = [ name = "unavi-native" version = "0.0.0" dependencies = [ - "bevy", "unavi-app", ] @@ -4939,7 +5006,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-shared", ] @@ -4973,7 +5040,7 @@ checksum = "c5353b8dab669f5e10f5bd76df26a9360c748f054f862ff5f3f8aae0c7fb3907" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -5007,9 +5074,9 @@ dependencies = [ [[package]] name = "wgpu" -version = "0.16.3" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "480c965c9306872eb6255fa55e4b4953be55a8b64d57e61d7ff840d3dcc051cd" +checksum = "ed547920565c56c7a29afb4538ac5ae5048865a5d2f05bff3ad4fbeb921a9a2c" dependencies = [ "arrayvec", "cfg-if", @@ -5031,9 +5098,9 @@ dependencies = [ [[package]] name = "wgpu-core" -version = "0.16.1" +version = "0.17.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8f478237b4bf0d5b70a39898a66fa67ca3a007d79f2520485b8b0c3dfc46f8c2" +checksum = "0f8a44dd301a30ceeed3c27d8c0090433d3da04d7b2a4042738095a424d12ae7" dependencies = [ "arrayvec", "bit-vec", @@ -5054,9 +5121,9 @@ dependencies = [ [[package]] name = "wgpu-hal" -version = "0.16.2" +version = "0.17.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1ecb3258078e936deee14fd4e0febe1cfe9bbb5ffef165cb60218d2ee5eb4448" +checksum = "9a80bf0e3c77399bb52850cb0830af9bad073d5cfcb9dd8253bef8125c42db17" dependencies = [ "android_system_properties", "arrayvec", @@ -5066,7 +5133,6 @@ dependencies = [ "block", "core-graphics-types", "d3d12", - "foreign-types", "glow", "gpu-alloc", "gpu-allocator", @@ -5096,9 +5162,9 @@ dependencies = [ [[package]] name = "wgpu-types" -version = "0.16.1" +version = "0.17.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d0c153280bb108c2979eb5c7391cb18c56642dd3c072e55f52065e13e2a1252a" +checksum = "ee64d7398d0c2f9ca48922c902ef69c42d000c759f3db41e355f4a570b052b67" dependencies = [ "bitflags 2.4.1", "js-sys", @@ -5386,9 +5452,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.5.18" +version = "0.5.19" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "176b6138793677221d420fd2f0aeeced263f197688b36484660da767bca2fa32" +checksum = "829846f3e3db426d4cee4510841b71a8e58aa2a76b1132579487ae430ccd9c7b" dependencies = [ "memchr", ] @@ -5440,20 +5506,20 @@ checksum = "1367295b8f788d371ce2dbc842c7b709c73ee1364d30351dd300ec2203b12377" [[package]] name = "zerocopy" -version = "0.7.21" +version = "0.7.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "686b7e407015242119c33dab17b8f61ba6843534de936d94368856528eae4dcc" +checksum = "8cd369a67c0edfef15010f980c3cbe45d7f651deac2cd67ce097cd801de16557" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.21" +version = "0.7.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "020f3dfe25dfc38dfea49ce62d5d45ecdd7f0d8a724fa63eb36b6eba4ec76806" +checksum = "c2f140bda219a26ccc0cdb03dba58af72590c53b22642577d88a927bc5c87d6b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.38", + "syn 2.0.39", ] diff --git a/app/Cargo.toml b/app/Cargo.toml index 024692876..d67f087eb 100644 --- a/app/Cargo.toml +++ b/app/Cargo.toml @@ -6,8 +6,8 @@ repository.workspace = true edition.workspace = true [dependencies] -bevy = "0.11.3" -bevy_rapier3d = { version = "0.22.0", features = ["simd-stable"] } -bevy_vrm = "0.0.4" +bevy = "0.12.0" +bevy_rapier3d = { version = "0.23.0", features = ["simd-stable"] } +bevy_vrm = "0.0.5" cfg-if = "1.0.0" tracing = "0.1.40" diff --git a/app/examples/demo.rs b/app/examples/demo.rs index 080ddac59..df3e820f3 100644 --- a/app/examples/demo.rs +++ b/app/examples/demo.rs @@ -1,18 +1,11 @@ use std::f32::consts::PI; -use bevy::{ - prelude::*, - render::{ - mesh::VertexAttributeValues, - render_resource::{AddressMode, Extent3d, SamplerDescriptor}, - texture::ImageSampler, - }, -}; -use bevy_rapier3d::prelude::*; +use bevy::{prelude::*, render::mesh::VertexAttributeValues}; +use bevy_rapier3d::prelude::{Real, *}; fn main() { let options = unavi_app::StartOptions { - asset_folder: "../assets".to_string(), + file_path: "../assets".to_string(), callback: Some(Box::new(callback)), ..default() }; @@ -21,8 +14,7 @@ fn main() { } fn callback(app: &mut App) { - app.add_systems(Startup, setup_world) - .add_systems(Update, set_texture_tiled); + app.add_systems(Startup, setup_world); } const GROUND_SIZE: f32 = 40.0; @@ -37,39 +29,40 @@ fn setup_world( mut materials: ResMut>, mut meshes: ResMut>, ) { - let dev_texture = asset_server.load("images/dev/texture_07.png"); - - let ground_texture_scale = GROUND_SIZE / 4.0; + { + let ground_texture = asset_server.load("images/dev/texture_07.png"); + let ground_texture_scale = GROUND_SIZE / 4.0; - let mut ground_mesh = Mesh::from(shape::Plane { - size: GROUND_SIZE, - ..default() - }); + let mut ground_mesh = Mesh::from(shape::Plane { + size: GROUND_SIZE, + ..default() + }); - match ground_mesh.attribute_mut(Mesh::ATTRIBUTE_UV_0).unwrap() { - VertexAttributeValues::Float32x2(uvs) => { - for uv in uvs { - uv[0] *= ground_texture_scale; - uv[1] *= ground_texture_scale; + match ground_mesh.attribute_mut(Mesh::ATTRIBUTE_UV_0).unwrap() { + VertexAttributeValues::Float32x2(uvs) => { + for uv in uvs { + uv[0] *= ground_texture_scale; + uv[1] *= ground_texture_scale; + } } + _ => panic!(), } - _ => panic!(), - } - commands.spawn(( - RigidBody::Fixed, - Collider::cuboid(GROUND_SIZE / 2.0, GROUND_THICKNESS / 2.0, GROUND_SIZE / 2.0), - PbrBundle { - mesh: meshes.add(ground_mesh), - material: materials.add(StandardMaterial { - base_color_texture: Some(dev_texture.clone()), + commands.spawn(( + RigidBody::Fixed, + Collider::cuboid(GROUND_SIZE / 2.0, GROUND_THICKNESS / 2.0, GROUND_SIZE / 2.0), + PbrBundle { + mesh: meshes.add(ground_mesh), + material: materials.add(StandardMaterial { + base_color_texture: Some(ground_texture.clone()), + ..default() + }), + transform: Transform::from_xyz(0.0, -0.1, 0.0), ..default() - }), - transform: Transform::from_xyz(0.0, -0.1, 0.0), - ..default() - }, - RepeatTexture, - )); + }, + RepeatTexture, + )); + } commands.spawn((SceneBundle { scene: asset_server.load("models/catbot.vrm#Scene0"), @@ -125,41 +118,6 @@ fn setup_world( } } -// https://github.com/bevyengine/bevy/issues/399 -pub fn set_texture_tiled( - mut commands: Commands, - repeat_textures: Query<(Entity, &Handle), With>, - mut materials: ResMut>, - mut images: ResMut>, -) { - for (entity, handle) in repeat_textures.iter() { - if let Some(material) = materials.get_mut(handle) { - if let Some(base_color_texture_handle) = &material.base_color_texture { - if let Some(image) = images.get_mut(base_color_texture_handle) { - match &mut image.sampler_descriptor { - ImageSampler::Default => { - image.sampler_descriptor = - ImageSampler::Descriptor(SamplerDescriptor { - address_mode_u: AddressMode::Repeat, - address_mode_v: AddressMode::Repeat, - address_mode_w: AddressMode::Repeat, - ..default() - }); - } - ImageSampler::Descriptor(sampler_descriptor) => { - sampler_descriptor.address_mode_u = AddressMode::Repeat; - sampler_descriptor.address_mode_v = AddressMode::Repeat; - sampler_descriptor.address_mode_w = AddressMode::Repeat; - } - } - - commands.entity(entity).remove::(); - } - } - } - } -} - #[derive(Bundle)] struct PhysShapeBundle { rigid_body: RigidBody, diff --git a/app/src/lib.rs b/app/src/lib.rs index 1417c9a1a..2b34606fd 100644 --- a/app/src/lib.rs +++ b/app/src/lib.rs @@ -9,14 +9,14 @@ mod world; const FIXED_TIMESTEP: f32 = 1.0 / 60.0; pub struct StartOptions { - pub asset_folder: String, + pub file_path: String, pub callback: Option>, } impl Default for StartOptions { fn default() -> Self { Self { - asset_folder: "assets".to_string(), + file_path: "assets".to_string(), callback: None, } } @@ -35,7 +35,7 @@ pub fn start(options: StartOptions) { ..default() }) .set(AssetPlugin { - asset_folder: options.asset_folder, + file_path: options.file_path, ..default() }), RapierPhysicsPlugin::::default(), @@ -46,8 +46,7 @@ pub fn start(options: StartOptions) { player::PlayerPlugin, // bevy::diagnostic::LogDiagnosticsPlugin::default(), // bevy::diagnostic::FrameTimeDiagnosticsPlugin::default(), - )) - .insert_resource(FixedTime::new_from_secs(FIXED_TIMESTEP)); + )); if let Some(callback) = options.callback { callback(&mut app); diff --git a/app/src/player/controls.rs b/app/src/player/controls.rs index 4209dcf83..692b6450b 100644 --- a/app/src/player/controls.rs +++ b/app/src/player/controls.rs @@ -94,7 +94,7 @@ pub fn spawn_player(mut commands: Commands) { } pub fn apply_yaw(mut yaws: EventReader, mut query: Query<&mut Transform, With>) { - if let Some(yaw) = yaws.iter().next() { + if let Some(yaw) = yaws.read().next() { for mut transform in query.iter_mut() { transform.rotation = Quat::from_rotation_y(**yaw); } @@ -105,7 +105,7 @@ pub fn apply_pitch( mut pitches: EventReader, mut query: Query<&mut Transform, With>, ) { - if let Some(pitch) = pitches.iter().next() { + if let Some(pitch) = pitches.read().next() { for mut transform in query.iter_mut() { transform.rotation = Quat::from_rotation_x(**pitch); } @@ -127,7 +127,7 @@ pub fn move_player( look_directions: Query<&LookDirection>, ) { let xz = Vec3::new(1.0, 0.0, 1.0); - let dt = time.raw_elapsed_seconds() - *last_time; + let dt = time.elapsed_seconds() - *last_time; for (mut player, look_entity, mut controller, output) in players.iter_mut() { let look_direction = look_directions @@ -185,7 +185,7 @@ pub fn move_player( player.input = InputState::default(); } - *last_time = time.raw_elapsed_seconds(); + *last_time = time.elapsed_seconds(); } const VOID_LEVEL: f32 = -50.0; diff --git a/app/src/settings/shadows.rs b/app/src/settings/shadows.rs index f71348711..5fe7050da 100644 --- a/app/src/settings/shadows.rs +++ b/app/src/settings/shadows.rs @@ -73,7 +73,7 @@ pub fn set_shadow_config( mut directional_shadow_config: ResMut, mut directional_lights: Query<&mut CascadeShadowConfig, With>, ) { - info!("Updating shadow config to {:?}", settings.shadow_quality); + info!("Setting shadow config to {:?}", settings.shadow_quality); directional_shadow_config.size = settings.shadow_quality.size(); diff --git a/app/src/world/mod.rs b/app/src/world/mod.rs index ac691c064..5189d669e 100644 --- a/app/src/world/mod.rs +++ b/app/src/world/mod.rs @@ -6,8 +6,11 @@ pub struct WorldPlugin; impl Plugin for WorldPlugin { fn build(&self, app: &mut App) { - app.add_systems(Startup, (setup_world, skybox::setup_skybox)) - .add_systems(Update, (skybox::create_skybox, skybox::process_skybox)); + app.add_systems(Startup, (setup_world, skybox::create_skybox)) + .add_systems( + Update, + (skybox::add_skybox_to_cameras, skybox::process_cubemap), + ); } } diff --git a/app/src/world/skybox.rs b/app/src/world/skybox.rs index 16acb94bf..4bda14d09 100644 --- a/app/src/world/skybox.rs +++ b/app/src/world/skybox.rs @@ -2,6 +2,7 @@ use bevy::asset::LoadState; use bevy::core_pipeline::Skybox; use bevy::prelude::*; use bevy::render::render_resource::{TextureViewDescriptor, TextureViewDimension}; +use bevy_vrm::mtoon::MtoonMainCamera; #[derive(Resource)] pub struct Cubemap { @@ -9,38 +10,26 @@ pub struct Cubemap { image_handle: Handle, } -pub fn setup_skybox(mut commands: Commands) { +pub fn create_skybox(asset_server: Res, mut commands: Commands) { commands.insert_resource(Cubemap { is_loaded: false, - image_handle: default(), + image_handle: asset_server.load("images/skybox-1-512.png"), }); } -const SKYBOX_URI: &str = "images/skybox-1-512.png"; - -pub fn create_skybox( - asset_server: Res, +pub fn add_skybox_to_cameras( mut commands: Commands, - mut cubemap: ResMut, - cameras: Query, Without)>, + cubemap: ResMut, + cameras: Query, Without)>, ) { - if cameras.is_empty() { - return; + for camera in cameras.iter() { + commands + .entity(camera) + .insert(Skybox(cubemap.image_handle.clone())); } - - info!("Loading skybox {}", SKYBOX_URI); - - let skybox_handle = asset_server.load(SKYBOX_URI); - - let ent = cameras.single(); - - commands.entity(ent).insert(Skybox(skybox_handle.clone())); - - cubemap.is_loaded = false; - cubemap.image_handle = skybox_handle; } -pub fn process_skybox( +pub fn process_cubemap( asset_server: Res, mut images: ResMut>, mut cubemap: ResMut, @@ -50,27 +39,26 @@ pub fn process_skybox( return; } - if asset_server.get_load_state(cubemap.image_handle.clone_weak()) != LoadState::Loaded { - return; + match asset_server.get_load_state(&cubemap.image_handle) { + Some(load_state) => { + if load_state != LoadState::Loaded { + return; + } + } + None => return, } // Load cubemap - let image = images.get_mut(&cubemap.image_handle); - - let image = match image { + let image = match images.get_mut(&cubemap.image_handle) { Some(image) => image, None => { - warn!("Failed to load skybox image"); + warn!("Failed to get skybox image"); return; } }; - // NOTE: PNGs do not have any metadata that could indicate they contain a cubemap texture, - // so they appear as one texture. The following code reconfigures the texture as necessary. if image.texture_descriptor.array_layer_count() == 1 { - image.reinterpret_stacked_2d_as_array( - image.texture_descriptor.size.height / image.texture_descriptor.size.width, - ); + image.reinterpret_stacked_2d_as_array(image.height() / image.width()); image.texture_view_descriptor = Some(TextureViewDescriptor { dimension: Some(TextureViewDimension::Cube), ..default() diff --git a/assets/images/dev/texture_07.png.meta b/assets/images/dev/texture_07.png.meta new file mode 100644 index 000000000..99bc049a0 --- /dev/null +++ b/assets/images/dev/texture_07.png.meta @@ -0,0 +1,24 @@ +( + meta_format_version: "1.0", + asset: Load( + loader: "bevy_render::texture::image_loader::ImageLoader", + settings: ( + format: FromExtension, + is_srgb: true, + sampler: Descriptor(( + label: None, + address_mode_u: Repeat, + address_mode_v: Repeat, + address_mode_w: Repeat, + mag_filter: Nearest, + min_filter: Nearest, + mipmap_filter: Nearest, + lod_min_clamp: 0.0, + lod_max_clamp: 32.0, + compare: None, + anisotropy_clamp: 1, + border_color: None, + )), + ), + ), +) diff --git a/native/Cargo.toml b/native/Cargo.toml index 2ef301e27..fafbacd36 100644 --- a/native/Cargo.toml +++ b/native/Cargo.toml @@ -6,5 +6,4 @@ repository.workspace = true edition.workspace = true [dependencies] -bevy = "0.11.3" unavi-app = { path = "../app" } diff --git a/native/src/main.rs b/native/src/main.rs index 00d93aca6..3a6e89049 100644 --- a/native/src/main.rs +++ b/native/src/main.rs @@ -2,7 +2,7 @@ fn main() { unavi_app::start(unavi_app::StartOptions { - asset_folder: "../assets".to_string(), + file_path: "../assets".to_string(), ..Default::default() }); }