diff --git a/src/SUMMARY.md b/src/SUMMARY.md index ab7c61c9..102f370d 100644 --- a/src/SUMMARY.md +++ b/src/SUMMARY.md @@ -34,6 +34,7 @@ - [Camera Node](./scene/camera_node.md) - [Decal Node](./scene/decal_node.md) - [Rectangle Node](./scene/rectangle.md) + - [Tile Map](./scene/tilemap.md) - [Custom Node](./scene/custom_node.md) - [Physics](./physics/physics.md) - [Rigid Body](./physics/rigid_body.md) diff --git a/src/code/snippets/Cargo.lock b/src/code/snippets/Cargo.lock index d83bc06f..815fc0fd 100644 --- a/src/code/snippets/Cargo.lock +++ b/src/code/snippets/Cargo.lock @@ -23,9 +23,9 @@ dependencies = [ [[package]] name = "ab_glyph" -version = "0.2.26" +version = "0.2.28" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2e53b0a3d5760cd2ba9b787ae0c6440ad18ee294ff71b05e3381c900a7d16cfd" +checksum = "79faae4620f45232f599d9bc7b290f88247a0834162c4495ab2f02d60004adfb" dependencies = [ "ab_glyph_rasterizer", "owned_ttf_parser", @@ -100,7 +100,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ee91c0c2905bae44f84bfa4e044536541df26b7703fd0888deeb9060fcc44289" dependencies = [ "android-properties", - "bitflags 2.5.0", + "bitflags 2.6.0", "cc", "cesu8", "jni", @@ -152,9 +152,9 @@ dependencies = [ [[package]] name = "anstyle-query" -version = "1.0.3" +version = "1.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a64c907d4e79225ac72e2a354c9ce84d50ebb4586dee56c82b3ee73004f537f5" +checksum = "ad186efb764318d35165f1758e7dcef3b10628e26d41a44bc5550652e6804391" dependencies = [ "windows-sys 0.52.0", ] @@ -198,7 +198,7 @@ checksum = "0ae92a5119aa49cdbcf6b9f893fe4e1d98b04ccbf82ee0584ad948a44a734dea" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -281,7 +281,7 @@ version = "0.69.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a00dc851838a2120612785d195287475a3ac45514741da670b735818822129a0" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "cexpr", "clang-sys", "itertools", @@ -292,7 +292,7 @@ dependencies = [ "regex", "rustc-hash", "shlex", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -315,18 +315,18 @@ checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a" [[package]] name = "bitflags" -version = "2.5.0" +version = "2.6.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cf4b9d6a944f767f8e5e0db018570623c85f3d925ac718db4e06d0187adb21c1" +checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de" dependencies = [ "serde", ] [[package]] name = "bitstream-io" -version = "2.4.2" +version = "2.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "415f8399438eb5e4b2f73ed3152a3448b98149dda642a957ee704e1daa5cf1d8" +checksum = "3dcde5f311c85b8ca30c2e4198d4326bc342c76541590106f5fa4a50946ea499" [[package]] name = "block" @@ -382,7 +382,7 @@ checksum = "1ee891b04274a59bd38b412188e24b849617b2e45a0fd8d057deb63e7403761b" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -399,9 +399,9 @@ checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495" [[package]] name = "bytes" -version = "1.6.0" +version = "1.6.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "514de17de45fdb8dc022b1a7975556c53c86f9f0aa5f534b98977b171857c2c9" +checksum = "a12916984aab3fa6e39d655a33e09c0071eb36d6ab3aea5c2d78551f1df6d952" [[package]] name = "calloop" @@ -409,7 +409,7 @@ version = "0.12.4" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "fba7adb4dd5aa98e5553510223000e7148f621165ec5f9acd7113f6ca4995298" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "log", "polling", "rustix", @@ -463,13 +463,12 @@ dependencies = [ [[package]] name = "cc" -version = "1.0.98" +version = "1.1.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "41c270e7540d725e65ac7f1b212ac8ce349719624d7bcff99f8e2e488e8cf03f" +checksum = "324c74f2155653c90b04f25b2a47a8a631360cb908f92a772695f430c7e31052" dependencies = [ "jobserver", "libc", - "once_cell", ] [[package]] @@ -520,9 +519,9 @@ dependencies = [ [[package]] name = "clang-sys" -version = "1.7.0" +version = "1.8.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "67523a3b4be3ce1989d607a828d036249522dd9c1c8de7f4dd2dae43a37369d1" +checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4" dependencies = [ "glob", "libc", @@ -531,9 +530,9 @@ dependencies = [ [[package]] name = "clap" -version = "4.5.4" +version = "4.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90bc066a67923782aa8515dbaea16946c5bcc5addbd668bb80af688e53e548a0" +checksum = "64acc1846d54c1fe936a78dc189c34e28d3f5afc348403f28ecf53660b9b8462" dependencies = [ "clap_builder", "clap_derive", @@ -541,9 +540,9 @@ dependencies = [ [[package]] name = "clap_builder" -version = "4.5.2" +version = "4.5.9" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae129e2e766ae0ec03484e609954119f123cc1fe650337e155d03b022f24f7b4" +checksum = "6fb8393d67ba2e7bfaf28a23458e4e2b543cc73a99595511eb207fdb8aede942" dependencies = [ "anstream", "anstyle", @@ -553,21 +552,21 @@ dependencies = [ [[package]] name = "clap_derive" -version = "4.5.4" +version = "4.5.8" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "528131438037fd55894f62d6e9f068b8f45ac57ffa77517819645d10aed04f64" +checksum = "2bac35c6dafb060fd4d275d9a4ffae97917c13a6327903a8be2153cd964f7085" dependencies = [ - "heck 0.5.0", + "heck", "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] name = "clap_lex" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98cc8fbded0c607b7ba9dd60cd98df59af97e84d24e49c8557331cfc26d301ce" +checksum = "4b82cf0babdbd58558212896d1a4272303a57bdb245c2bf1147185fb45640e70" [[package]] name = "clipboard-win" @@ -684,9 +683,9 @@ dependencies = [ [[package]] name = "crc32fast" -version = "1.4.0" +version = "1.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b3855a8a784b474f333699ef2bbca9db2c4a1f6d9088a90a2d25b1eb53111eaa" +checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3" dependencies = [ "cfg-if", ] @@ -803,7 +802,7 @@ version = "0.5.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "479dfe1e6737aa9e96c6ac7b69689dc4c32da8383f2c12744739d76afa8b66c4" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "byteorder", "enum-primitive-derive", "num-traits", @@ -826,9 +825,9 @@ dependencies = [ [[package]] name = "document-features" -version = "0.2.8" +version = "0.2.10" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ef5282ad69563b5fc40319526ba27e0e7363d552a896f0297d54f767717f9b95" +checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0" dependencies = [ "litrs", ] @@ -841,9 +840,9 @@ checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2" [[package]] name = "either" -version = "1.12.0" +version = "1.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3dca9240753cf90908d7e4aac30f630662b02aebaa1b58a3cadabdb23385b58b" +checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0" [[package]] name = "enum-primitive-derive" @@ -890,9 +889,9 @@ dependencies = [ [[package]] name = "fast_image_resize" -version = "4.0.0" +version = "4.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "02abb58c39fa9b20678cedabab49e6c4f6ecb7480d7cb5711496b9289184a875" +checksum = "89a06940fe3bab6e93dc275bb8a67cc833b70f4078124e7e7f7352f5c8470e63" dependencies = [ "cfg-if", "document-features", @@ -953,7 +952,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "efe23d02309319171d00d794c9ff48d4f903c0e481375b1b04b017470838af04" dependencies = [ "hashbrown", - "ttf-parser", + "ttf-parser 0.21.1", ] [[package]] @@ -974,7 +973,7 @@ checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -1049,7 +1048,7 @@ checksum = "87750cf4b7a4c0625b1529e4c543c2182106e4dedc60a2a6455e00d212c489ac" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -1094,7 +1093,7 @@ dependencies = [ [[package]] name = "fyrox" version = "0.34.1" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "fyrox-impl", ] @@ -1102,7 +1101,7 @@ dependencies = [ [[package]] name = "fyrox-animation" version = "0.2.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "fxhash", "fyrox-core", @@ -1124,13 +1123,13 @@ dependencies = [ [[package]] name = "fyrox-core" version = "0.28.1" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "android-activity", "arrayvec", "base64 0.22.1", "bincode", - "bitflags 2.5.0", + "bitflags 2.6.0", "bytemuck", "byteorder", "futures", @@ -1157,7 +1156,7 @@ dependencies = [ [[package]] name = "fyrox-core-derive" version = "0.23.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "convert_case", "darling", @@ -1170,7 +1169,7 @@ dependencies = [ [[package]] name = "fyrox-graph" version = "0.1.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "fxhash", "fyrox-core", @@ -1180,10 +1179,10 @@ dependencies = [ [[package]] name = "fyrox-impl" version = "0.34.1" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "base64 0.22.1", - "bitflags 2.5.0", + "bitflags 2.6.0", "bytemuck", "clap", "ddsfile", @@ -1238,7 +1237,7 @@ dependencies = [ [[package]] name = "fyrox-math" version = "0.2.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "arrayvec", "bytemuck", @@ -1251,7 +1250,7 @@ dependencies = [ [[package]] name = "fyrox-resource" version = "0.12.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "fxhash", "fyrox-core", @@ -1264,7 +1263,7 @@ dependencies = [ [[package]] name = "fyrox-sound" version = "0.35.0" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "fyrox-core", "fyrox-resource", @@ -1281,7 +1280,7 @@ dependencies = [ [[package]] name = "fyrox-ui" version = "0.25.1" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "bytemuck", "copypasta", @@ -1302,7 +1301,7 @@ dependencies = [ [[package]] name = "fyroxed_base" version = "0.21.1" -source = "git+https://github.com/FyroxEngine/Fyrox?rev=542c72447b6c2df68cd7151aefa8fb00c80c2bda#542c72447b6c2df68cd7151aefa8fb00c80c2bda" +source = "git+https://github.com/FyroxEngine/Fyrox?rev=c865306042407c686cf53c83c7d9c2471a460b3e#c865306042407c686cf53c83c7d9c2471a460b3e" dependencies = [ "cargo_metadata", "fyrox", @@ -1387,7 +1386,7 @@ version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "18fcd4ae4e86d991ad1300b8f57166e5be0c95ef1f63f3f5b827f8a164548746" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "cfg_aliases", "cgl", "core-foundation", @@ -1467,12 +1466,6 @@ dependencies = [ "allocator-api2", ] -[[package]] -name = "heck" -version = "0.4.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "95505c38b4572b2d910cecb0281560f54b440a19336cbbcb27bf6ce6adc6f5a8" - [[package]] name = "heck" version = "0.5.0" @@ -1485,6 +1478,12 @@ version = "0.3.9" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d231dfb89cfffdbc30e7fc41579ed6066ad03abda9e567ccafae602b97ec5024" +[[package]] +name = "hermit-abi" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc" + [[package]] name = "hound" version = "3.5.1" @@ -1635,7 +1634,7 @@ checksum = "c34819042dc3d3971c46c2190835914dfbe0c3c13f61449b2997f4e9722dfa60" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -1758,9 +1757,9 @@ checksum = "10257499f089cd156ad82d0a9cd57d9501fa2c989068992a97eb3c27836f206b" [[package]] name = "lazy_static" -version = "1.4.0" +version = "1.5.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e2abad23fbc42b3700f2f279844dc832adb2b2eb069b2df918f455c4e18cc646" +checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe" [[package]] name = "lazycell" @@ -1804,12 +1803,12 @@ dependencies = [ [[package]] name = "libloading" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0c2a198fb6b0eada2a8df47933734e6d35d350665a33a3593d7164fa52c75c19" +checksum = "e310b3a6b5907f99202fcdb4960ff45b93735d7c7d96b760fcff8db2dc0e103d" dependencies = [ "cfg-if", - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -1824,7 +1823,7 @@ version = "0.0.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "3af92c55d7d839293953fcd0fda5ecfe93297cfde6ffbdec13b41d99c0ba6607" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "libc", "redox_syscall 0.4.1", ] @@ -1867,9 +1866,9 @@ dependencies = [ [[package]] name = "log" -version = "0.4.21" +version = "0.4.22" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "90ed8c1e510134f979dbc4f070f87d4313098b704861a105fe34231c70a3901c" +checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24" [[package]] name = "loop9" @@ -1911,9 +1910,9 @@ dependencies = [ [[package]] name = "memchr" -version = "2.7.2" +version = "2.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6c8640c5d730cb13ebd907d8d04b52f55ac9a2eec55b440c8892f40d56c76c1d" +checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3" [[package]] name = "memmap2" @@ -1941,9 +1940,9 @@ checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" [[package]] name = "miniz_oxide" -version = "0.7.3" +version = "0.7.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87dfd01fe195c66b572b37921ad8803d010623c0aca821bea2302239d155cdae" +checksum = "b8a240ddb74feaf34a79a7add65a741f3167852fba007066dcac1ca548d89c08" dependencies = [ "adler", "simd-adler32", @@ -1963,9 +1962,9 @@ dependencies = [ [[package]] name = "nalgebra" -version = "0.32.5" +version = "0.32.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3ea4908d4f23254adda3daa60ffef0f1ac7b8c3e9a864cf3cc154b251908a2ef" +checksum = "7b5c17de023a86f59ed79891b2e5d5a94c705dbe904a5b5c9c952ea6221b03e4" dependencies = [ "approx", "bytemuck", @@ -1981,13 +1980,13 @@ dependencies = [ [[package]] name = "nalgebra-macros" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "91761aed67d03ad966ef783ae962ef9bbaca728d2dd7ceb7939ec110fffad998" +checksum = "254a5372af8fc138e36684761d3c0cdb758a4410e938babcff1c860ce14ddbfc" dependencies = [ "proc-macro2", "quote", - "syn 1.0.109", + "syn 2.0.71", ] [[package]] @@ -1996,7 +1995,7 @@ version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "jni-sys", "log", "ndk-sys", @@ -2049,7 +2048,7 @@ version = "6.1.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "6205bd8bb1e454ad2e27422015fb5e4f2bcc7e08fa8f27058670d208324a4d2d" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "crossbeam-channel", "filetime", "fsevent-sys", @@ -2087,9 +2086,9 @@ dependencies = [ [[package]] name = "num-bigint" -version = "0.4.5" +version = "0.4.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c165a9ab64cf766f73521c0dd2cfdff64f488b8f0b3e621face3462d3db536d7" +checksum = "a5e44f723f1133c9deac646763579fdb3ac745e418f2a7af9cd0c431da1f20b9" dependencies = [ "num-integer", "num-traits", @@ -2113,7 +2112,7 @@ checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -2163,7 +2162,7 @@ version = "1.16.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "4161fcb6d602d4d2081af7c3a45852d875a03dd337a6bfdd6e06407b61342a43" dependencies = [ - "hermit-abi", + "hermit-abi 0.3.9", "libc", ] @@ -2185,7 +2184,7 @@ dependencies = [ "proc-macro-crate", "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -2210,9 +2209,9 @@ dependencies = [ [[package]] name = "objc-sys" -version = "0.3.3" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da284c198fb9b7b0603f8635185e85fbd5b64ee154b1ed406d489077de2d6d60" +checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310" [[package]] name = "objc2" @@ -2256,9 +2255,9 @@ checksum = "3fdb12b2476b595f9358c5161aa467c2438859caa136dec86c26fdd2efe17b92" [[package]] name = "open" -version = "5.1.3" +version = "5.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "2eb49fbd5616580e9974662cb96a3463da4476e649a7e4b258df0de065db0657" +checksum = "61a877bf6abd716642a53ef1b89fb498923a4afca5c754f9050b4d081c05c4b3" dependencies = [ "is-wsl", "libc", @@ -2285,18 +2284,18 @@ dependencies = [ [[package]] name = "owned_ttf_parser" -version = "0.21.0" +version = "0.24.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6b41438d2fc63c46c74a2203bf5ccd82c41ba04347b2fcf5754f230b167067d5" +checksum = "490d3a563d3122bf7c911a59b0add9389e5ec0f5f0c3ac6b91ff235a0e6a7f90" dependencies = [ - "ttf-parser", + "ttf-parser 0.24.0", ] [[package]] name = "parking_lot" -version = "0.12.2" +version = "0.12.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7e4af0ca4f6caed20e900d564c242b8e5d4903fdacf31d3daf527b66fe6f42fb" +checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27" dependencies = [ "lock_api", "parking_lot_core", @@ -2310,9 +2309,9 @@ checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8" dependencies = [ "cfg-if", "libc", - "redox_syscall 0.5.1", + "redox_syscall 0.5.3", "smallvec", - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -2410,13 +2409,13 @@ dependencies = [ [[package]] name = "polling" -version = "3.7.0" +version = "3.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "645493cf344456ef24219d02a768cf1fb92ddf8c92161679ae3d91b91a637be3" +checksum = "a3ed00ed3fbf728b5816498ecd316d1716eecaced9c0c8d2c5a6740ca214985b" dependencies = [ "cfg-if", "concurrent-queue", - "hermit-abi", + "hermit-abi 0.4.0", "pin-project-lite", "rustix", "tracing", @@ -2431,9 +2430,9 @@ checksum = "5b40af805b3121feab8a3c29f04d8ad262fa8e0561883e7653e024ae4479e6de" [[package]] name = "primal-check" -version = "0.3.3" +version = "0.3.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9df7f93fd637f083201473dab4fee2db4c429d32e55e3299980ab3957ab916a0" +checksum = "dc0d895b311e3af9902528fbb8f928688abbd95872819320517cc24ca6b2bd08" dependencies = [ "num-integer", ] @@ -2449,9 +2448,9 @@ dependencies = [ [[package]] name = "proc-macro2" -version = "1.0.82" +version = "1.0.86" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8ad3d49ab951a01fbaafe34f2ec74122942fe18a3f9814c3268f1bb72042131b" +checksum = "5e719e8df665df0d1c8fbfd238015744736151d4445ec0836b8e628aae103b77" dependencies = [ "unicode-ident", ] @@ -2472,7 +2471,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8021cf59c8ec9c432cfc2526ac6b8aa508ecaf29cd415f271b8406c1b851c3fd" dependencies = [ "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -2492,9 +2491,9 @@ checksum = "a993555f31e5a609f617c12db6250dedcac1b0a85076912c436e6fc9b2c8e6a3" [[package]] name = "quick-xml" -version = "0.31.0" +version = "0.34.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1004a344b30a54e2ee58d66a71b32d2db2feb0a31f9a2d302bf0536f15de2a33" +checksum = "6f24d770aeca0eacb81ac29dfbc55ebcc09312fdd1f8bbecdc7e4a84e000e3b4" dependencies = [ "memchr", ] @@ -2733,18 +2732,18 @@ dependencies = [ [[package]] name = "redox_syscall" -version = "0.5.1" +version = "0.5.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "469052894dcb553421e483e4209ee581a45100d31b4018de03e5a7ad86374a7e" +checksum = "2a908a6e00f1fdd0dfd9c0eb08ce85126f6d8bbda50017e74bc4a4b7d4a926a4" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", ] [[package]] name = "regex" -version = "1.10.4" +version = "1.10.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c117dbdfde9c8308975b6a18d71f3f385c89461f7b3fb054288ecf2a2058ba4c" +checksum = "b91213439dad192326a0d7c6ee3955910425f441d7038e0d6933b0aec5c4517f" dependencies = [ "aho-corasick", "memchr", @@ -2754,9 +2753,9 @@ dependencies = [ [[package]] name = "regex-automata" -version = "0.4.6" +version = "0.4.7" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86b83b8b9847f9bf95ef68afb0b8e6cdb80f498442f5179a29fad448fcc1eaea" +checksum = "38caf58cc5ef2fed281f89292ef23f6365465ed9a41b7a7754eb4e26496c92df" dependencies = [ "aho-corasick", "memchr", @@ -2765,15 +2764,15 @@ dependencies = [ [[package]] name = "regex-syntax" -version = "0.8.3" +version = "0.8.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "adad44e29e4c806119491a7f06f03de4d1af22c3a680dd47f1e6e179439d1f56" +checksum = "7a66a03ae7c801facd77a29370b4faec201768915ac14a721ba36f20bc9c209b" [[package]] name = "rgb" -version = "0.8.44" +version = "0.8.45" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1aee83dc281d5a3200d37b299acd13b81066ea126a7f16f0eae70fc9aed241d9" +checksum = "ade4539f42266ded9e755c605bdddf546242b2c961b03b06a7375260788a0523" dependencies = [ "bytemuck", ] @@ -2791,7 +2790,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94" dependencies = [ "base64 0.21.7", - "bitflags 2.5.0", + "bitflags 2.6.0", "serde", "serde_derive", ] @@ -2841,7 +2840,7 @@ version = "0.38.34" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "70dc5ec042f7a43c4a73241207cecc9873a06d45debb38b329f8541d85c2730f" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "errno", "libc", "linux-raw-sys", @@ -2862,9 +2861,9 @@ checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f" [[package]] name = "safe_arch" -version = "0.7.1" +version = "0.7.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f398075ce1e6a179b46f51bd88d0598b92b00d3551f1a2d4ac49e771b56ac354" +checksum = "c3460605018fdc9612bce72735cba0d27efbcd9904780d44c7e3a9948f96148a" dependencies = [ "bytemuck", ] @@ -2892,9 +2891,9 @@ checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49" [[package]] name = "sctk-adwaita" -version = "0.8.1" +version = "0.8.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82b2eaf3a5b264a521b988b2e73042e742df700c4f962cde845d1541adb46550" +checksum = "70b31447ca297092c5a9916fc3b955203157b37c19ca8edde4f52e9843e602c7" dependencies = [ "ab_glyph", "log", @@ -2914,9 +2913,9 @@ dependencies = [ [[package]] name = "serde" -version = "1.0.202" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "226b61a0d411b2ba5ff6d7f73a476ac4f8bb900373459cd00fab8512828ba395" +checksum = "bc76f558e0cbb2a839d37354c575f1dc3fdc6546b5be373ba43d95f231bf7c12" dependencies = [ "serde_derive", ] @@ -2934,20 +2933,20 @@ dependencies = [ [[package]] name = "serde_derive" -version = "1.0.202" +version = "1.0.204" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6048858004bcff69094cd972ed40a32500f153bd3be9f716b2eed2e8217c4838" +checksum = "e0cd7e117be63d3c3678776753929474f3b04a43a080c744d6b0ae2a8c28e222" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] name = "serde_json" -version = "1.0.117" +version = "1.0.120" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "455182ea6142b14f93f4bc5320a2b31c1f266b66a4a5c858b013302a5d8cbfc3" +checksum = "4e0d21c9a8cae1235ad58a00c11cb40d4b1e5c784f1ef2c537876ed6ffd8b7c5" dependencies = [ "itoa", "ryu", @@ -3027,7 +3026,7 @@ version = "0.18.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "922fd3eeab3bd820d76537ce8f582b1cf951eceb5475c28500c7457d9d17f53a" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "calloop", "calloop-wayland-source", "cursor-icon", @@ -3068,9 +3067,9 @@ dependencies = [ [[package]] name = "spade" -version = "2.7.0" +version = "2.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68330712eea6ce4123e2a732769ed19bba1f007fd2636cbdc6e6be2af8b606a4" +checksum = "9f4ec45f91925e2c9ab3b6a857ee9ed36916990df76a1c475d783a328e247cc8" dependencies = [ "hashbrown", "num-traits", @@ -3113,21 +3112,21 @@ checksum = "7da8b5736845d9f2fcb837ea5d9e2628564b3b043a70948a3f0b778838c5fb4f" [[package]] name = "strum" -version = "0.26.2" +version = "0.26.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5d8cec3501a5194c432b2b7976db6b7d10ec95c253208b45f83f7136aa985e29" +checksum = "8fec0f0aef304996cf250b31b5a10dee7980c85da9d759361292b8bca5a18f06" [[package]] name = "strum_macros" -version = "0.26.2" +version = "0.26.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c6cf59daf282c0a494ba14fd21610a0325f9f90ec9d1231dea26bcb1d696c946" +checksum = "4c6bee85a5a24955dc440386795aa378cd9cf82acd5f764469152d2270e581be" dependencies = [ - "heck 0.4.1", + "heck", "proc-macro2", "quote", "rustversion", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -3143,9 +3142,9 @@ dependencies = [ [[package]] name = "syn" -version = "2.0.64" +version = "2.0.71" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7ad3dee41f36859875573074334c200d1add8e4a87bb37113ebd31d926b7b11f" +checksum = "b146dcf730474b4bcd16c311627b31ede9ab149045db4d6088b3becaea046462" dependencies = [ "proc-macro2", "quote", @@ -3174,7 +3173,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a3e535eb8dded36d55ec13eddacd30dec501792ff23a0b1682c38601b8cf2349" dependencies = [ "cfg-expr", - "heck 0.5.0", + "heck", "pkg-config", "toml", "version-compare", @@ -3194,22 +3193,22 @@ checksum = "5488807ecc13530932d661bc4ea7ea621080fdbf354b7f54506fcc46d4d63bf5" [[package]] name = "thiserror" -version = "1.0.61" +version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c546c80d6be4bc6a00c0f01730c08df82eaa7a7a61f11d656526506112cc1709" +checksum = "f2675633b1499176c2dff06b0856a27976a8f9d436737b4cf4f312d4d91d8bbb" dependencies = [ "thiserror-impl", ] [[package]] name = "thiserror-impl" -version = "1.0.61" +version = "1.0.62" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "46c3384250002a6d5af4d114f2845d37b57521033f30d5c3f46c4d70e1197533" +checksum = "d20468752b09f49e909e55a5d338caa8bedf615594e9d80bc4c565d30faf798c" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] @@ -3267,9 +3266,9 @@ dependencies = [ [[package]] name = "tinyvec" -version = "1.6.0" +version = "1.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87cc5ceb3875bb20c2890005a4e226a4651264a5c75edb2421b52861a0a0cb50" +checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938" dependencies = [ "tinyvec_macros", ] @@ -3282,14 +3281,14 @@ checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20" [[package]] name = "toml" -version = "0.8.13" +version = "0.8.14" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a4e43f8cc456c9704c851ae29c67e17ef65d2c30017c17a9765b89c382dc8bba" +checksum = "6f49eb2ab21d2f26bd6db7bf383edc527a7ebaee412d17af4d40fdccd442f335" dependencies = [ "serde", "serde_spanned", "toml_datetime", - "toml_edit 0.22.13", + "toml_edit 0.22.15", ] [[package]] @@ -3314,15 +3313,15 @@ dependencies = [ [[package]] name = "toml_edit" -version = "0.22.13" +version = "0.22.15" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c127785850e8c20836d49732ae6abfa47616e60bf9d9f57c43c250361a9db96c" +checksum = "d59a3a72298453f564e2b111fa896f8d07fabb36f51f06d7e875fc5e0b5a3ef1" dependencies = [ "indexmap", "serde", "serde_spanned", "toml_datetime", - "winnow 0.6.9", + "winnow 0.6.13", ] [[package]] @@ -3357,6 +3356,12 @@ version = "0.21.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8" +[[package]] +name = "ttf-parser" +version = "0.24.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "8686b91785aff82828ed725225925b33b4fde44c4bb15876e5f7c832724c420a" + [[package]] name = "typenum" version = "1.17.0" @@ -3377,15 +3382,15 @@ checksum = "d4c87d22b6e3f4a18d4d40ef354e97c90fcb14dd91d7dc0aa9d8a1172ebf7202" [[package]] name = "utf8parse" -version = "0.2.1" +version = "0.2.2" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "711b9620af191e0cdc7468a8d14e709c3dcdb115b36f838e601583af800a370a" +checksum = "06abde3611657adf66d383f00b093d7faecc7fa57071cce2578660c9f1010821" [[package]] name = "uuid" -version = "1.8.0" +version = "1.10.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a183cf7feeba97b4dd1c0d46788634f6221d87fa961b305bed08c851829efcc0" +checksum = "81dfa00651efa65069b0b6b651f4aaa31ba9e3c3ce0137aaad053604ee7e0314" dependencies = [ "getrandom", "serde", @@ -3462,7 +3467,7 @@ dependencies = [ "once_cell", "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", "wasm-bindgen-shared", ] @@ -3496,7 +3501,7 @@ checksum = "e94f17b526d0a461a191c78ea52bbce64071ed5c04c9ffe424dcb38f74171bb7" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", "wasm-bindgen-backend", "wasm-bindgen-shared", ] @@ -3509,9 +3514,9 @@ checksum = "af190c94f2773fdb3729c55b007a722abb5384da03bc0986df4c289bf5567e96" [[package]] name = "wayland-backend" -version = "0.3.3" +version = "0.3.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9d50fa61ce90d76474c87f5fc002828d81b32677340112b4ef08079a9d459a40" +checksum = "269c04f203640d0da2092d1b8d89a2d081714ae3ac2f1b53e99f205740517198" dependencies = [ "cc", "downcast-rs", @@ -3523,11 +3528,11 @@ dependencies = [ [[package]] name = "wayland-client" -version = "0.31.2" +version = "0.31.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "82fb96ee935c2cea6668ccb470fb7771f6215d1691746c2d896b447a00ad3f1f" +checksum = "08bd0f46c069d3382a36c8666c1b9ccef32b8b04f41667ca1fef06a1adcc2982" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "rustix", "wayland-backend", "wayland-scanner", @@ -3539,16 +3544,16 @@ version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "625c5029dbd43d25e6aa9615e88b829a5cad13b2819c4ae129fdbb7c31ab4c7e" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "cursor-icon", "wayland-backend", ] [[package]] name = "wayland-cursor" -version = "0.31.1" +version = "0.31.4" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "71ce5fa868dd13d11a0d04c5e2e65726d0897be8de247c0c5a65886e283231ba" +checksum = "09414bcf0fd8d9577d73e9ac4659ebc45bcc9cff1980a350543ad8e50ee263b2" dependencies = [ "rustix", "wayland-client", @@ -3561,7 +3566,7 @@ version = "0.31.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "8f81f365b8b4a97f422ac0e8737c438024b5951734506b0e1d775c73030561f4" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "wayland-backend", "wayland-client", "wayland-scanner", @@ -3573,7 +3578,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "23803551115ff9ea9bce586860c5c5a971e360825a0309264102a9495a5ff479" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "wayland-backend", "wayland-client", "wayland-protocols", @@ -3586,7 +3591,7 @@ version = "0.2.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "ad1f61b76b6c2d8742e10f9ba5c3737f6530b4c243132c2a2ccc8aa96fe25cd6" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "wayland-backend", "wayland-client", "wayland-protocols", @@ -3595,9 +3600,9 @@ dependencies = [ [[package]] name = "wayland-scanner" -version = "0.31.1" +version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "63b3a62929287001986fb58c789dce9b67604a397c15c611ad9f747300b6c283" +checksum = "edf466fc49a4feb65a511ca403fec3601494d0dee85dbf37fff6fa0dd4eec3b6" dependencies = [ "proc-macro2", "quick-xml", @@ -3606,9 +3611,9 @@ dependencies = [ [[package]] name = "wayland-sys" -version = "0.31.1" +version = "0.31.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15a0c8eaff5216d07f226cb7a549159267f3467b289d9a2e52fd3ef5aae2b7af" +checksum = "4a6754825230fa5b27bafaa28c30b3c9e72c55530581220cef401fa422c0fae7" dependencies = [ "dlib", "log", @@ -3644,9 +3649,9 @@ checksum = "53a85b86a771b1c87058196170769dd264f66c0782acf1ae6cc51bfd64b39082" [[package]] name = "wide" -version = "0.7.19" +version = "0.7.25" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "aab6594190de06d718a5dbc5fa781ab62f8903797056480e549ca74add6b7065" +checksum = "2caba658a80831539b30698ae9862a72db6697dfdd7151e46920f5f2755c3ce2" dependencies = [ "bytemuck", "safe_arch", @@ -3707,7 +3712,7 @@ version = "0.52.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d" dependencies = [ - "windows-targets 0.52.5", + "windows-targets 0.52.6", ] [[package]] @@ -3742,18 +3747,18 @@ dependencies = [ [[package]] name = "windows-targets" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "6f0713a46559409d202e70e28227288446bf7841d3211583a4b53e3f6d96e7eb" +checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973" dependencies = [ - "windows_aarch64_gnullvm 0.52.5", - "windows_aarch64_msvc 0.52.5", - "windows_i686_gnu 0.52.5", + "windows_aarch64_gnullvm 0.52.6", + "windows_aarch64_msvc 0.52.6", + "windows_i686_gnu 0.52.6", "windows_i686_gnullvm", - "windows_i686_msvc 0.52.5", - "windows_x86_64_gnu 0.52.5", - "windows_x86_64_gnullvm 0.52.5", - "windows_x86_64_msvc 0.52.5", + "windows_i686_msvc 0.52.6", + "windows_x86_64_gnu 0.52.6", + "windows_x86_64_gnullvm 0.52.6", + "windows_x86_64_msvc 0.52.6", ] [[package]] @@ -3770,9 +3775,9 @@ checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8" [[package]] name = "windows_aarch64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "7088eed71e8b8dda258ecc8bac5fb1153c5cffaf2578fc8ff5d61e23578d3263" +checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3" [[package]] name = "windows_aarch64_msvc" @@ -3788,9 +3793,9 @@ checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc" [[package]] name = "windows_aarch64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9985fd1504e250c615ca5f281c3f7a6da76213ebd5ccc9561496568a2752afb6" +checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469" [[package]] name = "windows_i686_gnu" @@ -3806,15 +3811,15 @@ checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e" [[package]] name = "windows_i686_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88ba073cf16d5372720ec942a8ccbf61626074c6d4dd2e745299726ce8b89670" +checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b" [[package]] name = "windows_i686_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "87f4261229030a858f36b459e748ae97545d6f1ec60e5e0d6a3d32e0dc232ee9" +checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66" [[package]] name = "windows_i686_msvc" @@ -3830,9 +3835,9 @@ checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406" [[package]] name = "windows_i686_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "db3c2bf3d13d5b658be73463284eaf12830ac9a26a90c717b7f771dfe97487bf" +checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66" [[package]] name = "windows_x86_64_gnu" @@ -3848,9 +3853,9 @@ checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e" [[package]] name = "windows_x86_64_gnu" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e4246f76bdeff09eb48875a0fd3e2af6aada79d409d33011886d3e1581517d9" +checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78" [[package]] name = "windows_x86_64_gnullvm" @@ -3866,9 +3871,9 @@ checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc" [[package]] name = "windows_x86_64_gnullvm" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "852298e482cd67c356ddd9570386e2862b5673c85bd5f88df9ab6802b334c596" +checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d" [[package]] name = "windows_x86_64_msvc" @@ -3884,9 +3889,9 @@ checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538" [[package]] name = "windows_x86_64_msvc" -version = "0.52.5" +version = "0.52.6" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "bec47e5bfd1bff0eeaf6d8b485cc1074891a197ab4225d504cb7a1ab88b02bf0" +checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec" [[package]] name = "winit" @@ -3897,7 +3902,7 @@ dependencies = [ "ahash", "android-activity", "atomic-waker", - "bitflags 2.5.0", + "bitflags 2.6.0", "bytemuck", "calloop", "cfg_aliases", @@ -3949,9 +3954,9 @@ dependencies = [ [[package]] name = "winnow" -version = "0.6.9" +version = "0.6.13" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "86c949fede1d13936a99f14fafd3e76fd642b556dd2ce96287fbe2e0151bfac6" +checksum = "59b5e5f6c299a3c7890b876a2a587f3115162487e704907d9b6cd29473052ba1" dependencies = [ "memchr", ] @@ -4010,7 +4015,7 @@ version = "0.4.2" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5" dependencies = [ - "bitflags 2.5.0", + "bitflags 2.6.0", "dlib", "log", "once_cell", @@ -4019,9 +4024,9 @@ dependencies = [ [[package]] name = "xkeysym" -version = "0.2.0" +version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "054a8e68b76250b253f671d1268cb7f1ae089ec35e195b2efb2a4e9a836d0621" +checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56" [[package]] name = "xml-rs" @@ -4031,22 +4036,22 @@ checksum = "791978798f0597cfc70478424c2b4fdc2b7a8024aaff78497ef00f24ef674193" [[package]] name = "zerocopy" -version = "0.7.34" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ae87e3fcd617500e5d106f0380cf7b77f3c6092aae37191433159dda23cfb087" +checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0" dependencies = [ "zerocopy-derive", ] [[package]] name = "zerocopy-derive" -version = "0.7.34" +version = "0.7.35" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "15e934569e47891f7d9411f1a451d947a60e000ab3bd24fbb970f000387d1b3b" +checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e" dependencies = [ "proc-macro2", "quote", - "syn 2.0.64", + "syn 2.0.71", ] [[package]] diff --git a/src/code/snippets/Cargo.toml b/src/code/snippets/Cargo.toml index 365a0440..6b2b0e27 100644 --- a/src/code/snippets/Cargo.toml +++ b/src/code/snippets/Cargo.toml @@ -4,7 +4,7 @@ version = "0.1.0" edition = "2021" [dependencies] -fyrox = { git = "https://github.com/FyroxEngine/Fyrox", rev = "542c72447b6c2df68cd7151aefa8fb00c80c2bda" } -fyroxed_base = { git = "https://github.com/FyroxEngine/Fyrox", rev = "542c72447b6c2df68cd7151aefa8fb00c80c2bda" } +fyrox = { git = "https://github.com/FyroxEngine/Fyrox", rev = "c865306042407c686cf53c83c7d9c2471a460b3e" } +fyroxed_base = { git = "https://github.com/FyroxEngine/Fyrox", rev = "c865306042407c686cf53c83c7d9c2471a460b3e" } strum = "0.26.0" strum_macros = "0.26.0" \ No newline at end of file diff --git a/src/code/snippets/src/scene/mod.rs b/src/code/snippets/src/scene/mod.rs index 5dfc3346..8b76b490 100644 --- a/src/code/snippets/src/scene/mod.rs +++ b/src/code/snippets/src/scene/mod.rs @@ -16,6 +16,7 @@ pub mod rigid_body; pub mod sound; pub mod sprite; pub mod terrain; +pub mod tilemap; use fyrox::core::color::Color; use fyrox::core::pool::Handle; diff --git a/src/code/snippets/src/scene/tilemap.rs b/src/code/snippets/src/scene/tilemap.rs new file mode 100644 index 00000000..8a186ea5 --- /dev/null +++ b/src/code/snippets/src/scene/tilemap.rs @@ -0,0 +1,64 @@ +use fyrox::{ + asset::untyped::ResourceKind, + core::{algebra::Vector2, color::Color, math::Rect, pool::Handle}, + material::{Material, MaterialResource}, + scene::{ + base::BaseBuilder, + graph::Graph, + node::Node, + tilemap::{ + tileset::{TileCollider, TileDefinition, TileSet, TileSetResource}, + Tile, TileMapBuilder, Tiles, + }, + }, +}; + +// ANCHOR: create_tile_map +fn create_tile_map(graph: &mut Graph) -> Handle { + // Each tile could have its own material, for simplicity it is just a standard 2D material. + let material = MaterialResource::new_ok(ResourceKind::Embedded, Material::standard_2d()); + + // Create a tile set - it is a data source for the tile map. Tile map will reference the tiles + // stored in the tile set by handles. We'll create two tile types with different colors. + let mut tile_set = TileSet::default(); + let stone_tile = tile_set.add_tile(TileDefinition { + material: material.clone(), + uv_rect: Rect::new(0.0, 0.0, 1.0, 1.0), + collider: TileCollider::Rectangle, + color: Color::BROWN, + }); + let grass_tile = tile_set.add_tile(TileDefinition { + material, + uv_rect: Rect::new(0.0, 0.0, 1.0, 1.0), + collider: TileCollider::Rectangle, + color: Color::GREEN, + }); + let tile_set = TileSetResource::new_ok(ResourceKind::Embedded, tile_set); + + let mut tiles = Tiles::default(); + + // Create stone foundation. + for x in 0..10 { + for y in 0..2 { + tiles.insert(Tile { + position: Vector2::new(x, y), + definition_handle: stone_tile, + }); + } + } + + // Add grass on top of it. + for x in 0..10 { + tiles.insert(Tile { + position: Vector2::new(x, 2), + definition_handle: grass_tile, + }); + } + + // Finally create the tile map. + TileMapBuilder::new(BaseBuilder::new()) + .with_tile_set(tile_set) + .with_tiles(tiles) + .build(graph) +} +// ANCHOR_END: create_tile_map diff --git a/src/scene/brush.png b/src/scene/brush.png new file mode 100644 index 00000000..52d0e378 Binary files /dev/null and b/src/scene/brush.png differ diff --git a/src/scene/drawing.png b/src/scene/drawing.png new file mode 100644 index 00000000..aaf6534e Binary files /dev/null and b/src/scene/drawing.png differ diff --git a/src/scene/empty_tile_map.png b/src/scene/empty_tile_map.png new file mode 100644 index 00000000..53353ce4 Binary files /dev/null and b/src/scene/empty_tile_map.png differ diff --git a/src/scene/grid.png b/src/scene/grid.png new file mode 100644 index 00000000..ec9caefa Binary files /dev/null and b/src/scene/grid.png differ diff --git a/src/scene/import_tile_set.png b/src/scene/import_tile_set.png new file mode 100644 index 00000000..5b501032 Binary files /dev/null and b/src/scene/import_tile_set.png differ diff --git a/src/scene/imported_tile_set.png b/src/scene/imported_tile_set.png new file mode 100644 index 00000000..dcad5846 Binary files /dev/null and b/src/scene/imported_tile_set.png differ diff --git a/src/scene/tile_map.png b/src/scene/tile_map.png new file mode 100644 index 00000000..641391c6 Binary files /dev/null and b/src/scene/tile_map.png differ diff --git a/src/scene/tile_set_editor.png b/src/scene/tile_set_editor.png new file mode 100644 index 00000000..31482161 Binary files /dev/null and b/src/scene/tile_set_editor.png differ diff --git a/src/scene/tilemap.md b/src/scene/tilemap.md new file mode 100644 index 00000000..2b73ec90 --- /dev/null +++ b/src/scene/tilemap.md @@ -0,0 +1,101 @@ +# Tile Map + +Tile map is a 2D "image", made out of a small blocks called tiles. Tile maps used in 2D games to build game worlds +quickly and easily. + +> ⚠️ This functionality is available only on nightly version of the engine and will be a part of the next stable release. +> If you want to use it, read [this chapter](../beginning/scripting.md#using-the-latest-engine-version) to learn how to +> switch to the nightly version of the engine. + +An example of a tile map could be something like this: + +![tile map](tile_map.png) + +## How to Create + +As usual, there are two major ways of creating a tile map - via code or via the editor. Code-based approach is ideal for +procedural worlds, while the editor-based approach is good for hand-crafted worlds. + +### Code + +The following example creates a simple tile map with two tile types - grass and stone. It creates stone foundation and +lays grass on top of it. + +```rust +{{#include ../code/snippets/src/scene/tilemap.rs:create_tile_map}} +``` + +Please refer to the API docs for more info about each method. + +### Editor + +Editor-based approach requires a bit of preparation, yet it is still simple. At first, create a scene, then you need a +tile set, something like this: + +![tile set](tileset.png) + +It is a 11x11 sprite sheet for a top-down game. Now you need to create a tile set resource from this tile set. Navigate +the asset browser and click on `+` button near the search bar. Select `TileSet` resource and click `OK`. Find the resource +you've just created in the asset browser, double-click on it, and you should see something like this: + +![tile set editor](tile_set_editor.png) + +At this point you could add tiles individually, or import them all at once from a sprite sheet. Keep in mind, that unlike +other game engine, Fyrox allows you to specify not just textures, but materials for each tile. This is much more flexible +solution, since it allows you to have custom shaders for each tile. To sum everything up there are three ways of adding +tiles to the tile set: + +1) Import from a sprite sheet - this way the engine will create a unique embedded material (based on standard 2D shader), +that will use the sprite sheet as diffuse texture. Sprite sheet will be split into a number of tiles and each tile will +have its own portion (texture coordinates) of the sprite sheet. +2) Drag and drop a texture to the tile set - almost the same as the previous option, but the texture coordinates will +take the entire image. +3) Drag and drop a material to the tile set - the most flexible way, since it allows you to specify your own material for +tile. + +For simplicity, we'll use the sprite sheet. Click on `Import` button and drop the sprite sheet to the region with +checkerboard, set the appropriate number of rows and columns: + +![import tile set](import_tile_set.png) + +Now click `Import` and you should see something like this: + +![imported tile set](imported_tile_set.png) + +At this point you can select desired tiles and edit their properties in the inspector on the right side. As you can see +you can change tile's material, texture coordinates, collider (more on this below), color. + +Now we have the tile set, and we can start creating a tile map using it. Click `Create -> 2D -> Tile Map` and you should +see something like this: + +![empty tile map](empty_tile_map.png) + +If you look closely, the editor warns us about missing tile set. Find the tile set you've just made and drag'n'drop it +from the asset browser to the `Tile Set` field in the inspector. There's one more step before we can start editing the +tile map - we need a brush to paint on the tile map. Click `+` button in the asset browser and select `TileMapBrush`, +set a name for it and click `OK`. Now select the tile map scene node and click on `+` sign in the `Brushes` field, drag'n'drop +the brush you've just created to the newly created property. Navigate to the `Tile Map Control Panel` and select the +brush from the dropdown list. For now the brush is empty, the simplest way to fill it is to just drag'n'drop the tile set +to it: + +![brush](brush.png) + +At this point everything is ready for painting, click `Edit` button on the `Tile Map Control Panel` and you should see the +grid: + +![grid](grid.png) + +Select some tiles on the palette and start drawing: + +![drawing](drawing.png) + +There are number of tools (apart from the drawing itself) that could be useful while editing tile maps: + +1) Erase - erases tiles using the shape of the current brush, could be activated using `Shift` key or by clicking on the +button with eraser icon. +2) Flood fill - fills a region with the same tile kind (or empty space) using random tiles from the current brush. Could +be activated using the button with paint bucket icon. +3) Pick - picks a rectangular region of tiles from the tile map itself and turns them into the current brush. Could be +activated using `Alt` key or by clicking the button with pipette icon. +4) Rectangular fill - fills a rectangular region with the tiles from the current brush. It tiles the given region using the +tiles from current brush. Could be activated using `Ctrl` key of by clicking on the button with the tiles icon. \ No newline at end of file diff --git a/src/scene/tileset.png b/src/scene/tileset.png new file mode 100644 index 00000000..38eba850 Binary files /dev/null and b/src/scene/tileset.png differ