├── .gitignore
├── .gitpod.Dockerfile
├── .gitpod.yml
├── Cargo.lock
├── Cargo.toml
├── LICENSE-APACHE
├── LICENSE-MIT
├── README.md
├── assets
├── enemy_a_01.png
├── explo_a_sheet.png
├── laser_a_01.png
├── laser_b_01.png
├── player_a_01.png
└── player_b_01.png
├── rust-toolchain
├── rustfmt.toml
└── src
├── components.rs
├── enemy
├── formation.rs
└── mod.rs
├── main.rs
└── player.rs
/.gitignore:
--------------------------------------------------------------------------------
1 | .*
2 | !.gitignore
3 | !.gitpod.yml
4 | !.gitpod.Dockerfile
5 |
6 | target/
7 |
--------------------------------------------------------------------------------
/.gitpod.Dockerfile:
--------------------------------------------------------------------------------
1 | FROM gitpod/workspace-full
2 |
3 | USER root
4 |
5 | RUN bash -cl "rustup toolchain install nightly"
--------------------------------------------------------------------------------
/.gitpod.yml:
--------------------------------------------------------------------------------
1 | image:
2 | file: .gitpod.Dockerfile
3 |
4 |
5 | tasks:
6 | - name: Initial Config
7 | init: sudo apt-get update && sudo apt-get install libasound2-dev && sudo apt-get install libudev-dev
8 | command: cargo build && rustup target install wasm32-unknown-unknown
9 |
10 | - name: Browser Config
11 | init: rustup target install wasm32-unknown-unknown && cargo install wasm-server-runner
12 | command: export CARGO_TARGET_WASM32_UNKNOWN_UNKNOWN_RUNNER=wasm-server-runner && cargo run --target wasm32-unknown-unknown
13 |
14 |
15 |
--------------------------------------------------------------------------------
/Cargo.lock:
--------------------------------------------------------------------------------
1 | # This file is automatically @generated by Cargo.
2 | # It is not intended for manual editing.
3 | version = 4
4 |
5 | [[package]]
6 | name = "accesskit"
7 | version = "0.17.1"
8 | source = "registry+https://github.com/rust-lang/crates.io-index"
9 | checksum = "d3d3b8f9bae46a948369bc4a03e815d4ed6d616bd00de4051133a5019dc31c5a"
10 |
11 | [[package]]
12 | name = "accesskit_consumer"
13 | version = "0.26.0"
14 | source = "registry+https://github.com/rust-lang/crates.io-index"
15 | checksum = "f47983a1084940ba9a39c077a8c63e55c619388be5476ac04c804cfbd1e63459"
16 | dependencies = [
17 | "accesskit",
18 | "hashbrown 0.15.2",
19 | "immutable-chunkmap",
20 | ]
21 |
22 | [[package]]
23 | name = "accesskit_macos"
24 | version = "0.18.1"
25 | source = "registry+https://github.com/rust-lang/crates.io-index"
26 | checksum = "7329821f3bd1101e03a7d2e03bd339e3ac0dc64c70b4c9f9ae1949e3ba8dece1"
27 | dependencies = [
28 | "accesskit",
29 | "accesskit_consumer",
30 | "hashbrown 0.15.2",
31 | "objc2",
32 | "objc2-app-kit",
33 | "objc2-foundation",
34 | ]
35 |
36 | [[package]]
37 | name = "accesskit_windows"
38 | version = "0.24.1"
39 | source = "registry+https://github.com/rust-lang/crates.io-index"
40 | checksum = "24fcd5d23d70670992b823e735e859374d694a3d12bfd8dd32bd3bd8bedb5d81"
41 | dependencies = [
42 | "accesskit",
43 | "accesskit_consumer",
44 | "hashbrown 0.15.2",
45 | "paste",
46 | "static_assertions",
47 | "windows 0.58.0",
48 | "windows-core 0.58.0",
49 | ]
50 |
51 | [[package]]
52 | name = "accesskit_winit"
53 | version = "0.23.1"
54 | source = "registry+https://github.com/rust-lang/crates.io-index"
55 | checksum = "6a6a48dad5530b6deb9fc7a52cc6c3bf72cdd9eb8157ac9d32d69f2427a5e879"
56 | dependencies = [
57 | "accesskit",
58 | "accesskit_macos",
59 | "accesskit_windows",
60 | "raw-window-handle",
61 | "winit",
62 | ]
63 |
64 | [[package]]
65 | name = "adler2"
66 | version = "2.0.0"
67 | source = "registry+https://github.com/rust-lang/crates.io-index"
68 | checksum = "512761e0bb2578dd7380c6baaa0f4ce03e84f95e960231d1dec8bf4d7d6e2627"
69 |
70 | [[package]]
71 | name = "ahash"
72 | version = "0.8.11"
73 | source = "registry+https://github.com/rust-lang/crates.io-index"
74 | checksum = "e89da841a80418a9b391ebaea17f5c112ffaaa96f621d2c285b5174da76b9011"
75 | dependencies = [
76 | "cfg-if",
77 | "const-random",
78 | "getrandom",
79 | "once_cell",
80 | "version_check",
81 | "zerocopy",
82 | ]
83 |
84 | [[package]]
85 | name = "aho-corasick"
86 | version = "1.1.3"
87 | source = "registry+https://github.com/rust-lang/crates.io-index"
88 | checksum = "8e60d3430d3a69478ad0993f19238d2df97c507009a52b3c10addcd7f6bcb916"
89 | dependencies = [
90 | "memchr",
91 | ]
92 |
93 | [[package]]
94 | name = "allocator-api2"
95 | version = "0.2.20"
96 | source = "registry+https://github.com/rust-lang/crates.io-index"
97 | checksum = "45862d1c77f2228b9e10bc609d5bc203d86ebc9b87ad8d5d5167a6c9abf739d9"
98 |
99 | [[package]]
100 | name = "alsa"
101 | version = "0.9.1"
102 | source = "registry+https://github.com/rust-lang/crates.io-index"
103 | checksum = "ed7572b7ba83a31e20d1b48970ee402d2e3e0537dcfe0a3ff4d6eb7508617d43"
104 | dependencies = [
105 | "alsa-sys",
106 | "bitflags 2.6.0",
107 | "cfg-if",
108 | "libc",
109 | ]
110 |
111 | [[package]]
112 | name = "alsa-sys"
113 | version = "0.3.1"
114 | source = "registry+https://github.com/rust-lang/crates.io-index"
115 | checksum = "db8fee663d06c4e303404ef5f40488a53e062f89ba8bfed81f42325aafad1527"
116 | dependencies = [
117 | "libc",
118 | "pkg-config",
119 | ]
120 |
121 | [[package]]
122 | name = "android-activity"
123 | version = "0.6.0"
124 | source = "registry+https://github.com/rust-lang/crates.io-index"
125 | checksum = "ef6978589202a00cd7e118380c448a08b6ed394c3a8df3a430d0898e3a42d046"
126 | dependencies = [
127 | "android-properties",
128 | "bitflags 2.6.0",
129 | "cc",
130 | "cesu8",
131 | "jni",
132 | "jni-sys",
133 | "libc",
134 | "log",
135 | "ndk 0.9.0",
136 | "ndk-context",
137 | "ndk-sys 0.6.0+11769913",
138 | "num_enum",
139 | "thiserror",
140 | ]
141 |
142 | [[package]]
143 | name = "android-properties"
144 | version = "0.2.2"
145 | source = "registry+https://github.com/rust-lang/crates.io-index"
146 | checksum = "fc7eb209b1518d6bb87b283c20095f5228ecda460da70b44f0802523dea6da04"
147 |
148 | [[package]]
149 | name = "android_log-sys"
150 | version = "0.3.1"
151 | source = "registry+https://github.com/rust-lang/crates.io-index"
152 | checksum = "5ecc8056bf6ab9892dcd53216c83d1597487d7dacac16c8df6b877d127df9937"
153 |
154 | [[package]]
155 | name = "android_system_properties"
156 | version = "0.1.5"
157 | source = "registry+https://github.com/rust-lang/crates.io-index"
158 | checksum = "819e7219dbd41043ac279b19830f2efc897156490d7fd6ea916720117ee66311"
159 | dependencies = [
160 | "libc",
161 | ]
162 |
163 | [[package]]
164 | name = "approx"
165 | version = "0.5.1"
166 | source = "registry+https://github.com/rust-lang/crates.io-index"
167 | checksum = "cab112f0a86d568ea0e627cc1d6be74a1e9cd55214684db5561995f6dad897c6"
168 | dependencies = [
169 | "num-traits",
170 | ]
171 |
172 | [[package]]
173 | name = "arrayref"
174 | version = "0.3.9"
175 | source = "registry+https://github.com/rust-lang/crates.io-index"
176 | checksum = "76a2e8124351fda1ef8aaaa3bbd7ebbcb486bbcd4225aca0aa0d84bb2db8fecb"
177 |
178 | [[package]]
179 | name = "arrayvec"
180 | version = "0.7.6"
181 | source = "registry+https://github.com/rust-lang/crates.io-index"
182 | checksum = "7c02d123df017efcdfbd739ef81735b36c5ba83ec3c59c80a9d7ecc718f92e50"
183 |
184 | [[package]]
185 | name = "as-raw-xcb-connection"
186 | version = "1.0.1"
187 | source = "registry+https://github.com/rust-lang/crates.io-index"
188 | checksum = "175571dd1d178ced59193a6fc02dde1b972eb0bc56c892cde9beeceac5bf0f6b"
189 |
190 | [[package]]
191 | name = "ash"
192 | version = "0.38.0+1.3.281"
193 | source = "registry+https://github.com/rust-lang/crates.io-index"
194 | checksum = "0bb44936d800fea8f016d7f2311c6a4f97aebd5dc86f09906139ec848cf3a46f"
195 | dependencies = [
196 | "libloading",
197 | ]
198 |
199 | [[package]]
200 | name = "assert_type_match"
201 | version = "0.1.1"
202 | source = "registry+https://github.com/rust-lang/crates.io-index"
203 | checksum = "f548ad2c4031f2902e3edc1f29c29e835829437de49562d8eb5dc5584d3a1043"
204 | dependencies = [
205 | "proc-macro2",
206 | "quote",
207 | "syn",
208 | ]
209 |
210 | [[package]]
211 | name = "async-broadcast"
212 | version = "0.5.1"
213 | source = "registry+https://github.com/rust-lang/crates.io-index"
214 | checksum = "7c48ccdbf6ca6b121e0f586cbc0e73ae440e56c67c30fa0873b4e110d9c26d2b"
215 | dependencies = [
216 | "event-listener 2.5.3",
217 | "futures-core",
218 | ]
219 |
220 | [[package]]
221 | name = "async-channel"
222 | version = "2.3.1"
223 | source = "registry+https://github.com/rust-lang/crates.io-index"
224 | checksum = "89b47800b0be77592da0afd425cc03468052844aff33b84e33cc696f64e77b6a"
225 | dependencies = [
226 | "concurrent-queue",
227 | "event-listener-strategy",
228 | "futures-core",
229 | "pin-project-lite",
230 | ]
231 |
232 | [[package]]
233 | name = "async-executor"
234 | version = "1.13.1"
235 | source = "registry+https://github.com/rust-lang/crates.io-index"
236 | checksum = "30ca9a001c1e8ba5149f91a74362376cc6bc5b919d92d988668657bd570bdcec"
237 | dependencies = [
238 | "async-task",
239 | "concurrent-queue",
240 | "fastrand",
241 | "futures-lite",
242 | "slab",
243 | ]
244 |
245 | [[package]]
246 | name = "async-fs"
247 | version = "2.1.2"
248 | source = "registry+https://github.com/rust-lang/crates.io-index"
249 | checksum = "ebcd09b382f40fcd159c2d695175b2ae620ffa5f3bd6f664131efff4e8b9e04a"
250 | dependencies = [
251 | "async-lock",
252 | "blocking",
253 | "futures-lite",
254 | ]
255 |
256 | [[package]]
257 | name = "async-lock"
258 | version = "3.4.0"
259 | source = "registry+https://github.com/rust-lang/crates.io-index"
260 | checksum = "ff6e472cdea888a4bd64f342f09b3f50e1886d32afe8df3d663c01140b811b18"
261 | dependencies = [
262 | "event-listener 5.3.1",
263 | "event-listener-strategy",
264 | "pin-project-lite",
265 | ]
266 |
267 | [[package]]
268 | name = "async-task"
269 | version = "4.7.1"
270 | source = "registry+https://github.com/rust-lang/crates.io-index"
271 | checksum = "8b75356056920673b02621b35afd0f7dda9306d03c79a30f5c56c44cf256e3de"
272 |
273 | [[package]]
274 | name = "atomic-waker"
275 | version = "1.1.2"
276 | source = "registry+https://github.com/rust-lang/crates.io-index"
277 | checksum = "1505bd5d3d116872e7271a6d4e16d81d0c8570876c8de68093a09ac269d8aac0"
278 |
279 | [[package]]
280 | name = "atomicow"
281 | version = "1.0.0"
282 | source = "registry+https://github.com/rust-lang/crates.io-index"
283 | checksum = "467163b50876d3a4a44da5f4dbd417537e522fc059ede8d518d57941cfb3d745"
284 |
285 | [[package]]
286 | name = "autocfg"
287 | version = "1.4.0"
288 | source = "registry+https://github.com/rust-lang/crates.io-index"
289 | checksum = "ace50bade8e6234aa140d9a2f552bbee1db4d353f69b8217bc503490fc1a9f26"
290 |
291 | [[package]]
292 | name = "base64"
293 | version = "0.21.7"
294 | source = "registry+https://github.com/rust-lang/crates.io-index"
295 | checksum = "9d297deb1925b89f2ccc13d7635fa0714f12c87adce1c75356b39ca9b7178567"
296 |
297 | [[package]]
298 | name = "base64"
299 | version = "0.22.1"
300 | source = "registry+https://github.com/rust-lang/crates.io-index"
301 | checksum = "72b3254f16251a8381aa12e40e3c4d2f0199f8c6508fbecb9d91f575e0fbb8c6"
302 |
303 | [[package]]
304 | name = "bevy"
305 | version = "0.15.0"
306 | source = "registry+https://github.com/rust-lang/crates.io-index"
307 | checksum = "b6a01cd51a5cd310e4e7aa6e1560b1aabf29efc6a095a01e6daa8bf0a19f1fea"
308 | dependencies = [
309 | "bevy_internal",
310 | ]
311 |
312 | [[package]]
313 | name = "bevy_a11y"
314 | version = "0.15.0"
315 | source = "registry+https://github.com/rust-lang/crates.io-index"
316 | checksum = "82c66b5bc82a2660a5663d85b3354ddb72c8ab2c443989333cbea146f39a4e9a"
317 | dependencies = [
318 | "accesskit",
319 | "bevy_app",
320 | "bevy_derive",
321 | "bevy_ecs",
322 | "bevy_reflect",
323 | ]
324 |
325 | [[package]]
326 | name = "bevy_animation"
327 | version = "0.15.0"
328 | source = "registry+https://github.com/rust-lang/crates.io-index"
329 | checksum = "ee48f3fc65f583e5e320e38874053e20e7a71205a62aaace5d607446781bd742"
330 | dependencies = [
331 | "bevy_app",
332 | "bevy_asset",
333 | "bevy_color",
334 | "bevy_core",
335 | "bevy_derive",
336 | "bevy_ecs",
337 | "bevy_hierarchy",
338 | "bevy_log",
339 | "bevy_math",
340 | "bevy_reflect",
341 | "bevy_render",
342 | "bevy_time",
343 | "bevy_transform",
344 | "bevy_utils",
345 | "blake3",
346 | "derive_more",
347 | "downcast-rs",
348 | "either",
349 | "petgraph",
350 | "ron",
351 | "serde",
352 | "smallvec",
353 | "thread_local",
354 | "uuid",
355 | ]
356 |
357 | [[package]]
358 | name = "bevy_app"
359 | version = "0.15.0"
360 | source = "registry+https://github.com/rust-lang/crates.io-index"
361 | checksum = "652574e4c10efcfa70f98036709dd5b67e5cb8d46c58087ef48c2ac6b62df9da"
362 | dependencies = [
363 | "bevy_derive",
364 | "bevy_ecs",
365 | "bevy_reflect",
366 | "bevy_tasks",
367 | "bevy_utils",
368 | "console_error_panic_hook",
369 | "ctrlc",
370 | "derive_more",
371 | "downcast-rs",
372 | "wasm-bindgen",
373 | "web-sys",
374 | ]
375 |
376 | [[package]]
377 | name = "bevy_asset"
378 | version = "0.15.0"
379 | source = "registry+https://github.com/rust-lang/crates.io-index"
380 | checksum = "4d7d501eda01be6d500d843a06d9b9800c3f0fffaae3c29d17d9e4e172c28d37"
381 | dependencies = [
382 | "async-broadcast",
383 | "async-fs",
384 | "async-lock",
385 | "atomicow",
386 | "bevy_app",
387 | "bevy_asset_macros",
388 | "bevy_ecs",
389 | "bevy_reflect",
390 | "bevy_tasks",
391 | "bevy_utils",
392 | "bevy_window",
393 | "bitflags 2.6.0",
394 | "blake3",
395 | "crossbeam-channel",
396 | "derive_more",
397 | "disqualified",
398 | "downcast-rs",
399 | "either",
400 | "futures-io",
401 | "futures-lite",
402 | "js-sys",
403 | "notify-debouncer-full",
404 | "parking_lot",
405 | "ron",
406 | "serde",
407 | "stackfuture",
408 | "uuid",
409 | "wasm-bindgen",
410 | "wasm-bindgen-futures",
411 | "web-sys",
412 | ]
413 |
414 | [[package]]
415 | name = "bevy_asset_macros"
416 | version = "0.15.0"
417 | source = "registry+https://github.com/rust-lang/crates.io-index"
418 | checksum = "7474b77fc27db11ec03d49ca04f1a7471f369dc373fd5e091a12ad7ab533d8c8"
419 | dependencies = [
420 | "bevy_macro_utils",
421 | "proc-macro2",
422 | "quote",
423 | "syn",
424 | ]
425 |
426 | [[package]]
427 | name = "bevy_audio"
428 | version = "0.15.0"
429 | source = "registry+https://github.com/rust-lang/crates.io-index"
430 | checksum = "20e378c4005d9c47b7ebaf637a6a197e3953463615516ab709ba8b0c3c215c2e"
431 | dependencies = [
432 | "bevy_app",
433 | "bevy_asset",
434 | "bevy_derive",
435 | "bevy_ecs",
436 | "bevy_hierarchy",
437 | "bevy_math",
438 | "bevy_reflect",
439 | "bevy_transform",
440 | "bevy_utils",
441 | "cpal",
442 | "rodio",
443 | ]
444 |
445 | [[package]]
446 | name = "bevy_color"
447 | version = "0.15.1"
448 | source = "registry+https://github.com/rust-lang/crates.io-index"
449 | checksum = "87bccacba27db37375eb97ffc86e91a7d95db3f5faa6a834fa7306db02cde327"
450 | dependencies = [
451 | "bevy_math",
452 | "bevy_reflect",
453 | "bytemuck",
454 | "derive_more",
455 | "encase",
456 | "serde",
457 | "wgpu-types",
458 | ]
459 |
460 | [[package]]
461 | name = "bevy_core"
462 | version = "0.15.0"
463 | source = "registry+https://github.com/rust-lang/crates.io-index"
464 | checksum = "ecccf7be33330f58d4c7033b212a25c414d388e3a8d55b61331346da5dbabf22"
465 | dependencies = [
466 | "bevy_app",
467 | "bevy_ecs",
468 | "bevy_reflect",
469 | "bevy_tasks",
470 | "bevy_utils",
471 | "uuid",
472 | ]
473 |
474 | [[package]]
475 | name = "bevy_core_pipeline"
476 | version = "0.15.0"
477 | source = "registry+https://github.com/rust-lang/crates.io-index"
478 | checksum = "8a3fb9f84fa60c2006d4a15e039c3d08d4d10599441b9175907341a77a69d627"
479 | dependencies = [
480 | "bevy_app",
481 | "bevy_asset",
482 | "bevy_color",
483 | "bevy_core",
484 | "bevy_derive",
485 | "bevy_ecs",
486 | "bevy_image",
487 | "bevy_math",
488 | "bevy_reflect",
489 | "bevy_render",
490 | "bevy_transform",
491 | "bevy_utils",
492 | "bevy_window",
493 | "bitflags 2.6.0",
494 | "derive_more",
495 | "nonmax",
496 | "radsort",
497 | "serde",
498 | "smallvec",
499 | ]
500 |
501 | [[package]]
502 | name = "bevy_derive"
503 | version = "0.15.0"
504 | source = "registry+https://github.com/rust-lang/crates.io-index"
505 | checksum = "e141b7eda52a23bb88740b37a291e26394524cb9ee3b034c7014669671fc2bb5"
506 | dependencies = [
507 | "bevy_macro_utils",
508 | "quote",
509 | "syn",
510 | ]
511 |
512 | [[package]]
513 | name = "bevy_diagnostic"
514 | version = "0.15.0"
515 | source = "registry+https://github.com/rust-lang/crates.io-index"
516 | checksum = "fa97748337405089edfb2857f7608f21bcc648a7ad272c9209808aad252ed542"
517 | dependencies = [
518 | "bevy_app",
519 | "bevy_core",
520 | "bevy_ecs",
521 | "bevy_tasks",
522 | "bevy_time",
523 | "bevy_utils",
524 | "const-fnv1a-hash",
525 | "sysinfo",
526 | ]
527 |
528 | [[package]]
529 | name = "bevy_ecs"
530 | version = "0.15.0"
531 | source = "registry+https://github.com/rust-lang/crates.io-index"
532 | checksum = "cb4c4b60d2a712c6d5cbe610bac7ecf0838fc56a095fd5b15f30230873e84f15"
533 | dependencies = [
534 | "arrayvec",
535 | "bevy_ecs_macros",
536 | "bevy_ptr",
537 | "bevy_reflect",
538 | "bevy_tasks",
539 | "bevy_utils",
540 | "bitflags 2.6.0",
541 | "concurrent-queue",
542 | "derive_more",
543 | "disqualified",
544 | "fixedbitset 0.5.7",
545 | "nonmax",
546 | "petgraph",
547 | "serde",
548 | "smallvec",
549 | ]
550 |
551 | [[package]]
552 | name = "bevy_ecs_macros"
553 | version = "0.15.0"
554 | source = "registry+https://github.com/rust-lang/crates.io-index"
555 | checksum = "cb4296b3254b8bd29769f6a4512731b2e6c4b163343ca18b72316927315b6096"
556 | dependencies = [
557 | "bevy_macro_utils",
558 | "proc-macro2",
559 | "quote",
560 | "syn",
561 | ]
562 |
563 | [[package]]
564 | name = "bevy_encase_derive"
565 | version = "0.15.0"
566 | source = "registry+https://github.com/rust-lang/crates.io-index"
567 | checksum = "bfe562b883fb652acde84cb6bb01cbc9f23c377e411f1484467ecfdd3a3d234e"
568 | dependencies = [
569 | "bevy_macro_utils",
570 | "encase_derive_impl",
571 | ]
572 |
573 | [[package]]
574 | name = "bevy_gilrs"
575 | version = "0.15.0"
576 | source = "registry+https://github.com/rust-lang/crates.io-index"
577 | checksum = "adc3a5f9e872133d7f5c2fab82e17781c19ed0b98f371362a23ed972bb538d20"
578 | dependencies = [
579 | "bevy_app",
580 | "bevy_ecs",
581 | "bevy_input",
582 | "bevy_time",
583 | "bevy_utils",
584 | "derive_more",
585 | "gilrs",
586 | ]
587 |
588 | [[package]]
589 | name = "bevy_gizmos"
590 | version = "0.15.0"
591 | source = "registry+https://github.com/rust-lang/crates.io-index"
592 | checksum = "e1c82341f6a3517efeeeef2fe68135ac3a91b11b6e369fc1a07f6e9a4b462b57"
593 | dependencies = [
594 | "bevy_app",
595 | "bevy_asset",
596 | "bevy_color",
597 | "bevy_core_pipeline",
598 | "bevy_ecs",
599 | "bevy_gizmos_macros",
600 | "bevy_image",
601 | "bevy_math",
602 | "bevy_pbr",
603 | "bevy_reflect",
604 | "bevy_render",
605 | "bevy_sprite",
606 | "bevy_time",
607 | "bevy_transform",
608 | "bevy_utils",
609 | "bytemuck",
610 | ]
611 |
612 | [[package]]
613 | name = "bevy_gizmos_macros"
614 | version = "0.15.0"
615 | source = "registry+https://github.com/rust-lang/crates.io-index"
616 | checksum = "9454ac9f0a2141900ef9f3482af9333e490d5546bbea3cab63a777447d35beed"
617 | dependencies = [
618 | "bevy_macro_utils",
619 | "proc-macro2",
620 | "quote",
621 | "syn",
622 | ]
623 |
624 | [[package]]
625 | name = "bevy_gltf"
626 | version = "0.15.0"
627 | source = "registry+https://github.com/rust-lang/crates.io-index"
628 | checksum = "b21ed694796a001a5cf63de9ddc62fc017302b0e2998a361ef1126880ec93555"
629 | dependencies = [
630 | "base64 0.22.1",
631 | "bevy_animation",
632 | "bevy_app",
633 | "bevy_asset",
634 | "bevy_color",
635 | "bevy_core",
636 | "bevy_core_pipeline",
637 | "bevy_ecs",
638 | "bevy_hierarchy",
639 | "bevy_image",
640 | "bevy_math",
641 | "bevy_pbr",
642 | "bevy_reflect",
643 | "bevy_render",
644 | "bevy_scene",
645 | "bevy_tasks",
646 | "bevy_transform",
647 | "bevy_utils",
648 | "derive_more",
649 | "gltf",
650 | "percent-encoding",
651 | "serde",
652 | "serde_json",
653 | "smallvec",
654 | ]
655 |
656 | [[package]]
657 | name = "bevy_hierarchy"
658 | version = "0.15.0"
659 | source = "registry+https://github.com/rust-lang/crates.io-index"
660 | checksum = "6fe0b538beea7edbf30a6062242b99e67ff3bfa716566aacf91d5b5e027f02a2"
661 | dependencies = [
662 | "bevy_app",
663 | "bevy_core",
664 | "bevy_ecs",
665 | "bevy_reflect",
666 | "bevy_utils",
667 | "disqualified",
668 | "smallvec",
669 | ]
670 |
671 | [[package]]
672 | name = "bevy_image"
673 | version = "0.15.0"
674 | source = "registry+https://github.com/rust-lang/crates.io-index"
675 | checksum = "db46fa6a2f9e20435f3231710abbb136d2cc0a376f3f8e6ecfe071e286f5a246"
676 | dependencies = [
677 | "bevy_asset",
678 | "bevy_color",
679 | "bevy_math",
680 | "bevy_reflect",
681 | "bevy_utils",
682 | "bitflags 2.6.0",
683 | "bytemuck",
684 | "derive_more",
685 | "futures-lite",
686 | "image",
687 | "ktx2",
688 | "ruzstd",
689 | "serde",
690 | "wgpu",
691 | ]
692 |
693 | [[package]]
694 | name = "bevy_input"
695 | version = "0.15.0"
696 | source = "registry+https://github.com/rust-lang/crates.io-index"
697 | checksum = "46b4ea60095d1a1851e40cb12481ad3d5d234e14376d6b73142a85586c266b74"
698 | dependencies = [
699 | "bevy_app",
700 | "bevy_core",
701 | "bevy_ecs",
702 | "bevy_math",
703 | "bevy_reflect",
704 | "bevy_utils",
705 | "derive_more",
706 | "smol_str",
707 | ]
708 |
709 | [[package]]
710 | name = "bevy_internal"
711 | version = "0.15.0"
712 | source = "registry+https://github.com/rust-lang/crates.io-index"
713 | checksum = "d4237e6e9b03902321032f00f931f18a4a211093bd9a7cf81276a0228a2a4417"
714 | dependencies = [
715 | "bevy_a11y",
716 | "bevy_animation",
717 | "bevy_app",
718 | "bevy_asset",
719 | "bevy_audio",
720 | "bevy_color",
721 | "bevy_core",
722 | "bevy_core_pipeline",
723 | "bevy_derive",
724 | "bevy_diagnostic",
725 | "bevy_ecs",
726 | "bevy_gilrs",
727 | "bevy_gizmos",
728 | "bevy_gltf",
729 | "bevy_hierarchy",
730 | "bevy_image",
731 | "bevy_input",
732 | "bevy_log",
733 | "bevy_math",
734 | "bevy_pbr",
735 | "bevy_picking",
736 | "bevy_ptr",
737 | "bevy_reflect",
738 | "bevy_render",
739 | "bevy_scene",
740 | "bevy_sprite",
741 | "bevy_state",
742 | "bevy_tasks",
743 | "bevy_text",
744 | "bevy_time",
745 | "bevy_transform",
746 | "bevy_ui",
747 | "bevy_utils",
748 | "bevy_window",
749 | "bevy_winit",
750 | ]
751 |
752 | [[package]]
753 | name = "bevy_log"
754 | version = "0.15.0"
755 | source = "registry+https://github.com/rust-lang/crates.io-index"
756 | checksum = "1a0bdb42b00ac3752f0d6f531fbda8abf313603157a7b3163da8529412119a0a"
757 | dependencies = [
758 | "android_log-sys",
759 | "bevy_app",
760 | "bevy_ecs",
761 | "bevy_utils",
762 | "tracing-log",
763 | "tracing-oslog",
764 | "tracing-subscriber",
765 | "tracing-wasm",
766 | ]
767 |
768 | [[package]]
769 | name = "bevy_macro_utils"
770 | version = "0.15.0"
771 | source = "registry+https://github.com/rust-lang/crates.io-index"
772 | checksum = "3954dbb56a66a6c09c783e767f6ceca0dc0492c22e536e2aeaefb5545eac33c6"
773 | dependencies = [
774 | "proc-macro2",
775 | "quote",
776 | "syn",
777 | "toml_edit",
778 | ]
779 |
780 | [[package]]
781 | name = "bevy_math"
782 | version = "0.15.0"
783 | source = "registry+https://github.com/rust-lang/crates.io-index"
784 | checksum = "9ae26f952598e293acac783d947b21af1809673cbeba25d76b969a56f287160b"
785 | dependencies = [
786 | "bevy_reflect",
787 | "derive_more",
788 | "glam",
789 | "itertools",
790 | "rand",
791 | "rand_distr",
792 | "serde",
793 | "smallvec",
794 | ]
795 |
796 | [[package]]
797 | name = "bevy_mesh"
798 | version = "0.15.0"
799 | source = "registry+https://github.com/rust-lang/crates.io-index"
800 | checksum = "9c324d45ca0043a4696d7324b569de65be17066ed3a97dd42205bc28693d20b5"
801 | dependencies = [
802 | "bevy_asset",
803 | "bevy_derive",
804 | "bevy_ecs",
805 | "bevy_image",
806 | "bevy_math",
807 | "bevy_mikktspace",
808 | "bevy_reflect",
809 | "bevy_transform",
810 | "bevy_utils",
811 | "bitflags 2.6.0",
812 | "bytemuck",
813 | "derive_more",
814 | "hexasphere",
815 | "serde",
816 | "wgpu",
817 | ]
818 |
819 | [[package]]
820 | name = "bevy_mikktspace"
821 | version = "0.15.0"
822 | source = "registry+https://github.com/rust-lang/crates.io-index"
823 | checksum = "da5ea3ad25d74ea36ea45418ad799f135d046db35c322b9704c4a8934eb65ce9"
824 | dependencies = [
825 | "glam",
826 | ]
827 |
828 | [[package]]
829 | name = "bevy_pbr"
830 | version = "0.15.0"
831 | source = "registry+https://github.com/rust-lang/crates.io-index"
832 | checksum = "01b3bd8e646ddd3f27743b712957d2990d7361eb21044accc47c4f66711bf2cb"
833 | dependencies = [
834 | "bevy_app",
835 | "bevy_asset",
836 | "bevy_color",
837 | "bevy_core_pipeline",
838 | "bevy_derive",
839 | "bevy_ecs",
840 | "bevy_image",
841 | "bevy_math",
842 | "bevy_reflect",
843 | "bevy_render",
844 | "bevy_transform",
845 | "bevy_utils",
846 | "bevy_window",
847 | "bitflags 2.6.0",
848 | "bytemuck",
849 | "derive_more",
850 | "fixedbitset 0.5.7",
851 | "nonmax",
852 | "radsort",
853 | "smallvec",
854 | "static_assertions",
855 | ]
856 |
857 | [[package]]
858 | name = "bevy_picking"
859 | version = "0.15.0"
860 | source = "registry+https://github.com/rust-lang/crates.io-index"
861 | checksum = "97a137ed706574dc4a01cac527eb2c44a0b0e477d5bce3afc892a9ee95ee0078"
862 | dependencies = [
863 | "bevy_app",
864 | "bevy_asset",
865 | "bevy_derive",
866 | "bevy_ecs",
867 | "bevy_hierarchy",
868 | "bevy_input",
869 | "bevy_math",
870 | "bevy_mesh",
871 | "bevy_reflect",
872 | "bevy_render",
873 | "bevy_time",
874 | "bevy_transform",
875 | "bevy_utils",
876 | "bevy_window",
877 | "crossbeam-channel",
878 | "uuid",
879 | ]
880 |
881 | [[package]]
882 | name = "bevy_ptr"
883 | version = "0.15.0"
884 | source = "registry+https://github.com/rust-lang/crates.io-index"
885 | checksum = "2af9e30b40fb3f0a80a658419f670f2de1e743efcaca1952c43cdcc923287944"
886 |
887 | [[package]]
888 | name = "bevy_reflect"
889 | version = "0.15.0"
890 | source = "registry+https://github.com/rust-lang/crates.io-index"
891 | checksum = "52a37e2ae5ed62df4a0e3f958076effe280b39bc81fe878587350897a89332a2"
892 | dependencies = [
893 | "assert_type_match",
894 | "bevy_ptr",
895 | "bevy_reflect_derive",
896 | "bevy_utils",
897 | "derive_more",
898 | "disqualified",
899 | "downcast-rs",
900 | "erased-serde",
901 | "glam",
902 | "petgraph",
903 | "serde",
904 | "smallvec",
905 | "smol_str",
906 | "uuid",
907 | ]
908 |
909 | [[package]]
910 | name = "bevy_reflect_derive"
911 | version = "0.15.0"
912 | source = "registry+https://github.com/rust-lang/crates.io-index"
913 | checksum = "94c683fc68c75fc26f90bb1e529590095380d7cec66f6610dbe6b93d9fd26f94"
914 | dependencies = [
915 | "bevy_macro_utils",
916 | "proc-macro2",
917 | "quote",
918 | "syn",
919 | "uuid",
920 | ]
921 |
922 | [[package]]
923 | name = "bevy_render"
924 | version = "0.15.0"
925 | source = "registry+https://github.com/rust-lang/crates.io-index"
926 | checksum = "d188f392edf4edcae53dfda07f3ec618a7a704183ec3f2e8504657a9fb940c8a"
927 | dependencies = [
928 | "async-channel",
929 | "bevy_app",
930 | "bevy_asset",
931 | "bevy_color",
932 | "bevy_core",
933 | "bevy_derive",
934 | "bevy_diagnostic",
935 | "bevy_ecs",
936 | "bevy_encase_derive",
937 | "bevy_hierarchy",
938 | "bevy_image",
939 | "bevy_math",
940 | "bevy_mesh",
941 | "bevy_reflect",
942 | "bevy_render_macros",
943 | "bevy_tasks",
944 | "bevy_time",
945 | "bevy_transform",
946 | "bevy_utils",
947 | "bevy_window",
948 | "bytemuck",
949 | "codespan-reporting",
950 | "derive_more",
951 | "downcast-rs",
952 | "encase",
953 | "futures-lite",
954 | "image",
955 | "js-sys",
956 | "ktx2",
957 | "naga",
958 | "naga_oil",
959 | "nonmax",
960 | "offset-allocator",
961 | "send_wrapper",
962 | "serde",
963 | "smallvec",
964 | "wasm-bindgen",
965 | "web-sys",
966 | "wgpu",
967 | ]
968 |
969 | [[package]]
970 | name = "bevy_render_macros"
971 | version = "0.15.0"
972 | source = "registry+https://github.com/rust-lang/crates.io-index"
973 | checksum = "4ab37ee2945f93e9ba8daf91cd968b4cba9c677ac51d349dd8512a107a9a5d92"
974 | dependencies = [
975 | "bevy_macro_utils",
976 | "proc-macro2",
977 | "quote",
978 | "syn",
979 | ]
980 |
981 | [[package]]
982 | name = "bevy_scene"
983 | version = "0.15.0"
984 | source = "registry+https://github.com/rust-lang/crates.io-index"
985 | checksum = "0e883fd3c6d6e7761f1fe662e79bc7bdc7e917e73e7bfc434b1d16d2a5852119"
986 | dependencies = [
987 | "bevy_app",
988 | "bevy_asset",
989 | "bevy_derive",
990 | "bevy_ecs",
991 | "bevy_hierarchy",
992 | "bevy_reflect",
993 | "bevy_render",
994 | "bevy_transform",
995 | "bevy_utils",
996 | "derive_more",
997 | "serde",
998 | "uuid",
999 | ]
1000 |
1001 | [[package]]
1002 | name = "bevy_sprite"
1003 | version = "0.15.0"
1004 | source = "registry+https://github.com/rust-lang/crates.io-index"
1005 | checksum = "e975abc3f3f3432d6ad86ae32de804e96d7faf59d27f32b065b5ddc1e73ed7e1"
1006 | dependencies = [
1007 | "bevy_app",
1008 | "bevy_asset",
1009 | "bevy_color",
1010 | "bevy_core_pipeline",
1011 | "bevy_derive",
1012 | "bevy_ecs",
1013 | "bevy_image",
1014 | "bevy_math",
1015 | "bevy_picking",
1016 | "bevy_reflect",
1017 | "bevy_render",
1018 | "bevy_transform",
1019 | "bevy_utils",
1020 | "bevy_window",
1021 | "bitflags 2.6.0",
1022 | "bytemuck",
1023 | "derive_more",
1024 | "fixedbitset 0.5.7",
1025 | "guillotiere",
1026 | "nonmax",
1027 | "radsort",
1028 | "rectangle-pack",
1029 | ]
1030 |
1031 | [[package]]
1032 | name = "bevy_state"
1033 | version = "0.15.0"
1034 | source = "registry+https://github.com/rust-lang/crates.io-index"
1035 | checksum = "036ec832197eae51b8a842220d2df03591dff75b4566dcf0f81153bbcb2b593b"
1036 | dependencies = [
1037 | "bevy_app",
1038 | "bevy_ecs",
1039 | "bevy_hierarchy",
1040 | "bevy_reflect",
1041 | "bevy_state_macros",
1042 | "bevy_utils",
1043 | ]
1044 |
1045 | [[package]]
1046 | name = "bevy_state_macros"
1047 | version = "0.15.0"
1048 | source = "registry+https://github.com/rust-lang/crates.io-index"
1049 | checksum = "2828eb6762af9eccfebb5e4a0e56dbc4bd07bf3192083fa3e8525cfdb3e95add"
1050 | dependencies = [
1051 | "bevy_macro_utils",
1052 | "proc-macro2",
1053 | "quote",
1054 | "syn",
1055 | ]
1056 |
1057 | [[package]]
1058 | name = "bevy_tasks"
1059 | version = "0.15.0"
1060 | source = "registry+https://github.com/rust-lang/crates.io-index"
1061 | checksum = "5171c605b462b4e3249e01986505e62e3933aa27642a9f793c841814fcbbfb4f"
1062 | dependencies = [
1063 | "async-channel",
1064 | "async-executor",
1065 | "concurrent-queue",
1066 | "futures-channel",
1067 | "futures-lite",
1068 | "pin-project",
1069 | "wasm-bindgen-futures",
1070 | ]
1071 |
1072 | [[package]]
1073 | name = "bevy_text"
1074 | version = "0.15.0"
1075 | source = "registry+https://github.com/rust-lang/crates.io-index"
1076 | checksum = "4fb000b2abad9f82f7a137fac7e0e3d2c6488cbf8dd9ddbb68f9a6b7e7af8d84"
1077 | dependencies = [
1078 | "bevy_app",
1079 | "bevy_asset",
1080 | "bevy_color",
1081 | "bevy_derive",
1082 | "bevy_ecs",
1083 | "bevy_hierarchy",
1084 | "bevy_image",
1085 | "bevy_math",
1086 | "bevy_reflect",
1087 | "bevy_render",
1088 | "bevy_sprite",
1089 | "bevy_transform",
1090 | "bevy_utils",
1091 | "bevy_window",
1092 | "cosmic-text",
1093 | "derive_more",
1094 | "serde",
1095 | "smallvec",
1096 | "sys-locale",
1097 | "unicode-bidi",
1098 | ]
1099 |
1100 | [[package]]
1101 | name = "bevy_time"
1102 | version = "0.15.0"
1103 | source = "registry+https://github.com/rust-lang/crates.io-index"
1104 | checksum = "291b6993b899c04554fc034ebb9e0d7fde9cb9b2fb58dcd912bfa6247abdedbb"
1105 | dependencies = [
1106 | "bevy_app",
1107 | "bevy_ecs",
1108 | "bevy_reflect",
1109 | "bevy_utils",
1110 | "crossbeam-channel",
1111 | ]
1112 |
1113 | [[package]]
1114 | name = "bevy_transform"
1115 | version = "0.15.0"
1116 | source = "registry+https://github.com/rust-lang/crates.io-index"
1117 | checksum = "dc35665624d0c728107ab0920d5ad2d352362b906a8c376eaf375ec9c751faf4"
1118 | dependencies = [
1119 | "bevy_app",
1120 | "bevy_ecs",
1121 | "bevy_hierarchy",
1122 | "bevy_math",
1123 | "bevy_reflect",
1124 | "derive_more",
1125 | ]
1126 |
1127 | [[package]]
1128 | name = "bevy_ui"
1129 | version = "0.15.0"
1130 | source = "registry+https://github.com/rust-lang/crates.io-index"
1131 | checksum = "43da3326aa592d6f6326e31893901bf17cd6957ded4e0ea02bc54652e5624b7f"
1132 | dependencies = [
1133 | "accesskit",
1134 | "bevy_a11y",
1135 | "bevy_app",
1136 | "bevy_asset",
1137 | "bevy_color",
1138 | "bevy_core_pipeline",
1139 | "bevy_derive",
1140 | "bevy_ecs",
1141 | "bevy_hierarchy",
1142 | "bevy_image",
1143 | "bevy_input",
1144 | "bevy_math",
1145 | "bevy_picking",
1146 | "bevy_reflect",
1147 | "bevy_render",
1148 | "bevy_sprite",
1149 | "bevy_text",
1150 | "bevy_transform",
1151 | "bevy_utils",
1152 | "bevy_window",
1153 | "bytemuck",
1154 | "derive_more",
1155 | "nonmax",
1156 | "smallvec",
1157 | "taffy",
1158 | ]
1159 |
1160 | [[package]]
1161 | name = "bevy_utils"
1162 | version = "0.15.0"
1163 | source = "registry+https://github.com/rust-lang/crates.io-index"
1164 | checksum = "a0a48bad33c385a7818b7683a16c8b5c6930eded05cd3f176264fc1f5acea473"
1165 | dependencies = [
1166 | "ahash",
1167 | "bevy_utils_proc_macros",
1168 | "getrandom",
1169 | "hashbrown 0.14.5",
1170 | "thread_local",
1171 | "tracing",
1172 | "web-time",
1173 | ]
1174 |
1175 | [[package]]
1176 | name = "bevy_utils_proc_macros"
1177 | version = "0.15.0"
1178 | source = "registry+https://github.com/rust-lang/crates.io-index"
1179 | checksum = "3dfd8d4a525b8f04f85863e45ccad3e922d4c11ed4a8d54f7f62a40bf83fb90f"
1180 | dependencies = [
1181 | "proc-macro2",
1182 | "quote",
1183 | "syn",
1184 | ]
1185 |
1186 | [[package]]
1187 | name = "bevy_window"
1188 | version = "0.15.0"
1189 | source = "registry+https://github.com/rust-lang/crates.io-index"
1190 | checksum = "05f3520279aae65935d6a84443202c154ead3abebf8dae906d095665162de358"
1191 | dependencies = [
1192 | "android-activity",
1193 | "bevy_a11y",
1194 | "bevy_app",
1195 | "bevy_ecs",
1196 | "bevy_input",
1197 | "bevy_math",
1198 | "bevy_reflect",
1199 | "bevy_utils",
1200 | "raw-window-handle",
1201 | "smol_str",
1202 | ]
1203 |
1204 | [[package]]
1205 | name = "bevy_winit"
1206 | version = "0.15.0"
1207 | source = "registry+https://github.com/rust-lang/crates.io-index"
1208 | checksum = "581bb2249a82285707e0977a9a1c79a2248ede587fcb289708faa03a82ebfa7f"
1209 | dependencies = [
1210 | "accesskit",
1211 | "accesskit_winit",
1212 | "approx",
1213 | "bevy_a11y",
1214 | "bevy_app",
1215 | "bevy_asset",
1216 | "bevy_derive",
1217 | "bevy_ecs",
1218 | "bevy_hierarchy",
1219 | "bevy_image",
1220 | "bevy_input",
1221 | "bevy_log",
1222 | "bevy_math",
1223 | "bevy_reflect",
1224 | "bevy_tasks",
1225 | "bevy_utils",
1226 | "bevy_window",
1227 | "bytemuck",
1228 | "cfg-if",
1229 | "crossbeam-channel",
1230 | "raw-window-handle",
1231 | "wasm-bindgen",
1232 | "web-sys",
1233 | "wgpu-types",
1234 | "winit",
1235 | ]
1236 |
1237 | [[package]]
1238 | name = "bindgen"
1239 | version = "0.70.1"
1240 | source = "registry+https://github.com/rust-lang/crates.io-index"
1241 | checksum = "f49d8fed880d473ea71efb9bf597651e77201bdd4893efe54c9e5d65ae04ce6f"
1242 | dependencies = [
1243 | "bitflags 2.6.0",
1244 | "cexpr",
1245 | "clang-sys",
1246 | "itertools",
1247 | "log",
1248 | "prettyplease",
1249 | "proc-macro2",
1250 | "quote",
1251 | "regex",
1252 | "rustc-hash",
1253 | "shlex",
1254 | "syn",
1255 | ]
1256 |
1257 | [[package]]
1258 | name = "bit-set"
1259 | version = "0.5.3"
1260 | source = "registry+https://github.com/rust-lang/crates.io-index"
1261 | checksum = "0700ddab506f33b20a03b13996eccd309a48e5ff77d0d95926aa0210fb4e95f1"
1262 | dependencies = [
1263 | "bit-vec 0.6.3",
1264 | ]
1265 |
1266 | [[package]]
1267 | name = "bit-set"
1268 | version = "0.8.0"
1269 | source = "registry+https://github.com/rust-lang/crates.io-index"
1270 | checksum = "08807e080ed7f9d5433fa9b275196cfc35414f66a0c79d864dc51a0d825231a3"
1271 | dependencies = [
1272 | "bit-vec 0.8.0",
1273 | ]
1274 |
1275 | [[package]]
1276 | name = "bit-vec"
1277 | version = "0.6.3"
1278 | source = "registry+https://github.com/rust-lang/crates.io-index"
1279 | checksum = "349f9b6a179ed607305526ca489b34ad0a41aed5f7980fa90eb03160b69598fb"
1280 |
1281 | [[package]]
1282 | name = "bit-vec"
1283 | version = "0.8.0"
1284 | source = "registry+https://github.com/rust-lang/crates.io-index"
1285 | checksum = "5e764a1d40d510daf35e07be9eb06e75770908c27d411ee6c92109c9840eaaf7"
1286 |
1287 | [[package]]
1288 | name = "bitflags"
1289 | version = "1.3.2"
1290 | source = "registry+https://github.com/rust-lang/crates.io-index"
1291 | checksum = "bef38d45163c2f1dde094a7dfd33ccf595c92905c8f8f4fdc18d06fb1037718a"
1292 |
1293 | [[package]]
1294 | name = "bitflags"
1295 | version = "2.6.0"
1296 | source = "registry+https://github.com/rust-lang/crates.io-index"
1297 | checksum = "b048fb63fd8b5923fc5aa7b340d8e156aec7ec02f0c78fa8a6ddc2613f6f71de"
1298 | dependencies = [
1299 | "serde",
1300 | ]
1301 |
1302 | [[package]]
1303 | name = "blake3"
1304 | version = "1.5.5"
1305 | source = "registry+https://github.com/rust-lang/crates.io-index"
1306 | checksum = "b8ee0c1824c4dea5b5f81736aff91bae041d2c07ee1192bec91054e10e3e601e"
1307 | dependencies = [
1308 | "arrayref",
1309 | "arrayvec",
1310 | "cc",
1311 | "cfg-if",
1312 | "constant_time_eq",
1313 | ]
1314 |
1315 | [[package]]
1316 | name = "block"
1317 | version = "0.1.6"
1318 | source = "registry+https://github.com/rust-lang/crates.io-index"
1319 | checksum = "0d8c1fef690941d3e7788d328517591fecc684c084084702d6ff1641e993699a"
1320 |
1321 | [[package]]
1322 | name = "block2"
1323 | version = "0.5.1"
1324 | source = "registry+https://github.com/rust-lang/crates.io-index"
1325 | checksum = "2c132eebf10f5cad5289222520a4a058514204aed6d791f1cf4fe8088b82d15f"
1326 | dependencies = [
1327 | "objc2",
1328 | ]
1329 |
1330 | [[package]]
1331 | name = "blocking"
1332 | version = "1.6.1"
1333 | source = "registry+https://github.com/rust-lang/crates.io-index"
1334 | checksum = "703f41c54fc768e63e091340b424302bb1c29ef4aa0c7f10fe849dfb114d29ea"
1335 | dependencies = [
1336 | "async-channel",
1337 | "async-task",
1338 | "futures-io",
1339 | "futures-lite",
1340 | "piper",
1341 | ]
1342 |
1343 | [[package]]
1344 | name = "bumpalo"
1345 | version = "3.16.0"
1346 | source = "registry+https://github.com/rust-lang/crates.io-index"
1347 | checksum = "79296716171880943b8470b5f8d03aa55eb2e645a4874bdbb28adb49162e012c"
1348 |
1349 | [[package]]
1350 | name = "bytemuck"
1351 | version = "1.20.0"
1352 | source = "registry+https://github.com/rust-lang/crates.io-index"
1353 | checksum = "8b37c88a63ffd85d15b406896cc343916d7cf57838a847b3a6f2ca5d39a5695a"
1354 | dependencies = [
1355 | "bytemuck_derive",
1356 | ]
1357 |
1358 | [[package]]
1359 | name = "bytemuck_derive"
1360 | version = "1.8.0"
1361 | source = "registry+https://github.com/rust-lang/crates.io-index"
1362 | checksum = "bcfcc3cd946cb52f0bbfdbbcfa2f4e24f75ebb6c0e1002f7c25904fada18b9ec"
1363 | dependencies = [
1364 | "proc-macro2",
1365 | "quote",
1366 | "syn",
1367 | ]
1368 |
1369 | [[package]]
1370 | name = "byteorder"
1371 | version = "1.5.0"
1372 | source = "registry+https://github.com/rust-lang/crates.io-index"
1373 | checksum = "1fd0f2584146f6f2ef48085050886acf353beff7305ebd1ae69500e27c67f64b"
1374 |
1375 | [[package]]
1376 | name = "byteorder-lite"
1377 | version = "0.1.0"
1378 | source = "registry+https://github.com/rust-lang/crates.io-index"
1379 | checksum = "8f1fe948ff07f4bd06c30984e69f5b4899c516a3ef74f34df92a2df2ab535495"
1380 |
1381 | [[package]]
1382 | name = "bytes"
1383 | version = "1.9.0"
1384 | source = "registry+https://github.com/rust-lang/crates.io-index"
1385 | checksum = "325918d6fe32f23b19878fe4b34794ae41fc19ddbe53b10571a4874d44ffd39b"
1386 |
1387 | [[package]]
1388 | name = "calloop"
1389 | version = "0.13.0"
1390 | source = "registry+https://github.com/rust-lang/crates.io-index"
1391 | checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec"
1392 | dependencies = [
1393 | "bitflags 2.6.0",
1394 | "log",
1395 | "polling",
1396 | "rustix",
1397 | "slab",
1398 | "thiserror",
1399 | ]
1400 |
1401 | [[package]]
1402 | name = "cc"
1403 | version = "1.2.2"
1404 | source = "registry+https://github.com/rust-lang/crates.io-index"
1405 | checksum = "f34d93e62b03caf570cccc334cbc6c2fceca82f39211051345108adcba3eebdc"
1406 | dependencies = [
1407 | "jobserver",
1408 | "libc",
1409 | "shlex",
1410 | ]
1411 |
1412 | [[package]]
1413 | name = "cesu8"
1414 | version = "1.1.0"
1415 | source = "registry+https://github.com/rust-lang/crates.io-index"
1416 | checksum = "6d43a04d8753f35258c91f8ec639f792891f748a1edbd759cf1dcea3382ad83c"
1417 |
1418 | [[package]]
1419 | name = "cexpr"
1420 | version = "0.6.0"
1421 | source = "registry+https://github.com/rust-lang/crates.io-index"
1422 | checksum = "6fac387a98bb7c37292057cffc56d62ecb629900026402633ae9160df93a8766"
1423 | dependencies = [
1424 | "nom",
1425 | ]
1426 |
1427 | [[package]]
1428 | name = "cfg-if"
1429 | version = "1.0.0"
1430 | source = "registry+https://github.com/rust-lang/crates.io-index"
1431 | checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
1432 |
1433 | [[package]]
1434 | name = "cfg_aliases"
1435 | version = "0.1.1"
1436 | source = "registry+https://github.com/rust-lang/crates.io-index"
1437 | checksum = "fd16c4719339c4530435d38e511904438d07cce7950afa3718a84ac36c10e89e"
1438 |
1439 | [[package]]
1440 | name = "cfg_aliases"
1441 | version = "0.2.1"
1442 | source = "registry+https://github.com/rust-lang/crates.io-index"
1443 | checksum = "613afe47fcd5fac7ccf1db93babcb082c5994d996f20b8b159f2ad1658eb5724"
1444 |
1445 | [[package]]
1446 | name = "clang-sys"
1447 | version = "1.8.1"
1448 | source = "registry+https://github.com/rust-lang/crates.io-index"
1449 | checksum = "0b023947811758c97c59bf9d1c188fd619ad4718dcaa767947df1cadb14f39f4"
1450 | dependencies = [
1451 | "glob",
1452 | "libc",
1453 | "libloading",
1454 | ]
1455 |
1456 | [[package]]
1457 | name = "codespan-reporting"
1458 | version = "0.11.1"
1459 | source = "registry+https://github.com/rust-lang/crates.io-index"
1460 | checksum = "3538270d33cc669650c4b093848450d380def10c331d38c768e34cac80576e6e"
1461 | dependencies = [
1462 | "termcolor",
1463 | "unicode-width",
1464 | ]
1465 |
1466 | [[package]]
1467 | name = "combine"
1468 | version = "4.6.7"
1469 | source = "registry+https://github.com/rust-lang/crates.io-index"
1470 | checksum = "ba5a308b75df32fe02788e748662718f03fde005016435c444eea572398219fd"
1471 | dependencies = [
1472 | "bytes",
1473 | "memchr",
1474 | ]
1475 |
1476 | [[package]]
1477 | name = "concurrent-queue"
1478 | version = "2.5.0"
1479 | source = "registry+https://github.com/rust-lang/crates.io-index"
1480 | checksum = "4ca0197aee26d1ae37445ee532fefce43251d24cc7c166799f4d46817f1d3973"
1481 | dependencies = [
1482 | "crossbeam-utils",
1483 | ]
1484 |
1485 | [[package]]
1486 | name = "console_error_panic_hook"
1487 | version = "0.1.7"
1488 | source = "registry+https://github.com/rust-lang/crates.io-index"
1489 | checksum = "a06aeb73f470f66dcdbf7223caeebb85984942f22f1adb2a088cf9668146bbbc"
1490 | dependencies = [
1491 | "cfg-if",
1492 | "wasm-bindgen",
1493 | ]
1494 |
1495 | [[package]]
1496 | name = "const-fnv1a-hash"
1497 | version = "1.1.0"
1498 | source = "registry+https://github.com/rust-lang/crates.io-index"
1499 | checksum = "32b13ea120a812beba79e34316b3942a857c86ec1593cb34f27bb28272ce2cca"
1500 |
1501 | [[package]]
1502 | name = "const-random"
1503 | version = "0.1.18"
1504 | source = "registry+https://github.com/rust-lang/crates.io-index"
1505 | checksum = "87e00182fe74b066627d63b85fd550ac2998d4b0bd86bfed477a0ae4c7c71359"
1506 | dependencies = [
1507 | "const-random-macro",
1508 | ]
1509 |
1510 | [[package]]
1511 | name = "const-random-macro"
1512 | version = "0.1.16"
1513 | source = "registry+https://github.com/rust-lang/crates.io-index"
1514 | checksum = "f9d839f2a20b0aee515dc581a6172f2321f96cab76c1a38a4c584a194955390e"
1515 | dependencies = [
1516 | "getrandom",
1517 | "once_cell",
1518 | "tiny-keccak",
1519 | ]
1520 |
1521 | [[package]]
1522 | name = "const_panic"
1523 | version = "0.2.10"
1524 | source = "registry+https://github.com/rust-lang/crates.io-index"
1525 | checksum = "013b6c2c3a14d678f38cd23994b02da3a1a1b6a5d1eedddfe63a5a5f11b13a81"
1526 |
1527 | [[package]]
1528 | name = "const_soft_float"
1529 | version = "0.1.4"
1530 | source = "registry+https://github.com/rust-lang/crates.io-index"
1531 | checksum = "87ca1caa64ef4ed453e68bb3db612e51cf1b2f5b871337f0fcab1c8f87cc3dff"
1532 |
1533 | [[package]]
1534 | name = "constant_time_eq"
1535 | version = "0.3.1"
1536 | source = "registry+https://github.com/rust-lang/crates.io-index"
1537 | checksum = "7c74b8349d32d297c9134b8c88677813a227df8f779daa29bfc29c183fe3dca6"
1538 |
1539 | [[package]]
1540 | name = "constgebra"
1541 | version = "0.1.4"
1542 | source = "registry+https://github.com/rust-lang/crates.io-index"
1543 | checksum = "e1aaf9b65849a68662ac6c0810c8893a765c960b907dd7cfab9c4a50bf764fbc"
1544 | dependencies = [
1545 | "const_soft_float",
1546 | ]
1547 |
1548 | [[package]]
1549 | name = "core-foundation"
1550 | version = "0.9.4"
1551 | source = "registry+https://github.com/rust-lang/crates.io-index"
1552 | checksum = "91e195e091a93c46f7102ec7818a2aa394e1e1771c3ab4825963fa03e45afb8f"
1553 | dependencies = [
1554 | "core-foundation-sys",
1555 | "libc",
1556 | ]
1557 |
1558 | [[package]]
1559 | name = "core-foundation"
1560 | version = "0.10.0"
1561 | source = "registry+https://github.com/rust-lang/crates.io-index"
1562 | checksum = "b55271e5c8c478ad3f38ad24ef34923091e0548492a266d19b3c0b4d82574c63"
1563 | dependencies = [
1564 | "core-foundation-sys",
1565 | "libc",
1566 | ]
1567 |
1568 | [[package]]
1569 | name = "core-foundation-sys"
1570 | version = "0.8.7"
1571 | source = "registry+https://github.com/rust-lang/crates.io-index"
1572 | checksum = "773648b94d0e5d620f64f280777445740e61fe701025087ec8b57f45c791888b"
1573 |
1574 | [[package]]
1575 | name = "core-graphics"
1576 | version = "0.23.2"
1577 | source = "registry+https://github.com/rust-lang/crates.io-index"
1578 | checksum = "c07782be35f9e1140080c6b96f0d44b739e2278479f64e02fdab4e32dfd8b081"
1579 | dependencies = [
1580 | "bitflags 1.3.2",
1581 | "core-foundation 0.9.4",
1582 | "core-graphics-types",
1583 | "foreign-types",
1584 | "libc",
1585 | ]
1586 |
1587 | [[package]]
1588 | name = "core-graphics-types"
1589 | version = "0.1.3"
1590 | source = "registry+https://github.com/rust-lang/crates.io-index"
1591 | checksum = "45390e6114f68f718cc7a830514a96f903cccd70d02a8f6d9f643ac4ba45afaf"
1592 | dependencies = [
1593 | "bitflags 1.3.2",
1594 | "core-foundation 0.9.4",
1595 | "libc",
1596 | ]
1597 |
1598 | [[package]]
1599 | name = "coreaudio-rs"
1600 | version = "0.11.3"
1601 | source = "registry+https://github.com/rust-lang/crates.io-index"
1602 | checksum = "321077172d79c662f64f5071a03120748d5bb652f5231570141be24cfcd2bace"
1603 | dependencies = [
1604 | "bitflags 1.3.2",
1605 | "core-foundation-sys",
1606 | "coreaudio-sys",
1607 | ]
1608 |
1609 | [[package]]
1610 | name = "coreaudio-sys"
1611 | version = "0.2.16"
1612 | source = "registry+https://github.com/rust-lang/crates.io-index"
1613 | checksum = "2ce857aa0b77d77287acc1ac3e37a05a8c95a2af3647d23b15f263bdaeb7562b"
1614 | dependencies = [
1615 | "bindgen",
1616 | ]
1617 |
1618 | [[package]]
1619 | name = "cosmic-text"
1620 | version = "0.12.1"
1621 | source = "registry+https://github.com/rust-lang/crates.io-index"
1622 | checksum = "59fd57d82eb4bfe7ffa9b1cec0c05e2fd378155b47f255a67983cb4afe0e80c2"
1623 | dependencies = [
1624 | "bitflags 2.6.0",
1625 | "fontdb",
1626 | "log",
1627 | "rangemap",
1628 | "rayon",
1629 | "rustc-hash",
1630 | "rustybuzz",
1631 | "self_cell",
1632 | "swash",
1633 | "sys-locale",
1634 | "ttf-parser 0.21.1",
1635 | "unicode-bidi",
1636 | "unicode-linebreak",
1637 | "unicode-script",
1638 | "unicode-segmentation",
1639 | ]
1640 |
1641 | [[package]]
1642 | name = "cpal"
1643 | version = "0.15.3"
1644 | source = "registry+https://github.com/rust-lang/crates.io-index"
1645 | checksum = "873dab07c8f743075e57f524c583985fbaf745602acbe916a01539364369a779"
1646 | dependencies = [
1647 | "alsa",
1648 | "core-foundation-sys",
1649 | "coreaudio-rs",
1650 | "dasp_sample",
1651 | "jni",
1652 | "js-sys",
1653 | "libc",
1654 | "mach2",
1655 | "ndk 0.8.0",
1656 | "ndk-context",
1657 | "oboe",
1658 | "wasm-bindgen",
1659 | "wasm-bindgen-futures",
1660 | "web-sys",
1661 | "windows 0.54.0",
1662 | ]
1663 |
1664 | [[package]]
1665 | name = "crc32fast"
1666 | version = "1.4.2"
1667 | source = "registry+https://github.com/rust-lang/crates.io-index"
1668 | checksum = "a97769d94ddab943e4510d138150169a2758b5ef3eb191a9ee688de3e23ef7b3"
1669 | dependencies = [
1670 | "cfg-if",
1671 | ]
1672 |
1673 | [[package]]
1674 | name = "crossbeam-channel"
1675 | version = "0.5.13"
1676 | source = "registry+https://github.com/rust-lang/crates.io-index"
1677 | checksum = "33480d6946193aa8033910124896ca395333cae7e2d1113d1fef6c3272217df2"
1678 | dependencies = [
1679 | "crossbeam-utils",
1680 | ]
1681 |
1682 | [[package]]
1683 | name = "crossbeam-deque"
1684 | version = "0.8.5"
1685 | source = "registry+https://github.com/rust-lang/crates.io-index"
1686 | checksum = "613f8cc01fe9cf1a3eb3d7f488fd2fa8388403e97039e2f73692932e291a770d"
1687 | dependencies = [
1688 | "crossbeam-epoch",
1689 | "crossbeam-utils",
1690 | ]
1691 |
1692 | [[package]]
1693 | name = "crossbeam-epoch"
1694 | version = "0.9.18"
1695 | source = "registry+https://github.com/rust-lang/crates.io-index"
1696 | checksum = "5b82ac4a3c2ca9c3460964f020e1402edd5753411d7737aa39c3714ad1b5420e"
1697 | dependencies = [
1698 | "crossbeam-utils",
1699 | ]
1700 |
1701 | [[package]]
1702 | name = "crossbeam-utils"
1703 | version = "0.8.20"
1704 | source = "registry+https://github.com/rust-lang/crates.io-index"
1705 | checksum = "22ec99545bb0ed0ea7bb9b8e1e9122ea386ff8a48c0922e43f36d45ab09e0e80"
1706 |
1707 | [[package]]
1708 | name = "crunchy"
1709 | version = "0.2.2"
1710 | source = "registry+https://github.com/rust-lang/crates.io-index"
1711 | checksum = "7a81dae078cea95a014a339291cec439d2f232ebe854a9d672b796c6afafa9b7"
1712 |
1713 | [[package]]
1714 | name = "ctrlc"
1715 | version = "3.4.5"
1716 | source = "registry+https://github.com/rust-lang/crates.io-index"
1717 | checksum = "90eeab0aa92f3f9b4e87f258c72b139c207d251f9cbc1080a0086b86a8870dd3"
1718 | dependencies = [
1719 | "nix",
1720 | "windows-sys 0.59.0",
1721 | ]
1722 |
1723 | [[package]]
1724 | name = "cursor-icon"
1725 | version = "1.1.0"
1726 | source = "registry+https://github.com/rust-lang/crates.io-index"
1727 | checksum = "96a6ac251f4a2aca6b3f91340350eab87ae57c3f127ffeb585e92bd336717991"
1728 |
1729 | [[package]]
1730 | name = "dasp_sample"
1731 | version = "0.11.0"
1732 | source = "registry+https://github.com/rust-lang/crates.io-index"
1733 | checksum = "0c87e182de0887fd5361989c677c4e8f5000cd9491d6d563161a8f3a5519fc7f"
1734 |
1735 | [[package]]
1736 | name = "data-encoding"
1737 | version = "2.6.0"
1738 | source = "registry+https://github.com/rust-lang/crates.io-index"
1739 | checksum = "e8566979429cf69b49a5c740c60791108e86440e8be149bbea4fe54d2c32d6e2"
1740 |
1741 | [[package]]
1742 | name = "derive_more"
1743 | version = "1.0.0"
1744 | source = "registry+https://github.com/rust-lang/crates.io-index"
1745 | checksum = "4a9b99b9cbbe49445b21764dc0625032a89b145a2642e67603e1c936f5458d05"
1746 | dependencies = [
1747 | "derive_more-impl",
1748 | ]
1749 |
1750 | [[package]]
1751 | name = "derive_more-impl"
1752 | version = "1.0.0"
1753 | source = "registry+https://github.com/rust-lang/crates.io-index"
1754 | checksum = "cb7330aeadfbe296029522e6c40f315320aba36fc43a5b3632f3795348f3bd22"
1755 | dependencies = [
1756 | "proc-macro2",
1757 | "quote",
1758 | "syn",
1759 | "unicode-xid",
1760 | ]
1761 |
1762 | [[package]]
1763 | name = "dispatch"
1764 | version = "0.2.0"
1765 | source = "registry+https://github.com/rust-lang/crates.io-index"
1766 | checksum = "bd0c93bb4b0c6d9b77f4435b0ae98c24d17f1c45b2ff844c6151a07256ca923b"
1767 |
1768 | [[package]]
1769 | name = "disqualified"
1770 | version = "1.0.0"
1771 | source = "registry+https://github.com/rust-lang/crates.io-index"
1772 | checksum = "c9c272297e804878a2a4b707cfcfc6d2328b5bb936944613b4fdf2b9269afdfd"
1773 |
1774 | [[package]]
1775 | name = "dlib"
1776 | version = "0.5.2"
1777 | source = "registry+https://github.com/rust-lang/crates.io-index"
1778 | checksum = "330c60081dcc4c72131f8eb70510f1ac07223e5d4163db481a04a0befcffa412"
1779 | dependencies = [
1780 | "libloading",
1781 | ]
1782 |
1783 | [[package]]
1784 | name = "document-features"
1785 | version = "0.2.10"
1786 | source = "registry+https://github.com/rust-lang/crates.io-index"
1787 | checksum = "cb6969eaabd2421f8a2775cfd2471a2b634372b4a25d41e3bd647b79912850a0"
1788 | dependencies = [
1789 | "litrs",
1790 | ]
1791 |
1792 | [[package]]
1793 | name = "downcast-rs"
1794 | version = "1.2.1"
1795 | source = "registry+https://github.com/rust-lang/crates.io-index"
1796 | checksum = "75b325c5dbd37f80359721ad39aca5a29fb04c89279657cffdda8736d0c0b9d2"
1797 |
1798 | [[package]]
1799 | name = "dpi"
1800 | version = "0.1.1"
1801 | source = "registry+https://github.com/rust-lang/crates.io-index"
1802 | checksum = "f25c0e292a7ca6d6498557ff1df68f32c99850012b6ea401cf8daf771f22ff53"
1803 |
1804 | [[package]]
1805 | name = "either"
1806 | version = "1.13.0"
1807 | source = "registry+https://github.com/rust-lang/crates.io-index"
1808 | checksum = "60b1af1c220855b6ceac025d3f6ecdd2b7c4894bfe9cd9bda4fbb4bc7c0d4cf0"
1809 |
1810 | [[package]]
1811 | name = "encase"
1812 | version = "0.10.0"
1813 | source = "registry+https://github.com/rust-lang/crates.io-index"
1814 | checksum = "b0a05902cf601ed11d564128448097b98ebe3c6574bd7b6a653a3d56d54aa020"
1815 | dependencies = [
1816 | "const_panic",
1817 | "encase_derive",
1818 | "glam",
1819 | "thiserror",
1820 | ]
1821 |
1822 | [[package]]
1823 | name = "encase_derive"
1824 | version = "0.10.0"
1825 | source = "registry+https://github.com/rust-lang/crates.io-index"
1826 | checksum = "181d475b694e2dd56ae919ce7699d344d1fd259292d590c723a50d1189a2ea85"
1827 | dependencies = [
1828 | "encase_derive_impl",
1829 | ]
1830 |
1831 | [[package]]
1832 | name = "encase_derive_impl"
1833 | version = "0.10.0"
1834 | source = "registry+https://github.com/rust-lang/crates.io-index"
1835 | checksum = "f97b51c5cc57ef7c5f7a0c57c250251c49ee4c28f819f87ac32f4aceabc36792"
1836 | dependencies = [
1837 | "proc-macro2",
1838 | "quote",
1839 | "syn",
1840 | ]
1841 |
1842 | [[package]]
1843 | name = "equivalent"
1844 | version = "1.0.1"
1845 | source = "registry+https://github.com/rust-lang/crates.io-index"
1846 | checksum = "5443807d6dff69373d433ab9ef5378ad8df50ca6298caf15de6e52e24aaf54d5"
1847 |
1848 | [[package]]
1849 | name = "erased-serde"
1850 | version = "0.4.5"
1851 | source = "registry+https://github.com/rust-lang/crates.io-index"
1852 | checksum = "24e2389d65ab4fab27dc2a5de7b191e1f6617d1f1c8855c0dc569c94a4cbb18d"
1853 | dependencies = [
1854 | "serde",
1855 | "typeid",
1856 | ]
1857 |
1858 | [[package]]
1859 | name = "errno"
1860 | version = "0.3.10"
1861 | source = "registry+https://github.com/rust-lang/crates.io-index"
1862 | checksum = "33d852cb9b869c2a9b3df2f71a3074817f01e1844f839a144f5fcef059a4eb5d"
1863 | dependencies = [
1864 | "libc",
1865 | "windows-sys 0.59.0",
1866 | ]
1867 |
1868 | [[package]]
1869 | name = "euclid"
1870 | version = "0.22.11"
1871 | source = "registry+https://github.com/rust-lang/crates.io-index"
1872 | checksum = "ad9cdb4b747e485a12abb0e6566612956c7a1bafa3bdb8d682c5b6d403589e48"
1873 | dependencies = [
1874 | "num-traits",
1875 | ]
1876 |
1877 | [[package]]
1878 | name = "event-listener"
1879 | version = "2.5.3"
1880 | source = "registry+https://github.com/rust-lang/crates.io-index"
1881 | checksum = "0206175f82b8d6bf6652ff7d71a1e27fd2e4efde587fd368662814d6ec1d9ce0"
1882 |
1883 | [[package]]
1884 | name = "event-listener"
1885 | version = "5.3.1"
1886 | source = "registry+https://github.com/rust-lang/crates.io-index"
1887 | checksum = "6032be9bd27023a771701cc49f9f053c751055f71efb2e0ae5c15809093675ba"
1888 | dependencies = [
1889 | "concurrent-queue",
1890 | "parking",
1891 | "pin-project-lite",
1892 | ]
1893 |
1894 | [[package]]
1895 | name = "event-listener-strategy"
1896 | version = "0.5.2"
1897 | source = "registry+https://github.com/rust-lang/crates.io-index"
1898 | checksum = "0f214dc438f977e6d4e3500aaa277f5ad94ca83fbbd9b1a15713ce2344ccc5a1"
1899 | dependencies = [
1900 | "event-listener 5.3.1",
1901 | "pin-project-lite",
1902 | ]
1903 |
1904 | [[package]]
1905 | name = "fastrand"
1906 | version = "2.2.0"
1907 | source = "registry+https://github.com/rust-lang/crates.io-index"
1908 | checksum = "486f806e73c5707928240ddc295403b1b93c96a02038563881c4a2fd84b81ac4"
1909 |
1910 | [[package]]
1911 | name = "fdeflate"
1912 | version = "0.3.6"
1913 | source = "registry+https://github.com/rust-lang/crates.io-index"
1914 | checksum = "07c6f4c64c1d33a3111c4466f7365ebdcc37c5bd1ea0d62aae2e3d722aacbedb"
1915 | dependencies = [
1916 | "simd-adler32",
1917 | ]
1918 |
1919 | [[package]]
1920 | name = "file-id"
1921 | version = "0.2.2"
1922 | source = "registry+https://github.com/rust-lang/crates.io-index"
1923 | checksum = "6bc904b9bbefcadbd8e3a9fb0d464a9b979de6324c03b3c663e8994f46a5be36"
1924 | dependencies = [
1925 | "windows-sys 0.52.0",
1926 | ]
1927 |
1928 | [[package]]
1929 | name = "filetime"
1930 | version = "0.2.25"
1931 | source = "registry+https://github.com/rust-lang/crates.io-index"
1932 | checksum = "35c0522e981e68cbfa8c3f978441a5f34b30b96e146b33cd3359176b50fe8586"
1933 | dependencies = [
1934 | "cfg-if",
1935 | "libc",
1936 | "libredox",
1937 | "windows-sys 0.59.0",
1938 | ]
1939 |
1940 | [[package]]
1941 | name = "fixedbitset"
1942 | version = "0.4.2"
1943 | source = "registry+https://github.com/rust-lang/crates.io-index"
1944 | checksum = "0ce7134b9999ecaf8bcd65542e436736ef32ddca1b3e06094cb6ec5755203b80"
1945 |
1946 | [[package]]
1947 | name = "fixedbitset"
1948 | version = "0.5.7"
1949 | source = "registry+https://github.com/rust-lang/crates.io-index"
1950 | checksum = "1d674e81391d1e1ab681a28d99df07927c6d4aa5b027d7da16ba32d1d21ecd99"
1951 |
1952 | [[package]]
1953 | name = "flate2"
1954 | version = "1.0.35"
1955 | source = "registry+https://github.com/rust-lang/crates.io-index"
1956 | checksum = "c936bfdafb507ebbf50b8074c54fa31c5be9a1e7e5f467dd659697041407d07c"
1957 | dependencies = [
1958 | "crc32fast",
1959 | "miniz_oxide",
1960 | ]
1961 |
1962 | [[package]]
1963 | name = "fnv"
1964 | version = "1.0.7"
1965 | source = "registry+https://github.com/rust-lang/crates.io-index"
1966 | checksum = "3f9eec918d3f24069decb9af1554cad7c880e2da24a9afd88aca000531ab82c1"
1967 |
1968 | [[package]]
1969 | name = "foldhash"
1970 | version = "0.1.3"
1971 | source = "registry+https://github.com/rust-lang/crates.io-index"
1972 | checksum = "f81ec6369c545a7d40e4589b5597581fa1c441fe1cce96dd1de43159910a36a2"
1973 |
1974 | [[package]]
1975 | name = "font-types"
1976 | version = "0.7.3"
1977 | source = "registry+https://github.com/rust-lang/crates.io-index"
1978 | checksum = "b3971f9a5ca983419cdc386941ba3b9e1feba01a0ab888adf78739feb2798492"
1979 | dependencies = [
1980 | "bytemuck",
1981 | ]
1982 |
1983 | [[package]]
1984 | name = "fontconfig-parser"
1985 | version = "0.5.7"
1986 | source = "registry+https://github.com/rust-lang/crates.io-index"
1987 | checksum = "c1fcfcd44ca6e90c921fee9fa665d530b21ef1327a4c1a6c5250ea44b776ada7"
1988 | dependencies = [
1989 | "roxmltree",
1990 | ]
1991 |
1992 | [[package]]
1993 | name = "fontdb"
1994 | version = "0.16.2"
1995 | source = "registry+https://github.com/rust-lang/crates.io-index"
1996 | checksum = "b0299020c3ef3f60f526a4f64ab4a3d4ce116b1acbf24cdd22da0068e5d81dc3"
1997 | dependencies = [
1998 | "fontconfig-parser",
1999 | "log",
2000 | "memmap2",
2001 | "slotmap",
2002 | "tinyvec",
2003 | "ttf-parser 0.20.0",
2004 | ]
2005 |
2006 | [[package]]
2007 | name = "foreign-types"
2008 | version = "0.5.0"
2009 | source = "registry+https://github.com/rust-lang/crates.io-index"
2010 | checksum = "d737d9aa519fb7b749cbc3b962edcf310a8dd1f4b67c91c4f83975dbdd17d965"
2011 | dependencies = [
2012 | "foreign-types-macros",
2013 | "foreign-types-shared",
2014 | ]
2015 |
2016 | [[package]]
2017 | name = "foreign-types-macros"
2018 | version = "0.2.3"
2019 | source = "registry+https://github.com/rust-lang/crates.io-index"
2020 | checksum = "1a5c6c585bc94aaf2c7b51dd4c2ba22680844aba4c687be581871a6f518c5742"
2021 | dependencies = [
2022 | "proc-macro2",
2023 | "quote",
2024 | "syn",
2025 | ]
2026 |
2027 | [[package]]
2028 | name = "foreign-types-shared"
2029 | version = "0.3.1"
2030 | source = "registry+https://github.com/rust-lang/crates.io-index"
2031 | checksum = "aa9a19cbb55df58761df49b23516a86d432839add4af60fc256da840f66ed35b"
2032 |
2033 | [[package]]
2034 | name = "fsevent-sys"
2035 | version = "4.1.0"
2036 | source = "registry+https://github.com/rust-lang/crates.io-index"
2037 | checksum = "76ee7a02da4d231650c7cea31349b889be2f45ddb3ef3032d2ec8185f6313fd2"
2038 | dependencies = [
2039 | "libc",
2040 | ]
2041 |
2042 | [[package]]
2043 | name = "futures-channel"
2044 | version = "0.3.31"
2045 | source = "registry+https://github.com/rust-lang/crates.io-index"
2046 | checksum = "2dff15bf788c671c1934e366d07e30c1814a8ef514e1af724a602e8a2fbe1b10"
2047 | dependencies = [
2048 | "futures-core",
2049 | ]
2050 |
2051 | [[package]]
2052 | name = "futures-core"
2053 | version = "0.3.31"
2054 | source = "registry+https://github.com/rust-lang/crates.io-index"
2055 | checksum = "05f29059c0c2090612e8d742178b0580d2dc940c837851ad723096f87af6663e"
2056 |
2057 | [[package]]
2058 | name = "futures-io"
2059 | version = "0.3.31"
2060 | source = "registry+https://github.com/rust-lang/crates.io-index"
2061 | checksum = "9e5c1b78ca4aae1ac06c48a526a655760685149f0d465d21f37abfe57ce075c6"
2062 |
2063 | [[package]]
2064 | name = "futures-lite"
2065 | version = "2.5.0"
2066 | source = "registry+https://github.com/rust-lang/crates.io-index"
2067 | checksum = "cef40d21ae2c515b51041df9ed313ed21e572df340ea58a922a0aefe7e8891a1"
2068 | dependencies = [
2069 | "fastrand",
2070 | "futures-core",
2071 | "futures-io",
2072 | "parking",
2073 | "pin-project-lite",
2074 | ]
2075 |
2076 | [[package]]
2077 | name = "gethostname"
2078 | version = "0.4.3"
2079 | source = "registry+https://github.com/rust-lang/crates.io-index"
2080 | checksum = "0176e0459c2e4a1fe232f984bca6890e681076abb9934f6cea7c326f3fc47818"
2081 | dependencies = [
2082 | "libc",
2083 | "windows-targets 0.48.5",
2084 | ]
2085 |
2086 | [[package]]
2087 | name = "getrandom"
2088 | version = "0.2.15"
2089 | source = "registry+https://github.com/rust-lang/crates.io-index"
2090 | checksum = "c4567c8db10ae91089c99af84c68c38da3ec2f087c3f82960bcdbf3656b6f4d7"
2091 | dependencies = [
2092 | "cfg-if",
2093 | "js-sys",
2094 | "libc",
2095 | "wasi",
2096 | "wasm-bindgen",
2097 | ]
2098 |
2099 | [[package]]
2100 | name = "gilrs"
2101 | version = "0.11.0"
2102 | source = "registry+https://github.com/rust-lang/crates.io-index"
2103 | checksum = "bbb2c998745a3c1ac90f64f4f7b3a54219fd3612d7705e7798212935641ed18f"
2104 | dependencies = [
2105 | "fnv",
2106 | "gilrs-core",
2107 | "log",
2108 | "uuid",
2109 | "vec_map",
2110 | ]
2111 |
2112 | [[package]]
2113 | name = "gilrs-core"
2114 | version = "0.6.0"
2115 | source = "registry+https://github.com/rust-lang/crates.io-index"
2116 | checksum = "495af945e45efd6386227613cd9fb7bd7c43d3c095040e30c5304c489e6abed5"
2117 | dependencies = [
2118 | "core-foundation 0.10.0",
2119 | "inotify 0.11.0",
2120 | "io-kit-sys",
2121 | "js-sys",
2122 | "libc",
2123 | "libudev-sys",
2124 | "log",
2125 | "nix",
2126 | "uuid",
2127 | "vec_map",
2128 | "wasm-bindgen",
2129 | "web-sys",
2130 | "windows 0.58.0",
2131 | ]
2132 |
2133 | [[package]]
2134 | name = "gl_generator"
2135 | version = "0.14.0"
2136 | source = "registry+https://github.com/rust-lang/crates.io-index"
2137 | checksum = "1a95dfc23a2b4a9a2f5ab41d194f8bfda3cabec42af4e39f08c339eb2a0c124d"
2138 | dependencies = [
2139 | "khronos_api",
2140 | "log",
2141 | "xml-rs",
2142 | ]
2143 |
2144 | [[package]]
2145 | name = "glam"
2146 | version = "0.29.2"
2147 | source = "registry+https://github.com/rust-lang/crates.io-index"
2148 | checksum = "dc46dd3ec48fdd8e693a98d2b8bafae273a2d54c1de02a2a7e3d57d501f39677"
2149 | dependencies = [
2150 | "bytemuck",
2151 | "rand",
2152 | "serde",
2153 | ]
2154 |
2155 | [[package]]
2156 | name = "glob"
2157 | version = "0.3.1"
2158 | source = "registry+https://github.com/rust-lang/crates.io-index"
2159 | checksum = "d2fabcfbdc87f4758337ca535fb41a6d701b65693ce38287d856d1674551ec9b"
2160 |
2161 | [[package]]
2162 | name = "glow"
2163 | version = "0.14.2"
2164 | source = "registry+https://github.com/rust-lang/crates.io-index"
2165 | checksum = "d51fa363f025f5c111e03f13eda21162faeacb6911fe8caa0c0349f9cf0c4483"
2166 | dependencies = [
2167 | "js-sys",
2168 | "slotmap",
2169 | "wasm-bindgen",
2170 | "web-sys",
2171 | ]
2172 |
2173 | [[package]]
2174 | name = "gltf"
2175 | version = "1.4.1"
2176 | source = "registry+https://github.com/rust-lang/crates.io-index"
2177 | checksum = "e3ce1918195723ce6ac74e80542c5a96a40c2b26162c1957a5cd70799b8cacf7"
2178 | dependencies = [
2179 | "byteorder",
2180 | "gltf-json",
2181 | "lazy_static",
2182 | "serde_json",
2183 | ]
2184 |
2185 | [[package]]
2186 | name = "gltf-derive"
2187 | version = "1.4.1"
2188 | source = "registry+https://github.com/rust-lang/crates.io-index"
2189 | checksum = "14070e711538afba5d6c807edb74bcb84e5dbb9211a3bf5dea0dfab5b24f4c51"
2190 | dependencies = [
2191 | "inflections",
2192 | "proc-macro2",
2193 | "quote",
2194 | "syn",
2195 | ]
2196 |
2197 | [[package]]
2198 | name = "gltf-json"
2199 | version = "1.4.1"
2200 | source = "registry+https://github.com/rust-lang/crates.io-index"
2201 | checksum = "e6176f9d60a7eab0a877e8e96548605dedbde9190a7ae1e80bbcc1c9af03ab14"
2202 | dependencies = [
2203 | "gltf-derive",
2204 | "serde",
2205 | "serde_derive",
2206 | "serde_json",
2207 | ]
2208 |
2209 | [[package]]
2210 | name = "glutin_wgl_sys"
2211 | version = "0.6.0"
2212 | source = "registry+https://github.com/rust-lang/crates.io-index"
2213 | checksum = "0a4e1951bbd9434a81aa496fe59ccc2235af3820d27b85f9314e279609211e2c"
2214 | dependencies = [
2215 | "gl_generator",
2216 | ]
2217 |
2218 | [[package]]
2219 | name = "gpu-alloc"
2220 | version = "0.6.0"
2221 | source = "registry+https://github.com/rust-lang/crates.io-index"
2222 | checksum = "fbcd2dba93594b227a1f57ee09b8b9da8892c34d55aa332e034a228d0fe6a171"
2223 | dependencies = [
2224 | "bitflags 2.6.0",
2225 | "gpu-alloc-types",
2226 | ]
2227 |
2228 | [[package]]
2229 | name = "gpu-alloc-types"
2230 | version = "0.3.0"
2231 | source = "registry+https://github.com/rust-lang/crates.io-index"
2232 | checksum = "98ff03b468aa837d70984d55f5d3f846f6ec31fe34bbb97c4f85219caeee1ca4"
2233 | dependencies = [
2234 | "bitflags 2.6.0",
2235 | ]
2236 |
2237 | [[package]]
2238 | name = "gpu-allocator"
2239 | version = "0.27.0"
2240 | source = "registry+https://github.com/rust-lang/crates.io-index"
2241 | checksum = "c151a2a5ef800297b4e79efa4f4bec035c5f51d5ae587287c9b952bdf734cacd"
2242 | dependencies = [
2243 | "log",
2244 | "presser",
2245 | "thiserror",
2246 | "windows 0.58.0",
2247 | ]
2248 |
2249 | [[package]]
2250 | name = "gpu-descriptor"
2251 | version = "0.3.0"
2252 | source = "registry+https://github.com/rust-lang/crates.io-index"
2253 | checksum = "9c08c1f623a8d0b722b8b99f821eb0ba672a1618f0d3b16ddbee1cedd2dd8557"
2254 | dependencies = [
2255 | "bitflags 2.6.0",
2256 | "gpu-descriptor-types",
2257 | "hashbrown 0.14.5",
2258 | ]
2259 |
2260 | [[package]]
2261 | name = "gpu-descriptor-types"
2262 | version = "0.2.0"
2263 | source = "registry+https://github.com/rust-lang/crates.io-index"
2264 | checksum = "fdf242682df893b86f33a73828fb09ca4b2d3bb6cc95249707fc684d27484b91"
2265 | dependencies = [
2266 | "bitflags 2.6.0",
2267 | ]
2268 |
2269 | [[package]]
2270 | name = "grid"
2271 | version = "0.14.0"
2272 | source = "registry+https://github.com/rust-lang/crates.io-index"
2273 | checksum = "be136d9dacc2a13cc70bb6c8f902b414fb2641f8db1314637c6b7933411a8f82"
2274 |
2275 | [[package]]
2276 | name = "guillotiere"
2277 | version = "0.6.2"
2278 | source = "registry+https://github.com/rust-lang/crates.io-index"
2279 | checksum = "b62d5865c036cb1393e23c50693df631d3f5d7bcca4c04fe4cc0fd592e74a782"
2280 | dependencies = [
2281 | "euclid",
2282 | "svg_fmt",
2283 | ]
2284 |
2285 | [[package]]
2286 | name = "hashbrown"
2287 | version = "0.14.5"
2288 | source = "registry+https://github.com/rust-lang/crates.io-index"
2289 | checksum = "e5274423e17b7c9fc20b6e7e208532f9b19825d82dfd615708b70edd83df41f1"
2290 | dependencies = [
2291 | "ahash",
2292 | "allocator-api2",
2293 | "serde",
2294 | ]
2295 |
2296 | [[package]]
2297 | name = "hashbrown"
2298 | version = "0.15.2"
2299 | source = "registry+https://github.com/rust-lang/crates.io-index"
2300 | checksum = "bf151400ff0baff5465007dd2f3e717f3fe502074ca563069ce3a6629d07b289"
2301 | dependencies = [
2302 | "foldhash",
2303 | ]
2304 |
2305 | [[package]]
2306 | name = "hermit-abi"
2307 | version = "0.4.0"
2308 | source = "registry+https://github.com/rust-lang/crates.io-index"
2309 | checksum = "fbf6a919d6cf397374f7dfeeea91d974c7c0a7221d0d0f4f20d859d329e53fcc"
2310 |
2311 | [[package]]
2312 | name = "hexasphere"
2313 | version = "15.0.0"
2314 | source = "registry+https://github.com/rust-lang/crates.io-index"
2315 | checksum = "741ab88b8cc670443da777c3daab02cebf5a3caccfc04e3c052f55c94d1643fe"
2316 | dependencies = [
2317 | "constgebra",
2318 | "glam",
2319 | ]
2320 |
2321 | [[package]]
2322 | name = "hexf-parse"
2323 | version = "0.2.1"
2324 | source = "registry+https://github.com/rust-lang/crates.io-index"
2325 | checksum = "dfa686283ad6dd069f105e5ab091b04c62850d3e4cf5d67debad1933f55023df"
2326 |
2327 | [[package]]
2328 | name = "image"
2329 | version = "0.25.5"
2330 | source = "registry+https://github.com/rust-lang/crates.io-index"
2331 | checksum = "cd6f44aed642f18953a158afeb30206f4d50da59fbc66ecb53c66488de73563b"
2332 | dependencies = [
2333 | "bytemuck",
2334 | "byteorder-lite",
2335 | "num-traits",
2336 | "png",
2337 | ]
2338 |
2339 | [[package]]
2340 | name = "immutable-chunkmap"
2341 | version = "2.0.6"
2342 | source = "registry+https://github.com/rust-lang/crates.io-index"
2343 | checksum = "12f97096f508d54f8f8ab8957862eee2ccd628847b6217af1a335e1c44dee578"
2344 | dependencies = [
2345 | "arrayvec",
2346 | ]
2347 |
2348 | [[package]]
2349 | name = "indexmap"
2350 | version = "2.6.0"
2351 | source = "registry+https://github.com/rust-lang/crates.io-index"
2352 | checksum = "707907fe3c25f5424cce2cb7e1cbcafee6bdbe735ca90ef77c29e84591e5b9da"
2353 | dependencies = [
2354 | "equivalent",
2355 | "hashbrown 0.15.2",
2356 | ]
2357 |
2358 | [[package]]
2359 | name = "inflections"
2360 | version = "1.1.1"
2361 | source = "registry+https://github.com/rust-lang/crates.io-index"
2362 | checksum = "a257582fdcde896fd96463bf2d40eefea0580021c0712a0e2b028b60b47a837a"
2363 |
2364 | [[package]]
2365 | name = "inotify"
2366 | version = "0.10.2"
2367 | source = "registry+https://github.com/rust-lang/crates.io-index"
2368 | checksum = "fdd168d97690d0b8c412d6b6c10360277f4d7ee495c5d0d5d5fe0854923255cc"
2369 | dependencies = [
2370 | "bitflags 1.3.2",
2371 | "inotify-sys",
2372 | "libc",
2373 | ]
2374 |
2375 | [[package]]
2376 | name = "inotify"
2377 | version = "0.11.0"
2378 | source = "registry+https://github.com/rust-lang/crates.io-index"
2379 | checksum = "f37dccff2791ab604f9babef0ba14fbe0be30bd368dc541e2b08d07c8aa908f3"
2380 | dependencies = [
2381 | "bitflags 2.6.0",
2382 | "inotify-sys",
2383 | "libc",
2384 | ]
2385 |
2386 | [[package]]
2387 | name = "inotify-sys"
2388 | version = "0.1.5"
2389 | source = "registry+https://github.com/rust-lang/crates.io-index"
2390 | checksum = "e05c02b5e89bff3b946cedeca278abc628fe811e604f027c45a8aa3cf793d0eb"
2391 | dependencies = [
2392 | "libc",
2393 | ]
2394 |
2395 | [[package]]
2396 | name = "instant"
2397 | version = "0.1.13"
2398 | source = "registry+https://github.com/rust-lang/crates.io-index"
2399 | checksum = "e0242819d153cba4b4b05a5a8f2a7e9bbf97b6055b2a002b395c96b5ff3c0222"
2400 | dependencies = [
2401 | "cfg-if",
2402 | ]
2403 |
2404 | [[package]]
2405 | name = "invaders"
2406 | version = "0.3.0"
2407 | dependencies = [
2408 | "bevy",
2409 | "rand",
2410 | ]
2411 |
2412 | [[package]]
2413 | name = "io-kit-sys"
2414 | version = "0.4.1"
2415 | source = "registry+https://github.com/rust-lang/crates.io-index"
2416 | checksum = "617ee6cf8e3f66f3b4ea67a4058564628cde41901316e19f559e14c7c72c5e7b"
2417 | dependencies = [
2418 | "core-foundation-sys",
2419 | "mach2",
2420 | ]
2421 |
2422 | [[package]]
2423 | name = "itertools"
2424 | version = "0.13.0"
2425 | source = "registry+https://github.com/rust-lang/crates.io-index"
2426 | checksum = "413ee7dfc52ee1a4949ceeb7dbc8a33f2d6c088194d9f922fb8318faf1f01186"
2427 | dependencies = [
2428 | "either",
2429 | ]
2430 |
2431 | [[package]]
2432 | name = "itoa"
2433 | version = "1.0.14"
2434 | source = "registry+https://github.com/rust-lang/crates.io-index"
2435 | checksum = "d75a2a4b1b190afb6f5425f10f6a8f959d2ea0b9c2b1d79553551850539e4674"
2436 |
2437 | [[package]]
2438 | name = "jni"
2439 | version = "0.21.1"
2440 | source = "registry+https://github.com/rust-lang/crates.io-index"
2441 | checksum = "1a87aa2bb7d2af34197c04845522473242e1aa17c12f4935d5856491a7fb8c97"
2442 | dependencies = [
2443 | "cesu8",
2444 | "cfg-if",
2445 | "combine",
2446 | "jni-sys",
2447 | "log",
2448 | "thiserror",
2449 | "walkdir",
2450 | "windows-sys 0.45.0",
2451 | ]
2452 |
2453 | [[package]]
2454 | name = "jni-sys"
2455 | version = "0.3.0"
2456 | source = "registry+https://github.com/rust-lang/crates.io-index"
2457 | checksum = "8eaf4bc02d17cbdd7ff4c7438cafcdf7fb9a4613313ad11b4f8fefe7d3fa0130"
2458 |
2459 | [[package]]
2460 | name = "jobserver"
2461 | version = "0.1.32"
2462 | source = "registry+https://github.com/rust-lang/crates.io-index"
2463 | checksum = "48d1dbcbbeb6a7fec7e059840aa538bd62aaccf972c7346c4d9d2059312853d0"
2464 | dependencies = [
2465 | "libc",
2466 | ]
2467 |
2468 | [[package]]
2469 | name = "js-sys"
2470 | version = "0.3.73"
2471 | source = "registry+https://github.com/rust-lang/crates.io-index"
2472 | checksum = "fb15147158e79fd8b8afd0252522769c4f48725460b37338544d8379d94fc8f9"
2473 | dependencies = [
2474 | "wasm-bindgen",
2475 | ]
2476 |
2477 | [[package]]
2478 | name = "khronos-egl"
2479 | version = "6.0.0"
2480 | source = "registry+https://github.com/rust-lang/crates.io-index"
2481 | checksum = "6aae1df220ece3c0ada96b8153459b67eebe9ae9212258bb0134ae60416fdf76"
2482 | dependencies = [
2483 | "libc",
2484 | "libloading",
2485 | "pkg-config",
2486 | ]
2487 |
2488 | [[package]]
2489 | name = "khronos_api"
2490 | version = "3.1.0"
2491 | source = "registry+https://github.com/rust-lang/crates.io-index"
2492 | checksum = "e2db585e1d738fc771bf08a151420d3ed193d9d895a36df7f6f8a9456b911ddc"
2493 |
2494 | [[package]]
2495 | name = "kqueue"
2496 | version = "1.0.8"
2497 | source = "registry+https://github.com/rust-lang/crates.io-index"
2498 | checksum = "7447f1ca1b7b563588a205fe93dea8df60fd981423a768bc1c0ded35ed147d0c"
2499 | dependencies = [
2500 | "kqueue-sys",
2501 | "libc",
2502 | ]
2503 |
2504 | [[package]]
2505 | name = "kqueue-sys"
2506 | version = "1.0.4"
2507 | source = "registry+https://github.com/rust-lang/crates.io-index"
2508 | checksum = "ed9625ffda8729b85e45cf04090035ac368927b8cebc34898e7c120f52e4838b"
2509 | dependencies = [
2510 | "bitflags 1.3.2",
2511 | "libc",
2512 | ]
2513 |
2514 | [[package]]
2515 | name = "ktx2"
2516 | version = "0.3.0"
2517 | source = "registry+https://github.com/rust-lang/crates.io-index"
2518 | checksum = "87d65e08a9ec02e409d27a0139eaa6b9756b4d81fe7cde71f6941a83730ce838"
2519 | dependencies = [
2520 | "bitflags 1.3.2",
2521 | ]
2522 |
2523 | [[package]]
2524 | name = "lazy_static"
2525 | version = "1.5.0"
2526 | source = "registry+https://github.com/rust-lang/crates.io-index"
2527 | checksum = "bbd2bcb4c963f2ddae06a2efc7e9f3591312473c50c6685e1f298068316e66fe"
2528 |
2529 | [[package]]
2530 | name = "lewton"
2531 | version = "0.10.2"
2532 | source = "registry+https://github.com/rust-lang/crates.io-index"
2533 | checksum = "777b48df9aaab155475a83a7df3070395ea1ac6902f5cd062b8f2b028075c030"
2534 | dependencies = [
2535 | "byteorder",
2536 | "ogg",
2537 | "tinyvec",
2538 | ]
2539 |
2540 | [[package]]
2541 | name = "libc"
2542 | version = "0.2.167"
2543 | source = "registry+https://github.com/rust-lang/crates.io-index"
2544 | checksum = "09d6582e104315a817dff97f75133544b2e094ee22447d2acf4a74e189ba06fc"
2545 |
2546 | [[package]]
2547 | name = "libloading"
2548 | version = "0.8.6"
2549 | source = "registry+https://github.com/rust-lang/crates.io-index"
2550 | checksum = "fc2f4eb4bc735547cfed7c0a4922cbd04a4655978c09b54f1f7b228750664c34"
2551 | dependencies = [
2552 | "cfg-if",
2553 | "windows-targets 0.52.6",
2554 | ]
2555 |
2556 | [[package]]
2557 | name = "libm"
2558 | version = "0.2.11"
2559 | source = "registry+https://github.com/rust-lang/crates.io-index"
2560 | checksum = "8355be11b20d696c8f18f6cc018c4e372165b1fa8126cef092399c9951984ffa"
2561 |
2562 | [[package]]
2563 | name = "libredox"
2564 | version = "0.1.3"
2565 | source = "registry+https://github.com/rust-lang/crates.io-index"
2566 | checksum = "c0ff37bd590ca25063e35af745c343cb7a0271906fb7b37e4813e8f79f00268d"
2567 | dependencies = [
2568 | "bitflags 2.6.0",
2569 | "libc",
2570 | "redox_syscall 0.5.7",
2571 | ]
2572 |
2573 | [[package]]
2574 | name = "libudev-sys"
2575 | version = "0.1.4"
2576 | source = "registry+https://github.com/rust-lang/crates.io-index"
2577 | checksum = "3c8469b4a23b962c1396b9b451dda50ef5b283e8dd309d69033475fa9b334324"
2578 | dependencies = [
2579 | "libc",
2580 | "pkg-config",
2581 | ]
2582 |
2583 | [[package]]
2584 | name = "linux-raw-sys"
2585 | version = "0.4.14"
2586 | source = "registry+https://github.com/rust-lang/crates.io-index"
2587 | checksum = "78b3ae25bc7c8c38cec158d1f2757ee79e9b3740fbc7ccf0e59e4b08d793fa89"
2588 |
2589 | [[package]]
2590 | name = "litrs"
2591 | version = "0.4.1"
2592 | source = "registry+https://github.com/rust-lang/crates.io-index"
2593 | checksum = "b4ce301924b7887e9d637144fdade93f9dfff9b60981d4ac161db09720d39aa5"
2594 |
2595 | [[package]]
2596 | name = "lock_api"
2597 | version = "0.4.12"
2598 | source = "registry+https://github.com/rust-lang/crates.io-index"
2599 | checksum = "07af8b9cdd281b7915f413fa73f29ebd5d55d0d3f0155584dade1ff18cea1b17"
2600 | dependencies = [
2601 | "autocfg",
2602 | "scopeguard",
2603 | ]
2604 |
2605 | [[package]]
2606 | name = "log"
2607 | version = "0.4.22"
2608 | source = "registry+https://github.com/rust-lang/crates.io-index"
2609 | checksum = "a7a70ba024b9dc04c27ea2f0c0548feb474ec5c54bba33a7f72f873a39d07b24"
2610 |
2611 | [[package]]
2612 | name = "mach2"
2613 | version = "0.4.2"
2614 | source = "registry+https://github.com/rust-lang/crates.io-index"
2615 | checksum = "19b955cdeb2a02b9117f121ce63aa52d08ade45de53e48fe6a38b39c10f6f709"
2616 | dependencies = [
2617 | "libc",
2618 | ]
2619 |
2620 | [[package]]
2621 | name = "malloc_buf"
2622 | version = "0.0.6"
2623 | source = "registry+https://github.com/rust-lang/crates.io-index"
2624 | checksum = "62bb907fe88d54d8d9ce32a3cceab4218ed2f6b7d35617cafe9adf84e43919cb"
2625 | dependencies = [
2626 | "libc",
2627 | ]
2628 |
2629 | [[package]]
2630 | name = "matchers"
2631 | version = "0.1.0"
2632 | source = "registry+https://github.com/rust-lang/crates.io-index"
2633 | checksum = "8263075bb86c5a1b1427b5ae862e8889656f126e9f77c484496e8b47cf5c5558"
2634 | dependencies = [
2635 | "regex-automata 0.1.10",
2636 | ]
2637 |
2638 | [[package]]
2639 | name = "memchr"
2640 | version = "2.7.4"
2641 | source = "registry+https://github.com/rust-lang/crates.io-index"
2642 | checksum = "78ca9ab1a0babb1e7d5695e3530886289c18cf2f87ec19a575a0abdce112e3a3"
2643 |
2644 | [[package]]
2645 | name = "memmap2"
2646 | version = "0.9.5"
2647 | source = "registry+https://github.com/rust-lang/crates.io-index"
2648 | checksum = "fd3f7eed9d3848f8b98834af67102b720745c4ec028fcd0aa0239277e7de374f"
2649 | dependencies = [
2650 | "libc",
2651 | ]
2652 |
2653 | [[package]]
2654 | name = "metal"
2655 | version = "0.29.0"
2656 | source = "registry+https://github.com/rust-lang/crates.io-index"
2657 | checksum = "7ecfd3296f8c56b7c1f6fbac3c71cefa9d78ce009850c45000015f206dc7fa21"
2658 | dependencies = [
2659 | "bitflags 2.6.0",
2660 | "block",
2661 | "core-graphics-types",
2662 | "foreign-types",
2663 | "log",
2664 | "objc",
2665 | "paste",
2666 | ]
2667 |
2668 | [[package]]
2669 | name = "minimal-lexical"
2670 | version = "0.2.1"
2671 | source = "registry+https://github.com/rust-lang/crates.io-index"
2672 | checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a"
2673 |
2674 | [[package]]
2675 | name = "miniz_oxide"
2676 | version = "0.8.0"
2677 | source = "registry+https://github.com/rust-lang/crates.io-index"
2678 | checksum = "e2d80299ef12ff69b16a84bb182e3b9df68b5a91574d3d4fa6e41b65deec4df1"
2679 | dependencies = [
2680 | "adler2",
2681 | "simd-adler32",
2682 | ]
2683 |
2684 | [[package]]
2685 | name = "mio"
2686 | version = "1.0.3"
2687 | source = "registry+https://github.com/rust-lang/crates.io-index"
2688 | checksum = "2886843bf800fba2e3377cff24abf6379b4c4d5c6681eaf9ea5b0d15090450bd"
2689 | dependencies = [
2690 | "libc",
2691 | "log",
2692 | "wasi",
2693 | "windows-sys 0.52.0",
2694 | ]
2695 |
2696 | [[package]]
2697 | name = "naga"
2698 | version = "23.0.0"
2699 | source = "registry+https://github.com/rust-lang/crates.io-index"
2700 | checksum = "3d5941e45a15b53aad4375eedf02033adb7a28931eedc31117faffa52e6a857e"
2701 | dependencies = [
2702 | "arrayvec",
2703 | "bit-set 0.8.0",
2704 | "bitflags 2.6.0",
2705 | "cfg_aliases 0.1.1",
2706 | "codespan-reporting",
2707 | "hexf-parse",
2708 | "indexmap",
2709 | "log",
2710 | "pp-rs",
2711 | "rustc-hash",
2712 | "spirv",
2713 | "termcolor",
2714 | "thiserror",
2715 | "unicode-xid",
2716 | ]
2717 |
2718 | [[package]]
2719 | name = "naga_oil"
2720 | version = "0.16.0"
2721 | source = "registry+https://github.com/rust-lang/crates.io-index"
2722 | checksum = "31ea1f080bb359927cd5404d0af1e5e6758f4f2d82ecfbebb0a0c434764e40f1"
2723 | dependencies = [
2724 | "bit-set 0.5.3",
2725 | "codespan-reporting",
2726 | "data-encoding",
2727 | "indexmap",
2728 | "naga",
2729 | "once_cell",
2730 | "regex",
2731 | "regex-syntax 0.8.5",
2732 | "rustc-hash",
2733 | "thiserror",
2734 | "tracing",
2735 | "unicode-ident",
2736 | ]
2737 |
2738 | [[package]]
2739 | name = "ndk"
2740 | version = "0.8.0"
2741 | source = "registry+https://github.com/rust-lang/crates.io-index"
2742 | checksum = "2076a31b7010b17a38c01907c45b945e8f11495ee4dd588309718901b1f7a5b7"
2743 | dependencies = [
2744 | "bitflags 2.6.0",
2745 | "jni-sys",
2746 | "log",
2747 | "ndk-sys 0.5.0+25.2.9519653",
2748 | "num_enum",
2749 | "thiserror",
2750 | ]
2751 |
2752 | [[package]]
2753 | name = "ndk"
2754 | version = "0.9.0"
2755 | source = "registry+https://github.com/rust-lang/crates.io-index"
2756 | checksum = "c3f42e7bbe13d351b6bead8286a43aac9534b82bd3cc43e47037f012ebfd62d4"
2757 | dependencies = [
2758 | "bitflags 2.6.0",
2759 | "jni-sys",
2760 | "log",
2761 | "ndk-sys 0.6.0+11769913",
2762 | "num_enum",
2763 | "raw-window-handle",
2764 | "thiserror",
2765 | ]
2766 |
2767 | [[package]]
2768 | name = "ndk-context"
2769 | version = "0.1.1"
2770 | source = "registry+https://github.com/rust-lang/crates.io-index"
2771 | checksum = "27b02d87554356db9e9a873add8782d4ea6e3e58ea071a9adb9a2e8ddb884a8b"
2772 |
2773 | [[package]]
2774 | name = "ndk-sys"
2775 | version = "0.5.0+25.2.9519653"
2776 | source = "registry+https://github.com/rust-lang/crates.io-index"
2777 | checksum = "8c196769dd60fd4f363e11d948139556a344e79d451aeb2fa2fd040738ef7691"
2778 | dependencies = [
2779 | "jni-sys",
2780 | ]
2781 |
2782 | [[package]]
2783 | name = "ndk-sys"
2784 | version = "0.6.0+11769913"
2785 | source = "registry+https://github.com/rust-lang/crates.io-index"
2786 | checksum = "ee6cda3051665f1fb8d9e08fc35c96d5a244fb1be711a03b71118828afc9a873"
2787 | dependencies = [
2788 | "jni-sys",
2789 | ]
2790 |
2791 | [[package]]
2792 | name = "nix"
2793 | version = "0.29.0"
2794 | source = "registry+https://github.com/rust-lang/crates.io-index"
2795 | checksum = "71e2746dc3a24dd78b3cfcb7be93368c6de9963d30f43a6a73998a9cf4b17b46"
2796 | dependencies = [
2797 | "bitflags 2.6.0",
2798 | "cfg-if",
2799 | "cfg_aliases 0.2.1",
2800 | "libc",
2801 | ]
2802 |
2803 | [[package]]
2804 | name = "nom"
2805 | version = "7.1.3"
2806 | source = "registry+https://github.com/rust-lang/crates.io-index"
2807 | checksum = "d273983c5a657a70a3e8f2a01329822f3b8c8172b73826411a55751e404a0a4a"
2808 | dependencies = [
2809 | "memchr",
2810 | "minimal-lexical",
2811 | ]
2812 |
2813 | [[package]]
2814 | name = "nonmax"
2815 | version = "0.5.5"
2816 | source = "registry+https://github.com/rust-lang/crates.io-index"
2817 | checksum = "610a5acd306ec67f907abe5567859a3c693fb9886eb1f012ab8f2a47bef3db51"
2818 |
2819 | [[package]]
2820 | name = "notify"
2821 | version = "7.0.0"
2822 | source = "registry+https://github.com/rust-lang/crates.io-index"
2823 | checksum = "c533b4c39709f9ba5005d8002048266593c1cfaf3c5f0739d5b8ab0c6c504009"
2824 | dependencies = [
2825 | "bitflags 2.6.0",
2826 | "filetime",
2827 | "fsevent-sys",
2828 | "inotify 0.10.2",
2829 | "kqueue",
2830 | "libc",
2831 | "log",
2832 | "mio",
2833 | "notify-types",
2834 | "walkdir",
2835 | "windows-sys 0.52.0",
2836 | ]
2837 |
2838 | [[package]]
2839 | name = "notify-debouncer-full"
2840 | version = "0.4.0"
2841 | source = "registry+https://github.com/rust-lang/crates.io-index"
2842 | checksum = "9dcf855483228259b2353f89e99df35fc639b2b2510d1166e4858e3f67ec1afb"
2843 | dependencies = [
2844 | "file-id",
2845 | "log",
2846 | "notify",
2847 | "notify-types",
2848 | "walkdir",
2849 | ]
2850 |
2851 | [[package]]
2852 | name = "notify-types"
2853 | version = "1.0.0"
2854 | source = "registry+https://github.com/rust-lang/crates.io-index"
2855 | checksum = "7393c226621f817964ffb3dc5704f9509e107a8b024b489cc2c1b217378785df"
2856 | dependencies = [
2857 | "instant",
2858 | ]
2859 |
2860 | [[package]]
2861 | name = "ntapi"
2862 | version = "0.4.1"
2863 | source = "registry+https://github.com/rust-lang/crates.io-index"
2864 | checksum = "e8a3895c6391c39d7fe7ebc444a87eb2991b2a0bc718fdabd071eec617fc68e4"
2865 | dependencies = [
2866 | "winapi",
2867 | ]
2868 |
2869 | [[package]]
2870 | name = "nu-ansi-term"
2871 | version = "0.46.0"
2872 | source = "registry+https://github.com/rust-lang/crates.io-index"
2873 | checksum = "77a8165726e8236064dbb45459242600304b42a5ea24ee2948e18e023bf7ba84"
2874 | dependencies = [
2875 | "overload",
2876 | "winapi",
2877 | ]
2878 |
2879 | [[package]]
2880 | name = "num-derive"
2881 | version = "0.4.2"
2882 | source = "registry+https://github.com/rust-lang/crates.io-index"
2883 | checksum = "ed3955f1a9c7c0c15e092f9c887db08b1fc683305fdf6eb6684f22555355e202"
2884 | dependencies = [
2885 | "proc-macro2",
2886 | "quote",
2887 | "syn",
2888 | ]
2889 |
2890 | [[package]]
2891 | name = "num-traits"
2892 | version = "0.2.19"
2893 | source = "registry+https://github.com/rust-lang/crates.io-index"
2894 | checksum = "071dfc062690e90b734c0b2273ce72ad0ffa95f0c74596bc250dcfd960262841"
2895 | dependencies = [
2896 | "autocfg",
2897 | "libm",
2898 | ]
2899 |
2900 | [[package]]
2901 | name = "num_enum"
2902 | version = "0.7.3"
2903 | source = "registry+https://github.com/rust-lang/crates.io-index"
2904 | checksum = "4e613fc340b2220f734a8595782c551f1250e969d87d3be1ae0579e8d4065179"
2905 | dependencies = [
2906 | "num_enum_derive",
2907 | ]
2908 |
2909 | [[package]]
2910 | name = "num_enum_derive"
2911 | version = "0.7.3"
2912 | source = "registry+https://github.com/rust-lang/crates.io-index"
2913 | checksum = "af1844ef2428cc3e1cb900be36181049ef3d3193c63e43026cfe202983b27a56"
2914 | dependencies = [
2915 | "proc-macro-crate",
2916 | "proc-macro2",
2917 | "quote",
2918 | "syn",
2919 | ]
2920 |
2921 | [[package]]
2922 | name = "objc"
2923 | version = "0.2.7"
2924 | source = "registry+https://github.com/rust-lang/crates.io-index"
2925 | checksum = "915b1b472bc21c53464d6c8461c9d3af805ba1ef837e1cac254428f4a77177b1"
2926 | dependencies = [
2927 | "malloc_buf",
2928 | ]
2929 |
2930 | [[package]]
2931 | name = "objc-sys"
2932 | version = "0.3.5"
2933 | source = "registry+https://github.com/rust-lang/crates.io-index"
2934 | checksum = "cdb91bdd390c7ce1a8607f35f3ca7151b65afc0ff5ff3b34fa350f7d7c7e4310"
2935 |
2936 | [[package]]
2937 | name = "objc2"
2938 | version = "0.5.2"
2939 | source = "registry+https://github.com/rust-lang/crates.io-index"
2940 | checksum = "46a785d4eeff09c14c487497c162e92766fbb3e4059a71840cecc03d9a50b804"
2941 | dependencies = [
2942 | "objc-sys",
2943 | "objc2-encode",
2944 | ]
2945 |
2946 | [[package]]
2947 | name = "objc2-app-kit"
2948 | version = "0.2.2"
2949 | source = "registry+https://github.com/rust-lang/crates.io-index"
2950 | checksum = "e4e89ad9e3d7d297152b17d39ed92cd50ca8063a89a9fa569046d41568891eff"
2951 | dependencies = [
2952 | "bitflags 2.6.0",
2953 | "block2",
2954 | "libc",
2955 | "objc2",
2956 | "objc2-core-data",
2957 | "objc2-core-image",
2958 | "objc2-foundation",
2959 | "objc2-quartz-core",
2960 | ]
2961 |
2962 | [[package]]
2963 | name = "objc2-cloud-kit"
2964 | version = "0.2.2"
2965 | source = "registry+https://github.com/rust-lang/crates.io-index"
2966 | checksum = "74dd3b56391c7a0596a295029734d3c1c5e7e510a4cb30245f8221ccea96b009"
2967 | dependencies = [
2968 | "bitflags 2.6.0",
2969 | "block2",
2970 | "objc2",
2971 | "objc2-core-location",
2972 | "objc2-foundation",
2973 | ]
2974 |
2975 | [[package]]
2976 | name = "objc2-contacts"
2977 | version = "0.2.2"
2978 | source = "registry+https://github.com/rust-lang/crates.io-index"
2979 | checksum = "a5ff520e9c33812fd374d8deecef01d4a840e7b41862d849513de77e44aa4889"
2980 | dependencies = [
2981 | "block2",
2982 | "objc2",
2983 | "objc2-foundation",
2984 | ]
2985 |
2986 | [[package]]
2987 | name = "objc2-core-data"
2988 | version = "0.2.2"
2989 | source = "registry+https://github.com/rust-lang/crates.io-index"
2990 | checksum = "617fbf49e071c178c0b24c080767db52958f716d9eabdf0890523aeae54773ef"
2991 | dependencies = [
2992 | "bitflags 2.6.0",
2993 | "block2",
2994 | "objc2",
2995 | "objc2-foundation",
2996 | ]
2997 |
2998 | [[package]]
2999 | name = "objc2-core-image"
3000 | version = "0.2.2"
3001 | source = "registry+https://github.com/rust-lang/crates.io-index"
3002 | checksum = "55260963a527c99f1819c4f8e3b47fe04f9650694ef348ffd2227e8196d34c80"
3003 | dependencies = [
3004 | "block2",
3005 | "objc2",
3006 | "objc2-foundation",
3007 | "objc2-metal",
3008 | ]
3009 |
3010 | [[package]]
3011 | name = "objc2-core-location"
3012 | version = "0.2.2"
3013 | source = "registry+https://github.com/rust-lang/crates.io-index"
3014 | checksum = "000cfee34e683244f284252ee206a27953279d370e309649dc3ee317b37e5781"
3015 | dependencies = [
3016 | "block2",
3017 | "objc2",
3018 | "objc2-contacts",
3019 | "objc2-foundation",
3020 | ]
3021 |
3022 | [[package]]
3023 | name = "objc2-encode"
3024 | version = "4.0.3"
3025 | source = "registry+https://github.com/rust-lang/crates.io-index"
3026 | checksum = "7891e71393cd1f227313c9379a26a584ff3d7e6e7159e988851f0934c993f0f8"
3027 |
3028 | [[package]]
3029 | name = "objc2-foundation"
3030 | version = "0.2.2"
3031 | source = "registry+https://github.com/rust-lang/crates.io-index"
3032 | checksum = "0ee638a5da3799329310ad4cfa62fbf045d5f56e3ef5ba4149e7452dcf89d5a8"
3033 | dependencies = [
3034 | "bitflags 2.6.0",
3035 | "block2",
3036 | "dispatch",
3037 | "libc",
3038 | "objc2",
3039 | ]
3040 |
3041 | [[package]]
3042 | name = "objc2-link-presentation"
3043 | version = "0.2.2"
3044 | source = "registry+https://github.com/rust-lang/crates.io-index"
3045 | checksum = "a1a1ae721c5e35be65f01a03b6d2ac13a54cb4fa70d8a5da293d7b0020261398"
3046 | dependencies = [
3047 | "block2",
3048 | "objc2",
3049 | "objc2-app-kit",
3050 | "objc2-foundation",
3051 | ]
3052 |
3053 | [[package]]
3054 | name = "objc2-metal"
3055 | version = "0.2.2"
3056 | source = "registry+https://github.com/rust-lang/crates.io-index"
3057 | checksum = "dd0cba1276f6023976a406a14ffa85e1fdd19df6b0f737b063b95f6c8c7aadd6"
3058 | dependencies = [
3059 | "bitflags 2.6.0",
3060 | "block2",
3061 | "objc2",
3062 | "objc2-foundation",
3063 | ]
3064 |
3065 | [[package]]
3066 | name = "objc2-quartz-core"
3067 | version = "0.2.2"
3068 | source = "registry+https://github.com/rust-lang/crates.io-index"
3069 | checksum = "e42bee7bff906b14b167da2bac5efe6b6a07e6f7c0a21a7308d40c960242dc7a"
3070 | dependencies = [
3071 | "bitflags 2.6.0",
3072 | "block2",
3073 | "objc2",
3074 | "objc2-foundation",
3075 | "objc2-metal",
3076 | ]
3077 |
3078 | [[package]]
3079 | name = "objc2-symbols"
3080 | version = "0.2.2"
3081 | source = "registry+https://github.com/rust-lang/crates.io-index"
3082 | checksum = "0a684efe3dec1b305badae1a28f6555f6ddd3bb2c2267896782858d5a78404dc"
3083 | dependencies = [
3084 | "objc2",
3085 | "objc2-foundation",
3086 | ]
3087 |
3088 | [[package]]
3089 | name = "objc2-ui-kit"
3090 | version = "0.2.2"
3091 | source = "registry+https://github.com/rust-lang/crates.io-index"
3092 | checksum = "b8bb46798b20cd6b91cbd113524c490f1686f4c4e8f49502431415f3512e2b6f"
3093 | dependencies = [
3094 | "bitflags 2.6.0",
3095 | "block2",
3096 | "objc2",
3097 | "objc2-cloud-kit",
3098 | "objc2-core-data",
3099 | "objc2-core-image",
3100 | "objc2-core-location",
3101 | "objc2-foundation",
3102 | "objc2-link-presentation",
3103 | "objc2-quartz-core",
3104 | "objc2-symbols",
3105 | "objc2-uniform-type-identifiers",
3106 | "objc2-user-notifications",
3107 | ]
3108 |
3109 | [[package]]
3110 | name = "objc2-uniform-type-identifiers"
3111 | version = "0.2.2"
3112 | source = "registry+https://github.com/rust-lang/crates.io-index"
3113 | checksum = "44fa5f9748dbfe1ca6c0b79ad20725a11eca7c2218bceb4b005cb1be26273bfe"
3114 | dependencies = [
3115 | "block2",
3116 | "objc2",
3117 | "objc2-foundation",
3118 | ]
3119 |
3120 | [[package]]
3121 | name = "objc2-user-notifications"
3122 | version = "0.2.2"
3123 | source = "registry+https://github.com/rust-lang/crates.io-index"
3124 | checksum = "76cfcbf642358e8689af64cee815d139339f3ed8ad05103ed5eaf73db8d84cb3"
3125 | dependencies = [
3126 | "bitflags 2.6.0",
3127 | "block2",
3128 | "objc2",
3129 | "objc2-core-location",
3130 | "objc2-foundation",
3131 | ]
3132 |
3133 | [[package]]
3134 | name = "oboe"
3135 | version = "0.6.1"
3136 | source = "registry+https://github.com/rust-lang/crates.io-index"
3137 | checksum = "e8b61bebd49e5d43f5f8cc7ee2891c16e0f41ec7954d36bcb6c14c5e0de867fb"
3138 | dependencies = [
3139 | "jni",
3140 | "ndk 0.8.0",
3141 | "ndk-context",
3142 | "num-derive",
3143 | "num-traits",
3144 | "oboe-sys",
3145 | ]
3146 |
3147 | [[package]]
3148 | name = "oboe-sys"
3149 | version = "0.6.1"
3150 | source = "registry+https://github.com/rust-lang/crates.io-index"
3151 | checksum = "6c8bb09a4a2b1d668170cfe0a7d5bc103f8999fb316c98099b6a9939c9f2e79d"
3152 | dependencies = [
3153 | "cc",
3154 | ]
3155 |
3156 | [[package]]
3157 | name = "offset-allocator"
3158 | version = "0.2.0"
3159 | source = "registry+https://github.com/rust-lang/crates.io-index"
3160 | checksum = "e234d535da3521eb95106f40f0b73483d80bfb3aacf27c40d7e2b72f1a3e00a2"
3161 | dependencies = [
3162 | "log",
3163 | "nonmax",
3164 | ]
3165 |
3166 | [[package]]
3167 | name = "ogg"
3168 | version = "0.8.0"
3169 | source = "registry+https://github.com/rust-lang/crates.io-index"
3170 | checksum = "6951b4e8bf21c8193da321bcce9c9dd2e13c858fe078bf9054a288b419ae5d6e"
3171 | dependencies = [
3172 | "byteorder",
3173 | ]
3174 |
3175 | [[package]]
3176 | name = "once_cell"
3177 | version = "1.20.2"
3178 | source = "registry+https://github.com/rust-lang/crates.io-index"
3179 | checksum = "1261fe7e33c73b354eab43b1273a57c8f967d0391e80353e51f764ac02cf6775"
3180 |
3181 | [[package]]
3182 | name = "orbclient"
3183 | version = "0.3.48"
3184 | source = "registry+https://github.com/rust-lang/crates.io-index"
3185 | checksum = "ba0b26cec2e24f08ed8bb31519a9333140a6599b867dac464bb150bdb796fd43"
3186 | dependencies = [
3187 | "libredox",
3188 | ]
3189 |
3190 | [[package]]
3191 | name = "overload"
3192 | version = "0.1.1"
3193 | source = "registry+https://github.com/rust-lang/crates.io-index"
3194 | checksum = "b15813163c1d831bf4a13c3610c05c0d03b39feb07f7e09fa234dac9b15aaf39"
3195 |
3196 | [[package]]
3197 | name = "parking"
3198 | version = "2.2.1"
3199 | source = "registry+https://github.com/rust-lang/crates.io-index"
3200 | checksum = "f38d5652c16fde515bb1ecef450ab0f6a219d619a7274976324d5e377f7dceba"
3201 |
3202 | [[package]]
3203 | name = "parking_lot"
3204 | version = "0.12.3"
3205 | source = "registry+https://github.com/rust-lang/crates.io-index"
3206 | checksum = "f1bf18183cf54e8d6059647fc3063646a1801cf30896933ec2311622cc4b9a27"
3207 | dependencies = [
3208 | "lock_api",
3209 | "parking_lot_core",
3210 | ]
3211 |
3212 | [[package]]
3213 | name = "parking_lot_core"
3214 | version = "0.9.10"
3215 | source = "registry+https://github.com/rust-lang/crates.io-index"
3216 | checksum = "1e401f977ab385c9e4e3ab30627d6f26d00e2c73eef317493c4ec6d468726cf8"
3217 | dependencies = [
3218 | "cfg-if",
3219 | "libc",
3220 | "redox_syscall 0.5.7",
3221 | "smallvec",
3222 | "windows-targets 0.52.6",
3223 | ]
3224 |
3225 | [[package]]
3226 | name = "paste"
3227 | version = "1.0.15"
3228 | source = "registry+https://github.com/rust-lang/crates.io-index"
3229 | checksum = "57c0d7b74b563b49d38dae00a0c37d4d6de9b432382b2892f0574ddcae73fd0a"
3230 |
3231 | [[package]]
3232 | name = "percent-encoding"
3233 | version = "2.3.1"
3234 | source = "registry+https://github.com/rust-lang/crates.io-index"
3235 | checksum = "e3148f5046208a5d56bcfc03053e3ca6334e51da8dfb19b6cdc8b306fae3283e"
3236 |
3237 | [[package]]
3238 | name = "petgraph"
3239 | version = "0.6.5"
3240 | source = "registry+https://github.com/rust-lang/crates.io-index"
3241 | checksum = "b4c5cc86750666a3ed20bdaf5ca2a0344f9c67674cae0515bec2da16fbaa47db"
3242 | dependencies = [
3243 | "fixedbitset 0.4.2",
3244 | "indexmap",
3245 | "serde",
3246 | "serde_derive",
3247 | ]
3248 |
3249 | [[package]]
3250 | name = "pin-project"
3251 | version = "1.1.7"
3252 | source = "registry+https://github.com/rust-lang/crates.io-index"
3253 | checksum = "be57f64e946e500c8ee36ef6331845d40a93055567ec57e8fae13efd33759b95"
3254 | dependencies = [
3255 | "pin-project-internal",
3256 | ]
3257 |
3258 | [[package]]
3259 | name = "pin-project-internal"
3260 | version = "1.1.7"
3261 | source = "registry+https://github.com/rust-lang/crates.io-index"
3262 | checksum = "3c0f5fad0874fc7abcd4d750e76917eaebbecaa2c20bde22e1dbeeba8beb758c"
3263 | dependencies = [
3264 | "proc-macro2",
3265 | "quote",
3266 | "syn",
3267 | ]
3268 |
3269 | [[package]]
3270 | name = "pin-project-lite"
3271 | version = "0.2.15"
3272 | source = "registry+https://github.com/rust-lang/crates.io-index"
3273 | checksum = "915a1e146535de9163f3987b8944ed8cf49a18bb0056bcebcdcece385cece4ff"
3274 |
3275 | [[package]]
3276 | name = "piper"
3277 | version = "0.2.4"
3278 | source = "registry+https://github.com/rust-lang/crates.io-index"
3279 | checksum = "96c8c490f422ef9a4efd2cb5b42b76c8613d7e7dfc1caf667b8a3350a5acc066"
3280 | dependencies = [
3281 | "atomic-waker",
3282 | "fastrand",
3283 | "futures-io",
3284 | ]
3285 |
3286 | [[package]]
3287 | name = "pkg-config"
3288 | version = "0.3.31"
3289 | source = "registry+https://github.com/rust-lang/crates.io-index"
3290 | checksum = "953ec861398dccce10c670dfeaf3ec4911ca479e9c02154b3a215178c5f566f2"
3291 |
3292 | [[package]]
3293 | name = "png"
3294 | version = "0.17.14"
3295 | source = "registry+https://github.com/rust-lang/crates.io-index"
3296 | checksum = "52f9d46a34a05a6a57566bc2bfae066ef07585a6e3fa30fbbdff5936380623f0"
3297 | dependencies = [
3298 | "bitflags 1.3.2",
3299 | "crc32fast",
3300 | "fdeflate",
3301 | "flate2",
3302 | "miniz_oxide",
3303 | ]
3304 |
3305 | [[package]]
3306 | name = "polling"
3307 | version = "3.7.4"
3308 | source = "registry+https://github.com/rust-lang/crates.io-index"
3309 | checksum = "a604568c3202727d1507653cb121dbd627a58684eb09a820fd746bee38b4442f"
3310 | dependencies = [
3311 | "cfg-if",
3312 | "concurrent-queue",
3313 | "hermit-abi",
3314 | "pin-project-lite",
3315 | "rustix",
3316 | "tracing",
3317 | "windows-sys 0.59.0",
3318 | ]
3319 |
3320 | [[package]]
3321 | name = "pp-rs"
3322 | version = "0.2.1"
3323 | source = "registry+https://github.com/rust-lang/crates.io-index"
3324 | checksum = "bb458bb7f6e250e6eb79d5026badc10a3ebb8f9a15d1fff0f13d17c71f4d6dee"
3325 | dependencies = [
3326 | "unicode-xid",
3327 | ]
3328 |
3329 | [[package]]
3330 | name = "ppv-lite86"
3331 | version = "0.2.20"
3332 | source = "registry+https://github.com/rust-lang/crates.io-index"
3333 | checksum = "77957b295656769bb8ad2b6a6b09d897d94f05c41b069aede1fcdaa675eaea04"
3334 | dependencies = [
3335 | "zerocopy",
3336 | ]
3337 |
3338 | [[package]]
3339 | name = "presser"
3340 | version = "0.3.1"
3341 | source = "registry+https://github.com/rust-lang/crates.io-index"
3342 | checksum = "e8cf8e6a8aa66ce33f63993ffc4ea4271eb5b0530a9002db8455ea6050c77bfa"
3343 |
3344 | [[package]]
3345 | name = "prettyplease"
3346 | version = "0.2.25"
3347 | source = "registry+https://github.com/rust-lang/crates.io-index"
3348 | checksum = "64d1ec885c64d0457d564db4ec299b2dae3f9c02808b8ad9c3a089c591b18033"
3349 | dependencies = [
3350 | "proc-macro2",
3351 | "syn",
3352 | ]
3353 |
3354 | [[package]]
3355 | name = "proc-macro-crate"
3356 | version = "3.2.0"
3357 | source = "registry+https://github.com/rust-lang/crates.io-index"
3358 | checksum = "8ecf48c7ca261d60b74ab1a7b20da18bede46776b2e55535cb958eb595c5fa7b"
3359 | dependencies = [
3360 | "toml_edit",
3361 | ]
3362 |
3363 | [[package]]
3364 | name = "proc-macro2"
3365 | version = "1.0.92"
3366 | source = "registry+https://github.com/rust-lang/crates.io-index"
3367 | checksum = "37d3544b3f2748c54e147655edb5025752e2303145b5aefb3c3ea2c78b973bb0"
3368 | dependencies = [
3369 | "unicode-ident",
3370 | ]
3371 |
3372 | [[package]]
3373 | name = "profiling"
3374 | version = "1.0.16"
3375 | source = "registry+https://github.com/rust-lang/crates.io-index"
3376 | checksum = "afbdc74edc00b6f6a218ca6a5364d6226a259d4b8ea1af4a0ea063f27e179f4d"
3377 |
3378 | [[package]]
3379 | name = "quote"
3380 | version = "1.0.37"
3381 | source = "registry+https://github.com/rust-lang/crates.io-index"
3382 | checksum = "b5b9d34b8991d19d98081b46eacdd8eb58c6f2b201139f7c5f643cc155a633af"
3383 | dependencies = [
3384 | "proc-macro2",
3385 | ]
3386 |
3387 | [[package]]
3388 | name = "radsort"
3389 | version = "0.1.1"
3390 | source = "registry+https://github.com/rust-lang/crates.io-index"
3391 | checksum = "019b4b213425016d7d84a153c4c73afb0946fbb4840e4eece7ba8848b9d6da22"
3392 |
3393 | [[package]]
3394 | name = "rand"
3395 | version = "0.8.5"
3396 | source = "registry+https://github.com/rust-lang/crates.io-index"
3397 | checksum = "34af8d1a0e25924bc5b7c43c079c942339d8f0a8b57c39049bef581b46327404"
3398 | dependencies = [
3399 | "libc",
3400 | "rand_chacha",
3401 | "rand_core",
3402 | ]
3403 |
3404 | [[package]]
3405 | name = "rand_chacha"
3406 | version = "0.3.1"
3407 | source = "registry+https://github.com/rust-lang/crates.io-index"
3408 | checksum = "e6c10a63a0fa32252be49d21e7709d4d4baf8d231c2dbce1eaa8141b9b127d88"
3409 | dependencies = [
3410 | "ppv-lite86",
3411 | "rand_core",
3412 | ]
3413 |
3414 | [[package]]
3415 | name = "rand_core"
3416 | version = "0.6.4"
3417 | source = "registry+https://github.com/rust-lang/crates.io-index"
3418 | checksum = "ec0be4795e2f6a28069bec0b5ff3e2ac9bafc99e6a9a7dc3547996c5c816922c"
3419 | dependencies = [
3420 | "getrandom",
3421 | ]
3422 |
3423 | [[package]]
3424 | name = "rand_distr"
3425 | version = "0.4.3"
3426 | source = "registry+https://github.com/rust-lang/crates.io-index"
3427 | checksum = "32cb0b9bc82b0a0876c2dd994a7e7a2683d3e7390ca40e6886785ef0c7e3ee31"
3428 | dependencies = [
3429 | "num-traits",
3430 | "rand",
3431 | ]
3432 |
3433 | [[package]]
3434 | name = "range-alloc"
3435 | version = "0.1.3"
3436 | source = "registry+https://github.com/rust-lang/crates.io-index"
3437 | checksum = "9c8a99fddc9f0ba0a85884b8d14e3592853e787d581ca1816c91349b10e4eeab"
3438 |
3439 | [[package]]
3440 | name = "rangemap"
3441 | version = "1.5.1"
3442 | source = "registry+https://github.com/rust-lang/crates.io-index"
3443 | checksum = "f60fcc7d6849342eff22c4350c8b9a989ee8ceabc4b481253e8946b9fe83d684"
3444 |
3445 | [[package]]
3446 | name = "raw-window-handle"
3447 | version = "0.6.2"
3448 | source = "registry+https://github.com/rust-lang/crates.io-index"
3449 | checksum = "20675572f6f24e9e76ef639bc5552774ed45f1c30e2951e1e99c59888861c539"
3450 |
3451 | [[package]]
3452 | name = "rayon"
3453 | version = "1.10.0"
3454 | source = "registry+https://github.com/rust-lang/crates.io-index"
3455 | checksum = "b418a60154510ca1a002a752ca9714984e21e4241e804d32555251faf8b78ffa"
3456 | dependencies = [
3457 | "either",
3458 | "rayon-core",
3459 | ]
3460 |
3461 | [[package]]
3462 | name = "rayon-core"
3463 | version = "1.12.1"
3464 | source = "registry+https://github.com/rust-lang/crates.io-index"
3465 | checksum = "1465873a3dfdaa8ae7cb14b4383657caab0b3e8a0aa9ae8e04b044854c8dfce2"
3466 | dependencies = [
3467 | "crossbeam-deque",
3468 | "crossbeam-utils",
3469 | ]
3470 |
3471 | [[package]]
3472 | name = "read-fonts"
3473 | version = "0.22.5"
3474 | source = "registry+https://github.com/rust-lang/crates.io-index"
3475 | checksum = "4a04b892cb6f91951f144c33321843790c8574c825aafdb16d815fd7183b5229"
3476 | dependencies = [
3477 | "bytemuck",
3478 | "font-types",
3479 | ]
3480 |
3481 | [[package]]
3482 | name = "rectangle-pack"
3483 | version = "0.4.2"
3484 | source = "registry+https://github.com/rust-lang/crates.io-index"
3485 | checksum = "a0d463f2884048e7153449a55166f91028d5b0ea53c79377099ce4e8cf0cf9bb"
3486 |
3487 | [[package]]
3488 | name = "redox_syscall"
3489 | version = "0.4.1"
3490 | source = "registry+https://github.com/rust-lang/crates.io-index"
3491 | checksum = "4722d768eff46b75989dd134e5c353f0d6296e5aaa3132e776cbdb56be7731aa"
3492 | dependencies = [
3493 | "bitflags 1.3.2",
3494 | ]
3495 |
3496 | [[package]]
3497 | name = "redox_syscall"
3498 | version = "0.5.7"
3499 | source = "registry+https://github.com/rust-lang/crates.io-index"
3500 | checksum = "9b6dfecf2c74bce2466cabf93f6664d6998a69eb21e39f4207930065b27b771f"
3501 | dependencies = [
3502 | "bitflags 2.6.0",
3503 | ]
3504 |
3505 | [[package]]
3506 | name = "regex"
3507 | version = "1.11.1"
3508 | source = "registry+https://github.com/rust-lang/crates.io-index"
3509 | checksum = "b544ef1b4eac5dc2db33ea63606ae9ffcfac26c1416a2806ae0bf5f56b201191"
3510 | dependencies = [
3511 | "aho-corasick",
3512 | "memchr",
3513 | "regex-automata 0.4.9",
3514 | "regex-syntax 0.8.5",
3515 | ]
3516 |
3517 | [[package]]
3518 | name = "regex-automata"
3519 | version = "0.1.10"
3520 | source = "registry+https://github.com/rust-lang/crates.io-index"
3521 | checksum = "6c230d73fb8d8c1b9c0b3135c5142a8acee3a0558fb8db5cf1cb65f8d7862132"
3522 | dependencies = [
3523 | "regex-syntax 0.6.29",
3524 | ]
3525 |
3526 | [[package]]
3527 | name = "regex-automata"
3528 | version = "0.4.9"
3529 | source = "registry+https://github.com/rust-lang/crates.io-index"
3530 | checksum = "809e8dc61f6de73b46c85f4c96486310fe304c434cfa43669d7b40f711150908"
3531 | dependencies = [
3532 | "aho-corasick",
3533 | "memchr",
3534 | "regex-syntax 0.8.5",
3535 | ]
3536 |
3537 | [[package]]
3538 | name = "regex-syntax"
3539 | version = "0.6.29"
3540 | source = "registry+https://github.com/rust-lang/crates.io-index"
3541 | checksum = "f162c6dd7b008981e4d40210aca20b4bd0f9b60ca9271061b07f78537722f2e1"
3542 |
3543 | [[package]]
3544 | name = "regex-syntax"
3545 | version = "0.8.5"
3546 | source = "registry+https://github.com/rust-lang/crates.io-index"
3547 | checksum = "2b15c43186be67a4fd63bee50d0303afffcef381492ebe2c5d87f324e1b8815c"
3548 |
3549 | [[package]]
3550 | name = "renderdoc-sys"
3551 | version = "1.1.0"
3552 | source = "registry+https://github.com/rust-lang/crates.io-index"
3553 | checksum = "19b30a45b0cd0bcca8037f3d0dc3421eaf95327a17cad11964fb8179b4fc4832"
3554 |
3555 | [[package]]
3556 | name = "rodio"
3557 | version = "0.19.0"
3558 | source = "registry+https://github.com/rust-lang/crates.io-index"
3559 | checksum = "6006a627c1a38d37f3d3a85c6575418cfe34a5392d60a686d0071e1c8d427acb"
3560 | dependencies = [
3561 | "cpal",
3562 | "lewton",
3563 | "thiserror",
3564 | ]
3565 |
3566 | [[package]]
3567 | name = "ron"
3568 | version = "0.8.1"
3569 | source = "registry+https://github.com/rust-lang/crates.io-index"
3570 | checksum = "b91f7eff05f748767f183df4320a63d6936e9c6107d97c9e6bdd9784f4289c94"
3571 | dependencies = [
3572 | "base64 0.21.7",
3573 | "bitflags 2.6.0",
3574 | "serde",
3575 | "serde_derive",
3576 | ]
3577 |
3578 | [[package]]
3579 | name = "roxmltree"
3580 | version = "0.20.0"
3581 | source = "registry+https://github.com/rust-lang/crates.io-index"
3582 | checksum = "6c20b6793b5c2fa6553b250154b78d6d0db37e72700ae35fad9387a46f487c97"
3583 |
3584 | [[package]]
3585 | name = "rustc-hash"
3586 | version = "1.1.0"
3587 | source = "registry+https://github.com/rust-lang/crates.io-index"
3588 | checksum = "08d43f7aa6b08d49f382cde6a7982047c3426db949b1424bc4b7ec9ae12c6ce2"
3589 |
3590 | [[package]]
3591 | name = "rustix"
3592 | version = "0.38.41"
3593 | source = "registry+https://github.com/rust-lang/crates.io-index"
3594 | checksum = "d7f649912bc1495e167a6edee79151c84b1bad49748cb4f1f1167f459f6224f6"
3595 | dependencies = [
3596 | "bitflags 2.6.0",
3597 | "errno",
3598 | "libc",
3599 | "linux-raw-sys",
3600 | "windows-sys 0.52.0",
3601 | ]
3602 |
3603 | [[package]]
3604 | name = "rustybuzz"
3605 | version = "0.14.1"
3606 | source = "registry+https://github.com/rust-lang/crates.io-index"
3607 | checksum = "cfb9cf8877777222e4a3bc7eb247e398b56baba500c38c1c46842431adc8b55c"
3608 | dependencies = [
3609 | "bitflags 2.6.0",
3610 | "bytemuck",
3611 | "libm",
3612 | "smallvec",
3613 | "ttf-parser 0.21.1",
3614 | "unicode-bidi-mirroring",
3615 | "unicode-ccc",
3616 | "unicode-properties",
3617 | "unicode-script",
3618 | ]
3619 |
3620 | [[package]]
3621 | name = "ruzstd"
3622 | version = "0.7.3"
3623 | source = "registry+https://github.com/rust-lang/crates.io-index"
3624 | checksum = "fad02996bfc73da3e301efe90b1837be9ed8f4a462b6ed410aa35d00381de89f"
3625 | dependencies = [
3626 | "twox-hash",
3627 | ]
3628 |
3629 | [[package]]
3630 | name = "ryu"
3631 | version = "1.0.18"
3632 | source = "registry+https://github.com/rust-lang/crates.io-index"
3633 | checksum = "f3cb5ba0dc43242ce17de99c180e96db90b235b8a9fdc9543c96d2209116bd9f"
3634 |
3635 | [[package]]
3636 | name = "same-file"
3637 | version = "1.0.6"
3638 | source = "registry+https://github.com/rust-lang/crates.io-index"
3639 | checksum = "93fc1dc3aaa9bfed95e02e6eadabb4baf7e3078b0bd1b4d7b6b0b68378900502"
3640 | dependencies = [
3641 | "winapi-util",
3642 | ]
3643 |
3644 | [[package]]
3645 | name = "scopeguard"
3646 | version = "1.2.0"
3647 | source = "registry+https://github.com/rust-lang/crates.io-index"
3648 | checksum = "94143f37725109f92c262ed2cf5e59bce7498c01bcc1502d7b9afe439a4e9f49"
3649 |
3650 | [[package]]
3651 | name = "self_cell"
3652 | version = "1.0.4"
3653 | source = "registry+https://github.com/rust-lang/crates.io-index"
3654 | checksum = "d369a96f978623eb3dc28807c4852d6cc617fed53da5d3c400feff1ef34a714a"
3655 |
3656 | [[package]]
3657 | name = "send_wrapper"
3658 | version = "0.6.0"
3659 | source = "registry+https://github.com/rust-lang/crates.io-index"
3660 | checksum = "cd0b0ec5f1c1ca621c432a25813d8d60c88abe6d3e08a3eb9cf37d97a0fe3d73"
3661 |
3662 | [[package]]
3663 | name = "serde"
3664 | version = "1.0.215"
3665 | source = "registry+https://github.com/rust-lang/crates.io-index"
3666 | checksum = "6513c1ad0b11a9376da888e3e0baa0077f1aed55c17f50e7b2397136129fb88f"
3667 | dependencies = [
3668 | "serde_derive",
3669 | ]
3670 |
3671 | [[package]]
3672 | name = "serde_derive"
3673 | version = "1.0.215"
3674 | source = "registry+https://github.com/rust-lang/crates.io-index"
3675 | checksum = "ad1e866f866923f252f05c889987993144fb74e722403468a4ebd70c3cd756c0"
3676 | dependencies = [
3677 | "proc-macro2",
3678 | "quote",
3679 | "syn",
3680 | ]
3681 |
3682 | [[package]]
3683 | name = "serde_json"
3684 | version = "1.0.133"
3685 | source = "registry+https://github.com/rust-lang/crates.io-index"
3686 | checksum = "c7fceb2473b9166b2294ef05efcb65a3db80803f0b03ef86a5fc88a2b85ee377"
3687 | dependencies = [
3688 | "itoa",
3689 | "memchr",
3690 | "ryu",
3691 | "serde",
3692 | ]
3693 |
3694 | [[package]]
3695 | name = "sharded-slab"
3696 | version = "0.1.7"
3697 | source = "registry+https://github.com/rust-lang/crates.io-index"
3698 | checksum = "f40ca3c46823713e0d4209592e8d6e826aa57e928f09752619fc696c499637f6"
3699 | dependencies = [
3700 | "lazy_static",
3701 | ]
3702 |
3703 | [[package]]
3704 | name = "shlex"
3705 | version = "1.3.0"
3706 | source = "registry+https://github.com/rust-lang/crates.io-index"
3707 | checksum = "0fda2ff0d084019ba4d7c6f371c95d8fd75ce3524c3cb8fb653a3023f6323e64"
3708 |
3709 | [[package]]
3710 | name = "simd-adler32"
3711 | version = "0.3.7"
3712 | source = "registry+https://github.com/rust-lang/crates.io-index"
3713 | checksum = "d66dc143e6b11c1eddc06d5c423cfc97062865baf299914ab64caa38182078fe"
3714 |
3715 | [[package]]
3716 | name = "skrifa"
3717 | version = "0.22.3"
3718 | source = "registry+https://github.com/rust-lang/crates.io-index"
3719 | checksum = "8e1c44ad1f6c5bdd4eefed8326711b7dbda9ea45dfd36068c427d332aa382cbe"
3720 | dependencies = [
3721 | "bytemuck",
3722 | "read-fonts",
3723 | ]
3724 |
3725 | [[package]]
3726 | name = "slab"
3727 | version = "0.4.9"
3728 | source = "registry+https://github.com/rust-lang/crates.io-index"
3729 | checksum = "8f92a496fb766b417c996b9c5e57daf2f7ad3b0bebe1ccfca4856390e3d3bb67"
3730 | dependencies = [
3731 | "autocfg",
3732 | ]
3733 |
3734 | [[package]]
3735 | name = "slotmap"
3736 | version = "1.0.7"
3737 | source = "registry+https://github.com/rust-lang/crates.io-index"
3738 | checksum = "dbff4acf519f630b3a3ddcfaea6c06b42174d9a44bc70c620e9ed1649d58b82a"
3739 | dependencies = [
3740 | "version_check",
3741 | ]
3742 |
3743 | [[package]]
3744 | name = "smallvec"
3745 | version = "1.13.2"
3746 | source = "registry+https://github.com/rust-lang/crates.io-index"
3747 | checksum = "3c5e1a9a646d36c3599cd173a41282daf47c44583ad367b8e6837255952e5c67"
3748 |
3749 | [[package]]
3750 | name = "smol_str"
3751 | version = "0.2.2"
3752 | source = "registry+https://github.com/rust-lang/crates.io-index"
3753 | checksum = "dd538fb6910ac1099850255cf94a94df6551fbdd602454387d0adb2d1ca6dead"
3754 | dependencies = [
3755 | "serde",
3756 | ]
3757 |
3758 | [[package]]
3759 | name = "spirv"
3760 | version = "0.3.0+sdk-1.3.268.0"
3761 | source = "registry+https://github.com/rust-lang/crates.io-index"
3762 | checksum = "eda41003dc44290527a59b13432d4a0379379fa074b70174882adfbdfd917844"
3763 | dependencies = [
3764 | "bitflags 2.6.0",
3765 | ]
3766 |
3767 | [[package]]
3768 | name = "stackfuture"
3769 | version = "0.3.0"
3770 | source = "registry+https://github.com/rust-lang/crates.io-index"
3771 | checksum = "6eae92052b72ef70dafa16eddbabffc77e5ca3574be2f7bc1127b36f0a7ad7f2"
3772 |
3773 | [[package]]
3774 | name = "static_assertions"
3775 | version = "1.1.0"
3776 | source = "registry+https://github.com/rust-lang/crates.io-index"
3777 | checksum = "a2eb9349b6444b326872e140eb1cf5e7c522154d69e7a0ffb0fb81c06b37543f"
3778 |
3779 | [[package]]
3780 | name = "svg_fmt"
3781 | version = "0.4.4"
3782 | source = "registry+https://github.com/rust-lang/crates.io-index"
3783 | checksum = "ce5d813d71d82c4cbc1742135004e4a79fd870214c155443451c139c9470a0aa"
3784 |
3785 | [[package]]
3786 | name = "swash"
3787 | version = "0.1.19"
3788 | source = "registry+https://github.com/rust-lang/crates.io-index"
3789 | checksum = "cbd59f3f359ddd2c95af4758c18270eddd9c730dde98598023cdabff472c2ca2"
3790 | dependencies = [
3791 | "skrifa",
3792 | "yazi",
3793 | "zeno",
3794 | ]
3795 |
3796 | [[package]]
3797 | name = "syn"
3798 | version = "2.0.90"
3799 | source = "registry+https://github.com/rust-lang/crates.io-index"
3800 | checksum = "919d3b74a5dd0ccd15aeb8f93e7006bd9e14c295087c9896a110f490752bcf31"
3801 | dependencies = [
3802 | "proc-macro2",
3803 | "quote",
3804 | "unicode-ident",
3805 | ]
3806 |
3807 | [[package]]
3808 | name = "sys-locale"
3809 | version = "0.3.2"
3810 | source = "registry+https://github.com/rust-lang/crates.io-index"
3811 | checksum = "8eab9a99a024a169fe8a903cf9d4a3b3601109bcc13bd9e3c6fff259138626c4"
3812 | dependencies = [
3813 | "libc",
3814 | ]
3815 |
3816 | [[package]]
3817 | name = "sysinfo"
3818 | version = "0.32.1"
3819 | source = "registry+https://github.com/rust-lang/crates.io-index"
3820 | checksum = "4c33cd241af0f2e9e3b5c32163b873b29956890b5342e6745b917ce9d490f4af"
3821 | dependencies = [
3822 | "core-foundation-sys",
3823 | "libc",
3824 | "memchr",
3825 | "ntapi",
3826 | "windows 0.57.0",
3827 | ]
3828 |
3829 | [[package]]
3830 | name = "taffy"
3831 | version = "0.5.2"
3832 | source = "registry+https://github.com/rust-lang/crates.io-index"
3833 | checksum = "9cb893bff0f80ae17d3a57e030622a967b8dbc90e38284d9b4b1442e23873c94"
3834 | dependencies = [
3835 | "arrayvec",
3836 | "grid",
3837 | "num-traits",
3838 | "serde",
3839 | "slotmap",
3840 | ]
3841 |
3842 | [[package]]
3843 | name = "termcolor"
3844 | version = "1.4.1"
3845 | source = "registry+https://github.com/rust-lang/crates.io-index"
3846 | checksum = "06794f8f6c5c898b3275aebefa6b8a1cb24cd2c6c79397ab15774837a0bc5755"
3847 | dependencies = [
3848 | "winapi-util",
3849 | ]
3850 |
3851 | [[package]]
3852 | name = "thiserror"
3853 | version = "1.0.69"
3854 | source = "registry+https://github.com/rust-lang/crates.io-index"
3855 | checksum = "b6aaf5339b578ea85b50e080feb250a3e8ae8cfcdff9a461c9ec2904bc923f52"
3856 | dependencies = [
3857 | "thiserror-impl",
3858 | ]
3859 |
3860 | [[package]]
3861 | name = "thiserror-impl"
3862 | version = "1.0.69"
3863 | source = "registry+https://github.com/rust-lang/crates.io-index"
3864 | checksum = "4fee6c4efc90059e10f81e6d42c60a18f76588c3d74cb83a0b242a2b6c7504c1"
3865 | dependencies = [
3866 | "proc-macro2",
3867 | "quote",
3868 | "syn",
3869 | ]
3870 |
3871 | [[package]]
3872 | name = "thread_local"
3873 | version = "1.1.8"
3874 | source = "registry+https://github.com/rust-lang/crates.io-index"
3875 | checksum = "8b9ef9bad013ada3808854ceac7b46812a6465ba368859a37e2100283d2d719c"
3876 | dependencies = [
3877 | "cfg-if",
3878 | "once_cell",
3879 | ]
3880 |
3881 | [[package]]
3882 | name = "tiny-keccak"
3883 | version = "2.0.2"
3884 | source = "registry+https://github.com/rust-lang/crates.io-index"
3885 | checksum = "2c9d3793400a45f954c52e73d068316d76b6f4e36977e3fcebb13a2721e80237"
3886 | dependencies = [
3887 | "crunchy",
3888 | ]
3889 |
3890 | [[package]]
3891 | name = "tinyvec"
3892 | version = "1.8.0"
3893 | source = "registry+https://github.com/rust-lang/crates.io-index"
3894 | checksum = "445e881f4f6d382d5f27c034e25eb92edd7c784ceab92a0937db7f2e9471b938"
3895 | dependencies = [
3896 | "tinyvec_macros",
3897 | ]
3898 |
3899 | [[package]]
3900 | name = "tinyvec_macros"
3901 | version = "0.1.1"
3902 | source = "registry+https://github.com/rust-lang/crates.io-index"
3903 | checksum = "1f3ccbac311fea05f86f61904b462b55fb3df8837a366dfc601a0161d0532f20"
3904 |
3905 | [[package]]
3906 | name = "toml_datetime"
3907 | version = "0.6.8"
3908 | source = "registry+https://github.com/rust-lang/crates.io-index"
3909 | checksum = "0dd7358ecb8fc2f8d014bf86f6f638ce72ba252a2c3a2572f2a795f1d23efb41"
3910 |
3911 | [[package]]
3912 | name = "toml_edit"
3913 | version = "0.22.22"
3914 | source = "registry+https://github.com/rust-lang/crates.io-index"
3915 | checksum = "4ae48d6208a266e853d946088ed816055e556cc6028c5e8e2b84d9fa5dd7c7f5"
3916 | dependencies = [
3917 | "indexmap",
3918 | "toml_datetime",
3919 | "winnow",
3920 | ]
3921 |
3922 | [[package]]
3923 | name = "tracing"
3924 | version = "0.1.41"
3925 | source = "registry+https://github.com/rust-lang/crates.io-index"
3926 | checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0"
3927 | dependencies = [
3928 | "pin-project-lite",
3929 | "tracing-attributes",
3930 | "tracing-core",
3931 | ]
3932 |
3933 | [[package]]
3934 | name = "tracing-attributes"
3935 | version = "0.1.28"
3936 | source = "registry+https://github.com/rust-lang/crates.io-index"
3937 | checksum = "395ae124c09f9e6918a2310af6038fba074bcf474ac352496d5910dd59a2226d"
3938 | dependencies = [
3939 | "proc-macro2",
3940 | "quote",
3941 | "syn",
3942 | ]
3943 |
3944 | [[package]]
3945 | name = "tracing-core"
3946 | version = "0.1.33"
3947 | source = "registry+https://github.com/rust-lang/crates.io-index"
3948 | checksum = "e672c95779cf947c5311f83787af4fa8fffd12fb27e4993211a84bdfd9610f9c"
3949 | dependencies = [
3950 | "once_cell",
3951 | "valuable",
3952 | ]
3953 |
3954 | [[package]]
3955 | name = "tracing-log"
3956 | version = "0.2.0"
3957 | source = "registry+https://github.com/rust-lang/crates.io-index"
3958 | checksum = "ee855f1f400bd0e5c02d150ae5de3840039a3f54b025156404e34c23c03f47c3"
3959 | dependencies = [
3960 | "log",
3961 | "once_cell",
3962 | "tracing-core",
3963 | ]
3964 |
3965 | [[package]]
3966 | name = "tracing-oslog"
3967 | version = "0.2.0"
3968 | source = "registry+https://github.com/rust-lang/crates.io-index"
3969 | checksum = "528bdd1f0e27b5dd9a4ededf154e824b0532731e4af73bb531de46276e0aab1e"
3970 | dependencies = [
3971 | "bindgen",
3972 | "cc",
3973 | "cfg-if",
3974 | "once_cell",
3975 | "parking_lot",
3976 | "tracing-core",
3977 | "tracing-subscriber",
3978 | ]
3979 |
3980 | [[package]]
3981 | name = "tracing-subscriber"
3982 | version = "0.3.19"
3983 | source = "registry+https://github.com/rust-lang/crates.io-index"
3984 | checksum = "e8189decb5ac0fa7bc8b96b7cb9b2701d60d48805aca84a238004d665fcc4008"
3985 | dependencies = [
3986 | "matchers",
3987 | "nu-ansi-term",
3988 | "once_cell",
3989 | "regex",
3990 | "sharded-slab",
3991 | "smallvec",
3992 | "thread_local",
3993 | "tracing",
3994 | "tracing-core",
3995 | "tracing-log",
3996 | ]
3997 |
3998 | [[package]]
3999 | name = "tracing-wasm"
4000 | version = "0.2.1"
4001 | source = "registry+https://github.com/rust-lang/crates.io-index"
4002 | checksum = "4575c663a174420fa2d78f4108ff68f65bf2fbb7dd89f33749b6e826b3626e07"
4003 | dependencies = [
4004 | "tracing",
4005 | "tracing-subscriber",
4006 | "wasm-bindgen",
4007 | ]
4008 |
4009 | [[package]]
4010 | name = "ttf-parser"
4011 | version = "0.20.0"
4012 | source = "registry+https://github.com/rust-lang/crates.io-index"
4013 | checksum = "17f77d76d837a7830fe1d4f12b7b4ba4192c1888001c7164257e4bc6d21d96b4"
4014 |
4015 | [[package]]
4016 | name = "ttf-parser"
4017 | version = "0.21.1"
4018 | source = "registry+https://github.com/rust-lang/crates.io-index"
4019 | checksum = "2c591d83f69777866b9126b24c6dd9a18351f177e49d625920d19f989fd31cf8"
4020 |
4021 | [[package]]
4022 | name = "twox-hash"
4023 | version = "1.6.3"
4024 | source = "registry+https://github.com/rust-lang/crates.io-index"
4025 | checksum = "97fee6b57c6a41524a810daee9286c02d7752c4253064d0b05472833a438f675"
4026 | dependencies = [
4027 | "cfg-if",
4028 | "static_assertions",
4029 | ]
4030 |
4031 | [[package]]
4032 | name = "typeid"
4033 | version = "1.0.2"
4034 | source = "registry+https://github.com/rust-lang/crates.io-index"
4035 | checksum = "0e13db2e0ccd5e14a544e8a246ba2312cd25223f616442d7f2cb0e3db614236e"
4036 |
4037 | [[package]]
4038 | name = "unicode-bidi"
4039 | version = "0.3.17"
4040 | source = "registry+https://github.com/rust-lang/crates.io-index"
4041 | checksum = "5ab17db44d7388991a428b2ee655ce0c212e862eff1768a455c58f9aad6e7893"
4042 |
4043 | [[package]]
4044 | name = "unicode-bidi-mirroring"
4045 | version = "0.2.0"
4046 | source = "registry+https://github.com/rust-lang/crates.io-index"
4047 | checksum = "23cb788ffebc92c5948d0e997106233eeb1d8b9512f93f41651f52b6c5f5af86"
4048 |
4049 | [[package]]
4050 | name = "unicode-ccc"
4051 | version = "0.2.0"
4052 | source = "registry+https://github.com/rust-lang/crates.io-index"
4053 | checksum = "1df77b101bcc4ea3d78dafc5ad7e4f58ceffe0b2b16bf446aeb50b6cb4157656"
4054 |
4055 | [[package]]
4056 | name = "unicode-ident"
4057 | version = "1.0.14"
4058 | source = "registry+https://github.com/rust-lang/crates.io-index"
4059 | checksum = "adb9e6ca4f869e1180728b7950e35922a7fc6397f7b641499e8f3ef06e50dc83"
4060 |
4061 | [[package]]
4062 | name = "unicode-linebreak"
4063 | version = "0.1.5"
4064 | source = "registry+https://github.com/rust-lang/crates.io-index"
4065 | checksum = "3b09c83c3c29d37506a3e260c08c03743a6bb66a9cd432c6934ab501a190571f"
4066 |
4067 | [[package]]
4068 | name = "unicode-properties"
4069 | version = "0.1.3"
4070 | source = "registry+https://github.com/rust-lang/crates.io-index"
4071 | checksum = "e70f2a8b45122e719eb623c01822704c4e0907e7e426a05927e1a1cfff5b75d0"
4072 |
4073 | [[package]]
4074 | name = "unicode-script"
4075 | version = "0.5.7"
4076 | source = "registry+https://github.com/rust-lang/crates.io-index"
4077 | checksum = "9fb421b350c9aff471779e262955939f565ec18b86c15364e6bdf0d662ca7c1f"
4078 |
4079 | [[package]]
4080 | name = "unicode-segmentation"
4081 | version = "1.12.0"
4082 | source = "registry+https://github.com/rust-lang/crates.io-index"
4083 | checksum = "f6ccf251212114b54433ec949fd6a7841275f9ada20dddd2f29e9ceea4501493"
4084 |
4085 | [[package]]
4086 | name = "unicode-width"
4087 | version = "0.1.14"
4088 | source = "registry+https://github.com/rust-lang/crates.io-index"
4089 | checksum = "7dd6e30e90baa6f72411720665d41d89b9a3d039dc45b8faea1ddd07f617f6af"
4090 |
4091 | [[package]]
4092 | name = "unicode-xid"
4093 | version = "0.2.6"
4094 | source = "registry+https://github.com/rust-lang/crates.io-index"
4095 | checksum = "ebc1c04c71510c7f702b52b7c350734c9ff1295c464a03335b00bb84fc54f853"
4096 |
4097 | [[package]]
4098 | name = "uuid"
4099 | version = "1.11.0"
4100 | source = "registry+https://github.com/rust-lang/crates.io-index"
4101 | checksum = "f8c5f0a0af699448548ad1a2fbf920fb4bee257eae39953ba95cb84891a0446a"
4102 | dependencies = [
4103 | "getrandom",
4104 | "serde",
4105 | ]
4106 |
4107 | [[package]]
4108 | name = "valuable"
4109 | version = "0.1.0"
4110 | source = "registry+https://github.com/rust-lang/crates.io-index"
4111 | checksum = "830b7e5d4d90034032940e4ace0d9a9a057e7a45cd94e6c007832e39edb82f6d"
4112 |
4113 | [[package]]
4114 | name = "vec_map"
4115 | version = "0.8.2"
4116 | source = "registry+https://github.com/rust-lang/crates.io-index"
4117 | checksum = "f1bddf1187be692e79c5ffeab891132dfb0f236ed36a43c7ed39f1165ee20191"
4118 |
4119 | [[package]]
4120 | name = "version_check"
4121 | version = "0.9.5"
4122 | source = "registry+https://github.com/rust-lang/crates.io-index"
4123 | checksum = "0b928f33d975fc6ad9f86c8f283853ad26bdd5b10b7f1542aa2fa15e2289105a"
4124 |
4125 | [[package]]
4126 | name = "walkdir"
4127 | version = "2.5.0"
4128 | source = "registry+https://github.com/rust-lang/crates.io-index"
4129 | checksum = "29790946404f91d9c5d06f9874efddea1dc06c5efe94541a7d6863108e3a5e4b"
4130 | dependencies = [
4131 | "same-file",
4132 | "winapi-util",
4133 | ]
4134 |
4135 | [[package]]
4136 | name = "wasi"
4137 | version = "0.11.0+wasi-snapshot-preview1"
4138 | source = "registry+https://github.com/rust-lang/crates.io-index"
4139 | checksum = "9c8d87e72b64a3b4db28d11ce29237c246188f4f51057d65a7eab63b7987e423"
4140 |
4141 | [[package]]
4142 | name = "wasm-bindgen"
4143 | version = "0.2.96"
4144 | source = "registry+https://github.com/rust-lang/crates.io-index"
4145 | checksum = "21d3b25c3ea1126a2ad5f4f9068483c2af1e64168f847abe863a526b8dbfe00b"
4146 | dependencies = [
4147 | "cfg-if",
4148 | "once_cell",
4149 | "wasm-bindgen-macro",
4150 | ]
4151 |
4152 | [[package]]
4153 | name = "wasm-bindgen-backend"
4154 | version = "0.2.96"
4155 | source = "registry+https://github.com/rust-lang/crates.io-index"
4156 | checksum = "52857d4c32e496dc6537646b5b117081e71fd2ff06de792e3577a150627db283"
4157 | dependencies = [
4158 | "bumpalo",
4159 | "log",
4160 | "once_cell",
4161 | "proc-macro2",
4162 | "quote",
4163 | "syn",
4164 | "wasm-bindgen-shared",
4165 | ]
4166 |
4167 | [[package]]
4168 | name = "wasm-bindgen-futures"
4169 | version = "0.4.46"
4170 | source = "registry+https://github.com/rust-lang/crates.io-index"
4171 | checksum = "951fe82312ed48443ac78b66fa43eded9999f738f6022e67aead7b708659e49a"
4172 | dependencies = [
4173 | "cfg-if",
4174 | "js-sys",
4175 | "once_cell",
4176 | "wasm-bindgen",
4177 | "web-sys",
4178 | ]
4179 |
4180 | [[package]]
4181 | name = "wasm-bindgen-macro"
4182 | version = "0.2.96"
4183 | source = "registry+https://github.com/rust-lang/crates.io-index"
4184 | checksum = "920b0ffe069571ebbfc9ddc0b36ba305ef65577c94b06262ed793716a1afd981"
4185 | dependencies = [
4186 | "quote",
4187 | "wasm-bindgen-macro-support",
4188 | ]
4189 |
4190 | [[package]]
4191 | name = "wasm-bindgen-macro-support"
4192 | version = "0.2.96"
4193 | source = "registry+https://github.com/rust-lang/crates.io-index"
4194 | checksum = "bf59002391099644be3524e23b781fa43d2be0c5aa0719a18c0731b9d195cab6"
4195 | dependencies = [
4196 | "proc-macro2",
4197 | "quote",
4198 | "syn",
4199 | "wasm-bindgen-backend",
4200 | "wasm-bindgen-shared",
4201 | ]
4202 |
4203 | [[package]]
4204 | name = "wasm-bindgen-shared"
4205 | version = "0.2.96"
4206 | source = "registry+https://github.com/rust-lang/crates.io-index"
4207 | checksum = "e5047c5392700766601942795a436d7d2599af60dcc3cc1248c9120bfb0827b0"
4208 |
4209 | [[package]]
4210 | name = "web-sys"
4211 | version = "0.3.73"
4212 | source = "registry+https://github.com/rust-lang/crates.io-index"
4213 | checksum = "476364ff87d0ae6bfb661053a9104ab312542658c3d8f963b7ace80b6f9b26b9"
4214 | dependencies = [
4215 | "js-sys",
4216 | "wasm-bindgen",
4217 | ]
4218 |
4219 | [[package]]
4220 | name = "web-time"
4221 | version = "1.1.0"
4222 | source = "registry+https://github.com/rust-lang/crates.io-index"
4223 | checksum = "5a6580f308b1fad9207618087a65c04e7a10bc77e02c8e84e9b00dd4b12fa0bb"
4224 | dependencies = [
4225 | "js-sys",
4226 | "wasm-bindgen",
4227 | ]
4228 |
4229 | [[package]]
4230 | name = "wgpu"
4231 | version = "23.0.1"
4232 | source = "registry+https://github.com/rust-lang/crates.io-index"
4233 | checksum = "80f70000db37c469ea9d67defdc13024ddf9a5f1b89cb2941b812ad7cde1735a"
4234 | dependencies = [
4235 | "arrayvec",
4236 | "cfg_aliases 0.1.1",
4237 | "document-features",
4238 | "js-sys",
4239 | "log",
4240 | "naga",
4241 | "parking_lot",
4242 | "profiling",
4243 | "raw-window-handle",
4244 | "smallvec",
4245 | "static_assertions",
4246 | "wasm-bindgen",
4247 | "wasm-bindgen-futures",
4248 | "web-sys",
4249 | "wgpu-core",
4250 | "wgpu-hal",
4251 | "wgpu-types",
4252 | ]
4253 |
4254 | [[package]]
4255 | name = "wgpu-core"
4256 | version = "23.0.1"
4257 | source = "registry+https://github.com/rust-lang/crates.io-index"
4258 | checksum = "d63c3c478de8e7e01786479919c8769f62a22eec16788d8c2ac77ce2c132778a"
4259 | dependencies = [
4260 | "arrayvec",
4261 | "bit-vec 0.8.0",
4262 | "bitflags 2.6.0",
4263 | "cfg_aliases 0.1.1",
4264 | "document-features",
4265 | "indexmap",
4266 | "log",
4267 | "naga",
4268 | "once_cell",
4269 | "parking_lot",
4270 | "profiling",
4271 | "raw-window-handle",
4272 | "rustc-hash",
4273 | "smallvec",
4274 | "thiserror",
4275 | "wgpu-hal",
4276 | "wgpu-types",
4277 | ]
4278 |
4279 | [[package]]
4280 | name = "wgpu-hal"
4281 | version = "23.0.1"
4282 | source = "registry+https://github.com/rust-lang/crates.io-index"
4283 | checksum = "89364b8a0b211adc7b16aeaf1bd5ad4a919c1154b44c9ce27838213ba05fd821"
4284 | dependencies = [
4285 | "android_system_properties",
4286 | "arrayvec",
4287 | "ash",
4288 | "bit-set 0.8.0",
4289 | "bitflags 2.6.0",
4290 | "block",
4291 | "bytemuck",
4292 | "cfg_aliases 0.1.1",
4293 | "core-graphics-types",
4294 | "glow",
4295 | "glutin_wgl_sys",
4296 | "gpu-alloc",
4297 | "gpu-allocator",
4298 | "gpu-descriptor",
4299 | "js-sys",
4300 | "khronos-egl",
4301 | "libc",
4302 | "libloading",
4303 | "log",
4304 | "metal",
4305 | "naga",
4306 | "ndk-sys 0.5.0+25.2.9519653",
4307 | "objc",
4308 | "once_cell",
4309 | "parking_lot",
4310 | "profiling",
4311 | "range-alloc",
4312 | "raw-window-handle",
4313 | "renderdoc-sys",
4314 | "rustc-hash",
4315 | "smallvec",
4316 | "thiserror",
4317 | "wasm-bindgen",
4318 | "web-sys",
4319 | "wgpu-types",
4320 | "windows 0.58.0",
4321 | "windows-core 0.58.0",
4322 | ]
4323 |
4324 | [[package]]
4325 | name = "wgpu-types"
4326 | version = "23.0.0"
4327 | source = "registry+https://github.com/rust-lang/crates.io-index"
4328 | checksum = "610f6ff27778148c31093f3b03abc4840f9636d58d597ca2f5977433acfe0068"
4329 | dependencies = [
4330 | "bitflags 2.6.0",
4331 | "js-sys",
4332 | "web-sys",
4333 | ]
4334 |
4335 | [[package]]
4336 | name = "winapi"
4337 | version = "0.3.9"
4338 | source = "registry+https://github.com/rust-lang/crates.io-index"
4339 | checksum = "5c839a674fcd7a98952e593242ea400abe93992746761e38641405d28b00f419"
4340 | dependencies = [
4341 | "winapi-i686-pc-windows-gnu",
4342 | "winapi-x86_64-pc-windows-gnu",
4343 | ]
4344 |
4345 | [[package]]
4346 | name = "winapi-i686-pc-windows-gnu"
4347 | version = "0.4.0"
4348 | source = "registry+https://github.com/rust-lang/crates.io-index"
4349 | checksum = "ac3b87c63620426dd9b991e5ce0329eff545bccbbb34f3be09ff6fb6ab51b7b6"
4350 |
4351 | [[package]]
4352 | name = "winapi-util"
4353 | version = "0.1.9"
4354 | source = "registry+https://github.com/rust-lang/crates.io-index"
4355 | checksum = "cf221c93e13a30d793f7645a0e7762c55d169dbb0a49671918a2319d289b10bb"
4356 | dependencies = [
4357 | "windows-sys 0.59.0",
4358 | ]
4359 |
4360 | [[package]]
4361 | name = "winapi-x86_64-pc-windows-gnu"
4362 | version = "0.4.0"
4363 | source = "registry+https://github.com/rust-lang/crates.io-index"
4364 | checksum = "712e227841d057c1ee1cd2fb22fa7e5a5461ae8e48fa2ca79ec42cfc1931183f"
4365 |
4366 | [[package]]
4367 | name = "windows"
4368 | version = "0.54.0"
4369 | source = "registry+https://github.com/rust-lang/crates.io-index"
4370 | checksum = "9252e5725dbed82865af151df558e754e4a3c2c30818359eb17465f1346a1b49"
4371 | dependencies = [
4372 | "windows-core 0.54.0",
4373 | "windows-targets 0.52.6",
4374 | ]
4375 |
4376 | [[package]]
4377 | name = "windows"
4378 | version = "0.57.0"
4379 | source = "registry+https://github.com/rust-lang/crates.io-index"
4380 | checksum = "12342cb4d8e3b046f3d80effd474a7a02447231330ef77d71daa6fbc40681143"
4381 | dependencies = [
4382 | "windows-core 0.57.0",
4383 | "windows-targets 0.52.6",
4384 | ]
4385 |
4386 | [[package]]
4387 | name = "windows"
4388 | version = "0.58.0"
4389 | source = "registry+https://github.com/rust-lang/crates.io-index"
4390 | checksum = "dd04d41d93c4992d421894c18c8b43496aa748dd4c081bac0dc93eb0489272b6"
4391 | dependencies = [
4392 | "windows-core 0.58.0",
4393 | "windows-targets 0.52.6",
4394 | ]
4395 |
4396 | [[package]]
4397 | name = "windows-core"
4398 | version = "0.54.0"
4399 | source = "registry+https://github.com/rust-lang/crates.io-index"
4400 | checksum = "12661b9c89351d684a50a8a643ce5f608e20243b9fb84687800163429f161d65"
4401 | dependencies = [
4402 | "windows-result 0.1.2",
4403 | "windows-targets 0.52.6",
4404 | ]
4405 |
4406 | [[package]]
4407 | name = "windows-core"
4408 | version = "0.57.0"
4409 | source = "registry+https://github.com/rust-lang/crates.io-index"
4410 | checksum = "d2ed2439a290666cd67ecce2b0ffaad89c2a56b976b736e6ece670297897832d"
4411 | dependencies = [
4412 | "windows-implement 0.57.0",
4413 | "windows-interface 0.57.0",
4414 | "windows-result 0.1.2",
4415 | "windows-targets 0.52.6",
4416 | ]
4417 |
4418 | [[package]]
4419 | name = "windows-core"
4420 | version = "0.58.0"
4421 | source = "registry+https://github.com/rust-lang/crates.io-index"
4422 | checksum = "6ba6d44ec8c2591c134257ce647b7ea6b20335bf6379a27dac5f1641fcf59f99"
4423 | dependencies = [
4424 | "windows-implement 0.58.0",
4425 | "windows-interface 0.58.0",
4426 | "windows-result 0.2.0",
4427 | "windows-strings",
4428 | "windows-targets 0.52.6",
4429 | ]
4430 |
4431 | [[package]]
4432 | name = "windows-implement"
4433 | version = "0.57.0"
4434 | source = "registry+https://github.com/rust-lang/crates.io-index"
4435 | checksum = "9107ddc059d5b6fbfbffdfa7a7fe3e22a226def0b2608f72e9d552763d3e1ad7"
4436 | dependencies = [
4437 | "proc-macro2",
4438 | "quote",
4439 | "syn",
4440 | ]
4441 |
4442 | [[package]]
4443 | name = "windows-implement"
4444 | version = "0.58.0"
4445 | source = "registry+https://github.com/rust-lang/crates.io-index"
4446 | checksum = "2bbd5b46c938e506ecbce286b6628a02171d56153ba733b6c741fc627ec9579b"
4447 | dependencies = [
4448 | "proc-macro2",
4449 | "quote",
4450 | "syn",
4451 | ]
4452 |
4453 | [[package]]
4454 | name = "windows-interface"
4455 | version = "0.57.0"
4456 | source = "registry+https://github.com/rust-lang/crates.io-index"
4457 | checksum = "29bee4b38ea3cde66011baa44dba677c432a78593e202392d1e9070cf2a7fca7"
4458 | dependencies = [
4459 | "proc-macro2",
4460 | "quote",
4461 | "syn",
4462 | ]
4463 |
4464 | [[package]]
4465 | name = "windows-interface"
4466 | version = "0.58.0"
4467 | source = "registry+https://github.com/rust-lang/crates.io-index"
4468 | checksum = "053c4c462dc91d3b1504c6fe5a726dd15e216ba718e84a0e46a88fbe5ded3515"
4469 | dependencies = [
4470 | "proc-macro2",
4471 | "quote",
4472 | "syn",
4473 | ]
4474 |
4475 | [[package]]
4476 | name = "windows-result"
4477 | version = "0.1.2"
4478 | source = "registry+https://github.com/rust-lang/crates.io-index"
4479 | checksum = "5e383302e8ec8515204254685643de10811af0ed97ea37210dc26fb0032647f8"
4480 | dependencies = [
4481 | "windows-targets 0.52.6",
4482 | ]
4483 |
4484 | [[package]]
4485 | name = "windows-result"
4486 | version = "0.2.0"
4487 | source = "registry+https://github.com/rust-lang/crates.io-index"
4488 | checksum = "1d1043d8214f791817bab27572aaa8af63732e11bf84aa21a45a78d6c317ae0e"
4489 | dependencies = [
4490 | "windows-targets 0.52.6",
4491 | ]
4492 |
4493 | [[package]]
4494 | name = "windows-strings"
4495 | version = "0.1.0"
4496 | source = "registry+https://github.com/rust-lang/crates.io-index"
4497 | checksum = "4cd9b125c486025df0eabcb585e62173c6c9eddcec5d117d3b6e8c30e2ee4d10"
4498 | dependencies = [
4499 | "windows-result 0.2.0",
4500 | "windows-targets 0.52.6",
4501 | ]
4502 |
4503 | [[package]]
4504 | name = "windows-sys"
4505 | version = "0.45.0"
4506 | source = "registry+https://github.com/rust-lang/crates.io-index"
4507 | checksum = "75283be5efb2831d37ea142365f009c02ec203cd29a3ebecbc093d52315b66d0"
4508 | dependencies = [
4509 | "windows-targets 0.42.2",
4510 | ]
4511 |
4512 | [[package]]
4513 | name = "windows-sys"
4514 | version = "0.52.0"
4515 | source = "registry+https://github.com/rust-lang/crates.io-index"
4516 | checksum = "282be5f36a8ce781fad8c8ae18fa3f9beff57ec1b52cb3de0789201425d9a33d"
4517 | dependencies = [
4518 | "windows-targets 0.52.6",
4519 | ]
4520 |
4521 | [[package]]
4522 | name = "windows-sys"
4523 | version = "0.59.0"
4524 | source = "registry+https://github.com/rust-lang/crates.io-index"
4525 | checksum = "1e38bc4d79ed67fd075bcc251a1c39b32a1776bbe92e5bef1f0bf1f8c531853b"
4526 | dependencies = [
4527 | "windows-targets 0.52.6",
4528 | ]
4529 |
4530 | [[package]]
4531 | name = "windows-targets"
4532 | version = "0.42.2"
4533 | source = "registry+https://github.com/rust-lang/crates.io-index"
4534 | checksum = "8e5180c00cd44c9b1c88adb3693291f1cd93605ded80c250a75d472756b4d071"
4535 | dependencies = [
4536 | "windows_aarch64_gnullvm 0.42.2",
4537 | "windows_aarch64_msvc 0.42.2",
4538 | "windows_i686_gnu 0.42.2",
4539 | "windows_i686_msvc 0.42.2",
4540 | "windows_x86_64_gnu 0.42.2",
4541 | "windows_x86_64_gnullvm 0.42.2",
4542 | "windows_x86_64_msvc 0.42.2",
4543 | ]
4544 |
4545 | [[package]]
4546 | name = "windows-targets"
4547 | version = "0.48.5"
4548 | source = "registry+https://github.com/rust-lang/crates.io-index"
4549 | checksum = "9a2fa6e2155d7247be68c096456083145c183cbbbc2764150dda45a87197940c"
4550 | dependencies = [
4551 | "windows_aarch64_gnullvm 0.48.5",
4552 | "windows_aarch64_msvc 0.48.5",
4553 | "windows_i686_gnu 0.48.5",
4554 | "windows_i686_msvc 0.48.5",
4555 | "windows_x86_64_gnu 0.48.5",
4556 | "windows_x86_64_gnullvm 0.48.5",
4557 | "windows_x86_64_msvc 0.48.5",
4558 | ]
4559 |
4560 | [[package]]
4561 | name = "windows-targets"
4562 | version = "0.52.6"
4563 | source = "registry+https://github.com/rust-lang/crates.io-index"
4564 | checksum = "9b724f72796e036ab90c1021d4780d4d3d648aca59e491e6b98e725b84e99973"
4565 | dependencies = [
4566 | "windows_aarch64_gnullvm 0.52.6",
4567 | "windows_aarch64_msvc 0.52.6",
4568 | "windows_i686_gnu 0.52.6",
4569 | "windows_i686_gnullvm",
4570 | "windows_i686_msvc 0.52.6",
4571 | "windows_x86_64_gnu 0.52.6",
4572 | "windows_x86_64_gnullvm 0.52.6",
4573 | "windows_x86_64_msvc 0.52.6",
4574 | ]
4575 |
4576 | [[package]]
4577 | name = "windows_aarch64_gnullvm"
4578 | version = "0.42.2"
4579 | source = "registry+https://github.com/rust-lang/crates.io-index"
4580 | checksum = "597a5118570b68bc08d8d59125332c54f1ba9d9adeedeef5b99b02ba2b0698f8"
4581 |
4582 | [[package]]
4583 | name = "windows_aarch64_gnullvm"
4584 | version = "0.48.5"
4585 | source = "registry+https://github.com/rust-lang/crates.io-index"
4586 | checksum = "2b38e32f0abccf9987a4e3079dfb67dcd799fb61361e53e2882c3cbaf0d905d8"
4587 |
4588 | [[package]]
4589 | name = "windows_aarch64_gnullvm"
4590 | version = "0.52.6"
4591 | source = "registry+https://github.com/rust-lang/crates.io-index"
4592 | checksum = "32a4622180e7a0ec044bb555404c800bc9fd9ec262ec147edd5989ccd0c02cd3"
4593 |
4594 | [[package]]
4595 | name = "windows_aarch64_msvc"
4596 | version = "0.42.2"
4597 | source = "registry+https://github.com/rust-lang/crates.io-index"
4598 | checksum = "e08e8864a60f06ef0d0ff4ba04124db8b0fb3be5776a5cd47641e942e58c4d43"
4599 |
4600 | [[package]]
4601 | name = "windows_aarch64_msvc"
4602 | version = "0.48.5"
4603 | source = "registry+https://github.com/rust-lang/crates.io-index"
4604 | checksum = "dc35310971f3b2dbbf3f0690a219f40e2d9afcf64f9ab7cc1be722937c26b4bc"
4605 |
4606 | [[package]]
4607 | name = "windows_aarch64_msvc"
4608 | version = "0.52.6"
4609 | source = "registry+https://github.com/rust-lang/crates.io-index"
4610 | checksum = "09ec2a7bb152e2252b53fa7803150007879548bc709c039df7627cabbd05d469"
4611 |
4612 | [[package]]
4613 | name = "windows_i686_gnu"
4614 | version = "0.42.2"
4615 | source = "registry+https://github.com/rust-lang/crates.io-index"
4616 | checksum = "c61d927d8da41da96a81f029489353e68739737d3beca43145c8afec9a31a84f"
4617 |
4618 | [[package]]
4619 | name = "windows_i686_gnu"
4620 | version = "0.48.5"
4621 | source = "registry+https://github.com/rust-lang/crates.io-index"
4622 | checksum = "a75915e7def60c94dcef72200b9a8e58e5091744960da64ec734a6c6e9b3743e"
4623 |
4624 | [[package]]
4625 | name = "windows_i686_gnu"
4626 | version = "0.52.6"
4627 | source = "registry+https://github.com/rust-lang/crates.io-index"
4628 | checksum = "8e9b5ad5ab802e97eb8e295ac6720e509ee4c243f69d781394014ebfe8bbfa0b"
4629 |
4630 | [[package]]
4631 | name = "windows_i686_gnullvm"
4632 | version = "0.52.6"
4633 | source = "registry+https://github.com/rust-lang/crates.io-index"
4634 | checksum = "0eee52d38c090b3caa76c563b86c3a4bd71ef1a819287c19d586d7334ae8ed66"
4635 |
4636 | [[package]]
4637 | name = "windows_i686_msvc"
4638 | version = "0.42.2"
4639 | source = "registry+https://github.com/rust-lang/crates.io-index"
4640 | checksum = "44d840b6ec649f480a41c8d80f9c65108b92d89345dd94027bfe06ac444d1060"
4641 |
4642 | [[package]]
4643 | name = "windows_i686_msvc"
4644 | version = "0.48.5"
4645 | source = "registry+https://github.com/rust-lang/crates.io-index"
4646 | checksum = "8f55c233f70c4b27f66c523580f78f1004e8b5a8b659e05a4eb49d4166cca406"
4647 |
4648 | [[package]]
4649 | name = "windows_i686_msvc"
4650 | version = "0.52.6"
4651 | source = "registry+https://github.com/rust-lang/crates.io-index"
4652 | checksum = "240948bc05c5e7c6dabba28bf89d89ffce3e303022809e73deaefe4f6ec56c66"
4653 |
4654 | [[package]]
4655 | name = "windows_x86_64_gnu"
4656 | version = "0.42.2"
4657 | source = "registry+https://github.com/rust-lang/crates.io-index"
4658 | checksum = "8de912b8b8feb55c064867cf047dda097f92d51efad5b491dfb98f6bbb70cb36"
4659 |
4660 | [[package]]
4661 | name = "windows_x86_64_gnu"
4662 | version = "0.48.5"
4663 | source = "registry+https://github.com/rust-lang/crates.io-index"
4664 | checksum = "53d40abd2583d23e4718fddf1ebec84dbff8381c07cae67ff7768bbf19c6718e"
4665 |
4666 | [[package]]
4667 | name = "windows_x86_64_gnu"
4668 | version = "0.52.6"
4669 | source = "registry+https://github.com/rust-lang/crates.io-index"
4670 | checksum = "147a5c80aabfbf0c7d901cb5895d1de30ef2907eb21fbbab29ca94c5b08b1a78"
4671 |
4672 | [[package]]
4673 | name = "windows_x86_64_gnullvm"
4674 | version = "0.42.2"
4675 | source = "registry+https://github.com/rust-lang/crates.io-index"
4676 | checksum = "26d41b46a36d453748aedef1486d5c7a85db22e56aff34643984ea85514e94a3"
4677 |
4678 | [[package]]
4679 | name = "windows_x86_64_gnullvm"
4680 | version = "0.48.5"
4681 | source = "registry+https://github.com/rust-lang/crates.io-index"
4682 | checksum = "0b7b52767868a23d5bab768e390dc5f5c55825b6d30b86c844ff2dc7414044cc"
4683 |
4684 | [[package]]
4685 | name = "windows_x86_64_gnullvm"
4686 | version = "0.52.6"
4687 | source = "registry+https://github.com/rust-lang/crates.io-index"
4688 | checksum = "24d5b23dc417412679681396f2b49f3de8c1473deb516bd34410872eff51ed0d"
4689 |
4690 | [[package]]
4691 | name = "windows_x86_64_msvc"
4692 | version = "0.42.2"
4693 | source = "registry+https://github.com/rust-lang/crates.io-index"
4694 | checksum = "9aec5da331524158c6d1a4ac0ab1541149c0b9505fde06423b02f5ef0106b9f0"
4695 |
4696 | [[package]]
4697 | name = "windows_x86_64_msvc"
4698 | version = "0.48.5"
4699 | source = "registry+https://github.com/rust-lang/crates.io-index"
4700 | checksum = "ed94fce61571a4006852b7389a063ab983c02eb1bb37b47f8272ce92d06d9538"
4701 |
4702 | [[package]]
4703 | name = "windows_x86_64_msvc"
4704 | version = "0.52.6"
4705 | source = "registry+https://github.com/rust-lang/crates.io-index"
4706 | checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
4707 |
4708 | [[package]]
4709 | name = "winit"
4710 | version = "0.30.5"
4711 | source = "registry+https://github.com/rust-lang/crates.io-index"
4712 | checksum = "0be9e76a1f1077e04a411f0b989cbd3c93339e1771cb41e71ac4aee95bfd2c67"
4713 | dependencies = [
4714 | "android-activity",
4715 | "atomic-waker",
4716 | "bitflags 2.6.0",
4717 | "block2",
4718 | "bytemuck",
4719 | "calloop",
4720 | "cfg_aliases 0.2.1",
4721 | "concurrent-queue",
4722 | "core-foundation 0.9.4",
4723 | "core-graphics",
4724 | "cursor-icon",
4725 | "dpi",
4726 | "js-sys",
4727 | "libc",
4728 | "ndk 0.9.0",
4729 | "objc2",
4730 | "objc2-app-kit",
4731 | "objc2-foundation",
4732 | "objc2-ui-kit",
4733 | "orbclient",
4734 | "percent-encoding",
4735 | "pin-project",
4736 | "raw-window-handle",
4737 | "redox_syscall 0.4.1",
4738 | "rustix",
4739 | "smol_str",
4740 | "tracing",
4741 | "unicode-segmentation",
4742 | "wasm-bindgen",
4743 | "wasm-bindgen-futures",
4744 | "web-sys",
4745 | "web-time",
4746 | "windows-sys 0.52.0",
4747 | "x11-dl",
4748 | "x11rb",
4749 | "xkbcommon-dl",
4750 | ]
4751 |
4752 | [[package]]
4753 | name = "winnow"
4754 | version = "0.6.20"
4755 | source = "registry+https://github.com/rust-lang/crates.io-index"
4756 | checksum = "36c1fec1a2bb5866f07c25f68c26e565c4c200aebb96d7e55710c19d3e8ac49b"
4757 | dependencies = [
4758 | "memchr",
4759 | ]
4760 |
4761 | [[package]]
4762 | name = "x11-dl"
4763 | version = "2.21.0"
4764 | source = "registry+https://github.com/rust-lang/crates.io-index"
4765 | checksum = "38735924fedd5314a6e548792904ed8c6de6636285cb9fec04d5b1db85c1516f"
4766 | dependencies = [
4767 | "libc",
4768 | "once_cell",
4769 | "pkg-config",
4770 | ]
4771 |
4772 | [[package]]
4773 | name = "x11rb"
4774 | version = "0.13.1"
4775 | source = "registry+https://github.com/rust-lang/crates.io-index"
4776 | checksum = "5d91ffca73ee7f68ce055750bf9f6eca0780b8c85eff9bc046a3b0da41755e12"
4777 | dependencies = [
4778 | "as-raw-xcb-connection",
4779 | "gethostname",
4780 | "libc",
4781 | "libloading",
4782 | "once_cell",
4783 | "rustix",
4784 | "x11rb-protocol",
4785 | ]
4786 |
4787 | [[package]]
4788 | name = "x11rb-protocol"
4789 | version = "0.13.1"
4790 | source = "registry+https://github.com/rust-lang/crates.io-index"
4791 | checksum = "ec107c4503ea0b4a98ef47356329af139c0a4f7750e621cf2973cd3385ebcb3d"
4792 |
4793 | [[package]]
4794 | name = "xkbcommon-dl"
4795 | version = "0.4.2"
4796 | source = "registry+https://github.com/rust-lang/crates.io-index"
4797 | checksum = "d039de8032a9a8856a6be89cea3e5d12fdd82306ab7c94d74e6deab2460651c5"
4798 | dependencies = [
4799 | "bitflags 2.6.0",
4800 | "dlib",
4801 | "log",
4802 | "once_cell",
4803 | "xkeysym",
4804 | ]
4805 |
4806 | [[package]]
4807 | name = "xkeysym"
4808 | version = "0.2.1"
4809 | source = "registry+https://github.com/rust-lang/crates.io-index"
4810 | checksum = "b9cc00251562a284751c9973bace760d86c0276c471b4be569fe6b068ee97a56"
4811 |
4812 | [[package]]
4813 | name = "xml-rs"
4814 | version = "0.8.23"
4815 | source = "registry+https://github.com/rust-lang/crates.io-index"
4816 | checksum = "af310deaae937e48a26602b730250b4949e125f468f11e6990be3e5304ddd96f"
4817 |
4818 | [[package]]
4819 | name = "yazi"
4820 | version = "0.1.6"
4821 | source = "registry+https://github.com/rust-lang/crates.io-index"
4822 | checksum = "c94451ac9513335b5e23d7a8a2b61a7102398b8cca5160829d313e84c9d98be1"
4823 |
4824 | [[package]]
4825 | name = "zeno"
4826 | version = "0.2.3"
4827 | source = "registry+https://github.com/rust-lang/crates.io-index"
4828 | checksum = "dd15f8e0dbb966fd9245e7498c7e9e5055d9e5c8b676b95bd67091cd11a1e697"
4829 |
4830 | [[package]]
4831 | name = "zerocopy"
4832 | version = "0.7.35"
4833 | source = "registry+https://github.com/rust-lang/crates.io-index"
4834 | checksum = "1b9b4fd18abc82b8136838da5d50bae7bdea537c574d8dc1a34ed098d6c166f0"
4835 | dependencies = [
4836 | "byteorder",
4837 | "zerocopy-derive",
4838 | ]
4839 |
4840 | [[package]]
4841 | name = "zerocopy-derive"
4842 | version = "0.7.35"
4843 | source = "registry+https://github.com/rust-lang/crates.io-index"
4844 | checksum = "fa4f8080344d4671fb4e831a13ad1e68092748387dfc4f55e356242fae12ce3e"
4845 | dependencies = [
4846 | "proc-macro2",
4847 | "quote",
4848 | "syn",
4849 | ]
4850 |
--------------------------------------------------------------------------------
/Cargo.toml:
--------------------------------------------------------------------------------
1 | [package]
2 | name = "invaders"
3 | version = "0.3.0"
4 | edition = "2021"
5 | license = "MIT OR Apache-2.0"
6 |
7 | [dependencies]
8 | rand = "0.8.5"
9 |
10 | [dependencies.bevy]
11 | version = "0.15.0"
12 | features = [
13 | "bevy_asset",
14 | "bevy_audio",
15 | "bevy_winit",
16 | "bevy_core_pipeline",
17 | "bevy_sprite",
18 | "bevy_text",
19 | "bevy_ui",
20 | "multi_threaded",
21 | "png",
22 | "vorbis",
23 | "x11",
24 | "file_watcher",
25 | "default_font",
26 | "webgl2",
27 | ]
28 |
29 | [workspace]
30 | resolver = "2" # Important! wgpu/Bevy needs this!
31 |
32 | # Enable max optimizations for dependencies, excluding rust-invaders code:
33 | [profile.dev.package."*"]
34 | opt-level = 3
35 |
--------------------------------------------------------------------------------
/LICENSE-APACHE:
--------------------------------------------------------------------------------
1 | Apache License
2 | Version 2.0, January 2004
3 | http://www.apache.org/licenses/
4 |
5 | TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
6 |
7 | 1. Definitions.
8 |
9 | "License" shall mean the terms and conditions for use, reproduction,
10 | and distribution as defined by Sections 1 through 9 of this document.
11 |
12 | "Licensor" shall mean the copyright owner or entity authorized by
13 | the copyright owner that is granting the License.
14 |
15 | "Legal Entity" shall mean the union of the acting entity and all
16 | other entities that control, are controlled by, or are under common
17 | control with that entity. For the purposes of this definition,
18 | "control" means (i) the power, direct or indirect, to cause the
19 | direction or management of such entity, whether by contract or
20 | otherwise, or (ii) ownership of fifty percent (50%) or more of the
21 | outstanding shares, or (iii) beneficial ownership of such entity.
22 |
23 | "You" (or "Your") shall mean an individual or Legal Entity
24 | exercising permissions granted by this License.
25 |
26 | "Source" form shall mean the preferred form for making modifications,
27 | including but not limited to software source code, documentation
28 | source, and configuration files.
29 |
30 | "Object" form shall mean any form resulting from mechanical
31 | transformation or translation of a Source form, including but
32 | not limited to compiled object code, generated documentation,
33 | and conversions to other media types.
34 |
35 | "Work" shall mean the work of authorship, whether in Source or
36 | Object form, made available under the License, as indicated by a
37 | copyright notice that is included in or attached to the work
38 | (an example is provided in the Appendix below).
39 |
40 | "Derivative Works" shall mean any work, whether in Source or Object
41 | form, that is based on (or derived from) the Work and for which the
42 | editorial revisions, annotations, elaborations, or other modifications
43 | represent, as a whole, an original work of authorship. For the purposes
44 | of this License, Derivative Works shall not include works that remain
45 | separable from, or merely link (or bind by name) to the interfaces of,
46 | the Work and Derivative Works thereof.
47 |
48 | "Contribution" shall mean any work of authorship, including
49 | the original version of the Work and any modifications or additions
50 | to that Work or Derivative Works thereof, that is intentionally
51 | submitted to Licensor for inclusion in the Work by the copyright owner
52 | or by an individual or Legal Entity authorized to submit on behalf of
53 | the copyright owner. For the purposes of this definition, "submitted"
54 | means any form of electronic, verbal, or written communication sent
55 | to the Licensor or its representatives, including but not limited to
56 | communication on electronic mailing lists, source code control systems,
57 | and issue tracking systems that are managed by, or on behalf of, the
58 | Licensor for the purpose of discussing and improving the Work, but
59 | excluding communication that is conspicuously marked or otherwise
60 | designated in writing by the copyright owner as "Not a Contribution."
61 |
62 | "Contributor" shall mean Licensor and any individual or Legal Entity
63 | on behalf of whom a Contribution has been received by Licensor and
64 | subsequently incorporated within the Work.
65 |
66 | 2. Grant of Copyright License. Subject to the terms and conditions of
67 | this License, each Contributor hereby grants to You a perpetual,
68 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
69 | copyright license to reproduce, prepare Derivative Works of,
70 | publicly display, publicly perform, sublicense, and distribute the
71 | Work and such Derivative Works in Source or Object form.
72 |
73 | 3. Grant of Patent License. Subject to the terms and conditions of
74 | this License, each Contributor hereby grants to You a perpetual,
75 | worldwide, non-exclusive, no-charge, royalty-free, irrevocable
76 | (except as stated in this section) patent license to make, have made,
77 | use, offer to sell, sell, import, and otherwise transfer the Work,
78 | where such license applies only to those patent claims licensable
79 | by such Contributor that are necessarily infringed by their
80 | Contribution(s) alone or by combination of their Contribution(s)
81 | with the Work to which such Contribution(s) was submitted. If You
82 | institute patent litigation against any entity (including a
83 | cross-claim or counterclaim in a lawsuit) alleging that the Work
84 | or a Contribution incorporated within the Work constitutes direct
85 | or contributory patent infringement, then any patent licenses
86 | granted to You under this License for that Work shall terminate
87 | as of the date such litigation is filed.
88 |
89 | 4. Redistribution. You may reproduce and distribute copies of the
90 | Work or Derivative Works thereof in any medium, with or without
91 | modifications, and in Source or Object form, provided that You
92 | meet the following conditions:
93 |
94 | (a) You must give any other recipients of the Work or
95 | Derivative Works a copy of this License; and
96 |
97 | (b) You must cause any modified files to carry prominent notices
98 | stating that You changed the files; and
99 |
100 | (c) You must retain, in the Source form of any Derivative Works
101 | that You distribute, all copyright, patent, trademark, and
102 | attribution notices from the Source form of the Work,
103 | excluding those notices that do not pertain to any part of
104 | the Derivative Works; and
105 |
106 | (d) If the Work includes a "NOTICE" text file as part of its
107 | distribution, then any Derivative Works that You distribute must
108 | include a readable copy of the attribution notices contained
109 | within such NOTICE file, excluding those notices that do not
110 | pertain to any part of the Derivative Works, in at least one
111 | of the following places: within a NOTICE text file distributed
112 | as part of the Derivative Works; within the Source form or
113 | documentation, if provided along with the Derivative Works; or,
114 | within a display generated by the Derivative Works, if and
115 | wherever such third-party notices normally appear. The contents
116 | of the NOTICE file are for informational purposes only and
117 | do not modify the License. You may add Your own attribution
118 | notices within Derivative Works that You distribute, alongside
119 | or as an addendum to the NOTICE text from the Work, provided
120 | that such additional attribution notices cannot be construed
121 | as modifying the License.
122 |
123 | You may add Your own copyright statement to Your modifications and
124 | may provide additional or different license terms and conditions
125 | for use, reproduction, or distribution of Your modifications, or
126 | for any such Derivative Works as a whole, provided Your use,
127 | reproduction, and distribution of the Work otherwise complies with
128 | the conditions stated in this License.
129 |
130 | 5. Submission of Contributions. Unless You explicitly state otherwise,
131 | any Contribution intentionally submitted for inclusion in the Work
132 | by You to the Licensor shall be under the terms and conditions of
133 | this License, without any additional terms or conditions.
134 | Notwithstanding the above, nothing herein shall supersede or modify
135 | the terms of any separate license agreement you may have executed
136 | with Licensor regarding such Contributions.
137 |
138 | 6. Trademarks. This License does not grant permission to use the trade
139 | names, trademarks, service marks, or product names of the Licensor,
140 | except as required for reasonable and customary use in describing the
141 | origin of the Work and reproducing the content of the NOTICE file.
142 |
143 | 7. Disclaimer of Warranty. Unless required by applicable law or
144 | agreed to in writing, Licensor provides the Work (and each
145 | Contributor provides its Contributions) on an "AS IS" BASIS,
146 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
147 | implied, including, without limitation, any warranties or conditions
148 | of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
149 | PARTICULAR PURPOSE. You are solely responsible for determining the
150 | appropriateness of using or redistributing the Work and assume any
151 | risks associated with Your exercise of permissions under this License.
152 |
153 | 8. Limitation of Liability. In no event and under no legal theory,
154 | whether in tort (including negligence), contract, or otherwise,
155 | unless required by applicable law (such as deliberate and grossly
156 | negligent acts) or agreed to in writing, shall any Contributor be
157 | liable to You for damages, including any direct, indirect, special,
158 | incidental, or consequential damages of any character arising as a
159 | result of this License or out of the use or inability to use the
160 | Work (including but not limited to damages for loss of goodwill,
161 | work stoppage, computer failure or malfunction, or any and all
162 | other commercial damages or losses), even if such Contributor
163 | has been advised of the possibility of such damages.
164 |
165 | 9. Accepting Warranty or Additional Liability. While redistributing
166 | the Work or Derivative Works thereof, You may choose to offer,
167 | and charge a fee for, acceptance of support, warranty, indemnity,
168 | or other liability obligations and/or rights consistent with this
169 | License. However, in accepting such obligations, You may act only
170 | on Your own behalf and on Your sole responsibility, not on behalf
171 | of any other Contributor, and only if You agree to indemnify,
172 | defend, and hold each Contributor harmless for any liability
173 | incurred by, or claims asserted against, such Contributor by reason
174 | of your accepting any such warranty or additional liability.
175 |
176 | END OF TERMS AND CONDITIONS
177 |
178 | APPENDIX: How to apply the Apache License to your work.
179 |
180 | To apply the Apache License to your work, attach the following
181 | boilerplate notice, with the fields enclosed by brackets "[]"
182 | replaced with your own identifying information. (Don't include
183 | the brackets!) The text should be enclosed in the appropriate
184 | comment syntax for the file format. We also recommend that a
185 | file or class name and description of purpose be included on the
186 | same "printed page" as the copyright notice for easier
187 | identification within third-party archives.
188 |
189 | Copyright 2024 Jeremy Chone
190 |
191 | Licensed under the Apache License, Version 2.0 (the "License");
192 | you may not use this file except in compliance with the License.
193 | You may obtain a copy of the License at
194 |
195 | http://www.apache.org/licenses/LICENSE-2.0
196 |
197 | Unless required by applicable law or agreed to in writing, software
198 | distributed under the License is distributed on an "AS IS" BASIS,
199 | WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
200 | See the License for the specific language governing permissions and
201 | limitations under the License.
--------------------------------------------------------------------------------
/LICENSE-MIT:
--------------------------------------------------------------------------------
1 | The MIT License (MIT)
2 |
3 | Copyright (c) 2024 Jeremy Chone
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | NEW YouTube full tutorial - [Rust Bevy - Full Tutorial - Game Dev](https://www.youtube.com/watch?v=j7qHwb7geIM&list=PL7r-PXl6ZPcCIOFaL7nVHXZvBmHNhrh_Q)
2 |
3 | Rust [Bevy](https://bevyengine.org/) - Game Dev tutorials
4 |
5 | ### Latest Bevy Version updates
6 |
7 | - `2024-11-29` - Updated to Bevy 0.15. Thanks to [Matt Woelfel](https://github.com/woelfman)
8 | - `2024-06-08` - Updated to Bevy 0.14. Thanks to [Matt Woelfel](https://github.com/woelfman)
9 | - `2024-05-23` - Updated to Bevy 0.12 & 0.13. Thanks to [Vinzenz Schroeter (@kaesaecracker)](https://github.com/kaesaecracker)
10 | - `2023-10-11` - Updated to Bevy 0.11.3. Thanks to [juliohq](https://github.com/juliohq)
11 | - `2023-05-02` - Updated to Bevy 0.10. Thanks to [ehasnain](https://github.com/ehasnain)
12 | - `2022-12-13` - Updated to Bevy 0.9. Thanks to [GiulianoCTRL](https://github.com/GiulianoCTRL)
13 | - `2022-08-07` - Main branch updated to Bevy 0.8. Thanks to [DomagojRatko](https://github.com/DomagojRatko)
14 |
15 | ### MacOS Setup
16 |
17 | - Ensure [Rust and Cargo are installed](https://www.rust-lang.org/tools/install)
18 | - Delete the Cargo.lock, as it may otherwise raise an error the first time: `rm Cargo.lock`
19 | - Install Cmake with [Homebrew](https://brew.sh/): `brew install cmake`
20 | - Install Cargo Watch: `cargo install cargo-watch`
21 |
22 | ### Fedora (Linux) requirements
23 |
24 | Ensure to have on your system with a package manager of your choice
25 |
26 | ```
27 | dnf install rust-alsa-sys-devel
28 | dnf install rust-libudev-devel
29 | ```
30 | Thanks to [janpauldahlke](https://github.com/janpauldahlke)
31 |
32 | ### Browser (WebAssembly) - Gitpod
33 |
34 |
35 |
36 |
37 | ### Development
38 |
39 | For rapid development:
40 | - `cargo run --features bevy/dynamic_linking`
41 | - `cargo watch -q -c -x 'run --features bevy/dynamic_linking'`
42 |
43 | - Other Rust videos:
44 | - Weekly Rust Videos at [Jeremy Chone](https://www.youtube.com/jeremychone) channel
45 | - [Rust Game Development Tutorials](https://youtube.com/playlist?list=PL7r-PXl6ZPcCB_9zZFU0krBoGK3y5f5Vt)
46 |
47 | ### Change log
48 |
49 | - 2022-12-13 - Updated to Bevy 0.9. Thanks to [GiulianoCTRL](https://github.com/GiulianoCTRL)
50 | - 2022-08-07 - Main branch updated to Bevy 0.8. Thanks to [DomagojRatko](https://github.com/DomagojRatko)
51 | - 2022-08-07 - Main branch updated to Bevy 0.8 thanks to [@DomagojRatko](https://github.com/DomagojRatko)
52 | - 2022-05-09 - Updated to new tutorial for v0.7. See [Rust Bevy - Full Tutorial - Game Dev](https://www.youtube.com/watch?v=j7qHwb7geIM&list=PL7r-PXl6ZPcCIOFaL7nVHXZvBmHNhrh_Q)
53 | - 2022-01-28 - Code has been updated to **Bevy v0.6** !!!
54 | - 2021-06-25 - Initial (for old tutorial [Episode 1](https://youtu.be/Yb3vInxzKGE), [Episode 2](https://youtu.be/Dl4PJG0eRhg), [Episode 3](https://youtu.be/4nEUX2hf2ZI))
55 |
56 |
57 | ## Rust & Bevy & Other Resources
58 |
59 | Topics learned and used:
60 |
61 | - Rust Programming for Game Development
62 | - Game ECS Engine Bevy
63 | - Bevy System, Bevy Components, Bevy Resources
64 | - Bevy Plugins
65 | - Bevy entities spawn and despawn
66 | - Bevy SpriteBundle, Sprite Sheet (SpriteAtlas)
67 | - Bevy Timesteps, Time, and Timer
68 | - Bevy custom system criteria
69 | - Indirection strategy to spawn explosions
70 | - Sprite Sheet atlas for sprite animations
71 | - Basic Rust Programming
72 | - Rust module
73 | - Rust closure
74 | - Rust matches
75 |
76 | Resources:
77 |
78 | - Rust:
79 | - [Rust Book](https://doc.rust-lang.org/book/)
80 | - [Rust Video Course](https://www.youtube.com/playlist?list=PL7r-PXl6ZPcB4jn1_VR3D8tSK9DxOaiQE)
81 | - Bevy:
82 | - [Official Bevy Web Site](https://bevyengine.org/)
83 | - [Official Bevy Book](https://bevyengine.org/learn/book/introduction/)
84 | - [Unofficial Bevy Cheat Book](https://bevy-cheatbook.github.io/)
85 | - [Official Bevy API Doc](https://docs.rs/bevy/latest/bevy/index.html)
86 | - [Official Bevy Assets](https://bevyengine.org/assets/)
87 | - [Offical GitHub examples](https://github.com/bevyengine/bevy/tree/latest/examples)
88 | - [Great Blog Post - snake game](https://mbuffett.com/posts/bevy-snake-tutorial/)
89 | - Assets:
90 | - [Player, Laser, Enemy Sprites](https://opengameart.org/content/space-shooter-redux)
91 | - [Explosion](https://opengameart.org/content/explosion)
92 |
93 |
94 |
95 | [This repo](https://github.com/jeremychone-channel/rust-invaders)
--------------------------------------------------------------------------------
/assets/enemy_a_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/enemy_a_01.png
--------------------------------------------------------------------------------
/assets/explo_a_sheet.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/explo_a_sheet.png
--------------------------------------------------------------------------------
/assets/laser_a_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/laser_a_01.png
--------------------------------------------------------------------------------
/assets/laser_b_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/laser_b_01.png
--------------------------------------------------------------------------------
/assets/player_a_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/player_a_01.png
--------------------------------------------------------------------------------
/assets/player_b_01.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/jeremychone-channel/rust-invaders/af246691ea089234864277740ce4d7f8fe7417b9/assets/player_b_01.png
--------------------------------------------------------------------------------
/rust-toolchain:
--------------------------------------------------------------------------------
1 | stable
--------------------------------------------------------------------------------
/rustfmt.toml:
--------------------------------------------------------------------------------
1 | hard_tabs = true
2 | edition = "2021"
3 | max_width = 95
4 | chain_width = 80
5 | fn_call_width = 80
6 | single_line_if_else_max_width = 60
7 | struct_lit_width = 24
--------------------------------------------------------------------------------
/src/components.rs:
--------------------------------------------------------------------------------
1 | use bevy::math::{Vec2, Vec3};
2 | use bevy::prelude::Component;
3 | use bevy::time::{Timer, TimerMode};
4 |
5 | // region: --- Common Components
6 | #[derive(Component)]
7 | pub struct Velocity {
8 | pub x: f32,
9 | pub y: f32,
10 | }
11 |
12 | #[derive(Component)]
13 | pub struct Movable {
14 | pub auto_despawn: bool,
15 | }
16 |
17 | #[derive(Component)]
18 | pub struct Laser;
19 |
20 | #[derive(Component)]
21 | pub struct SpriteSize(pub Vec2);
22 |
23 | impl From<(f32, f32)> for SpriteSize {
24 | fn from(val: (f32, f32)) -> Self {
25 | SpriteSize(Vec2::new(val.0, val.1))
26 | }
27 | }
28 |
29 | // endregion: --- Common Components
30 |
31 | // region: --- Player Components
32 | #[derive(Component)]
33 | pub struct Player;
34 |
35 | #[derive(Component)]
36 | pub struct FromPlayer;
37 | // endregion: --- Player Components
38 |
39 | // region: --- Enemy Components
40 | #[derive(Component)]
41 | pub struct Enemy;
42 |
43 | #[derive(Component)]
44 | pub struct FromEnemy;
45 | // endregion: --- Enemy Components
46 |
47 | // region: --- Explosion Components
48 | #[derive(Component)]
49 | pub struct Explosion;
50 |
51 | #[derive(Component)]
52 | pub struct ExplosionToSpawn(pub Vec3);
53 |
54 | #[derive(Component)]
55 | pub struct ExplosionTimer(pub Timer);
56 |
57 | impl Default for ExplosionTimer {
58 | fn default() -> Self {
59 | Self(Timer::from_seconds(0.05, TimerMode::Repeating))
60 | }
61 | }
62 | // endregion: --- Explosion Components
63 |
--------------------------------------------------------------------------------
/src/enemy/formation.rs:
--------------------------------------------------------------------------------
1 | use crate::{WinSize, BASE_SPEED, FORMATION_MEMBERS_MAX};
2 | use bevy::prelude::{Component, Resource};
3 | use rand::{thread_rng, Rng};
4 |
5 | /// Component - Enemy Formation (per enemy)
6 | #[derive(Clone, Component)]
7 | pub struct Formation {
8 | pub start: (f32, f32),
9 | pub radius: (f32, f32),
10 | pub pivot: (f32, f32),
11 | pub speed: f32,
12 | pub angle: f32, // change per tick
13 | }
14 |
15 | /// Resource - Formation Maker
16 | #[derive(Default, Resource)]
17 | pub struct FormationMaker {
18 | current_template: Option,
19 | current_members: u32,
20 | }
21 |
22 | /// Formation factory implementation
23 | impl FormationMaker {
24 | pub fn make(&mut self, win_size: &WinSize) -> Formation {
25 | match (&self.current_template, self.current_members >= FORMATION_MEMBERS_MAX) {
26 | // if has current template and still within max members
27 | (Some(tmpl), false) => {
28 | self.current_members += 1;
29 | tmpl.clone()
30 | }
31 | // if first formation or previous formation is full (need to create a new one)
32 | (None, _) | (_, true) => {
33 | let mut rng = thread_rng();
34 |
35 | // compute the start x/y
36 | let w_span = win_size.w / 2. + 100.;
37 | let h_span = win_size.h / 2. + 100.;
38 | let x = if rng.gen_bool(0.5) { w_span } else { -w_span };
39 | let y = rng.gen_range(-h_span..h_span);
40 | let start = (x, y);
41 |
42 | // compute the pivot x/y
43 | let w_span = win_size.w / 4.;
44 | let h_span = win_size.h / 3. - 50.;
45 | let pivot = (rng.gen_range(-w_span..w_span), rng.gen_range(0.0..h_span));
46 |
47 | // compute the radius
48 | let radius = (rng.gen_range(80.0..150.), 100.);
49 |
50 | // compute the start angle
51 | let angle = (y - pivot.1).atan2(x - pivot.0);
52 |
53 | // speed (fixed for now)
54 | let speed = BASE_SPEED;
55 |
56 | // create the formation
57 | let formation = Formation {
58 | start,
59 | radius,
60 | pivot,
61 | speed,
62 | angle,
63 | };
64 |
65 | // store as template
66 | self.current_template = Some(formation.clone());
67 | // reset members to 1
68 | self.current_members = 1;
69 |
70 | formation
71 | }
72 | }
73 | }
74 | }
75 |
--------------------------------------------------------------------------------
/src/enemy/mod.rs:
--------------------------------------------------------------------------------
1 | use self::formation::{Formation, FormationMaker};
2 | use crate::components::{Enemy, FromEnemy, Laser, Movable, SpriteSize, Velocity};
3 | use crate::{
4 | EnemyCount, GameTextures, WinSize, ENEMY_LASER_SIZE, ENEMY_MAX, ENEMY_SIZE, SPRITE_SCALE,
5 | };
6 |
7 | use bevy::prelude::*;
8 | use bevy::time::common_conditions::on_timer;
9 | use rand::{thread_rng, Rng};
10 | use std::{f32::consts::PI, time::Duration};
11 |
12 | mod formation;
13 |
14 | pub struct EnemyPlugin;
15 |
16 | impl Plugin for EnemyPlugin {
17 | fn build(&self, app: &mut App) {
18 | app.insert_resource(FormationMaker::default())
19 | .add_systems(Update, enemy_spawn_system.run_if(on_timer(Duration::from_secs(1))))
20 | .add_systems(Update, enemy_fire_system.run_if(enemy_fire_criteria))
21 | .add_systems(Update, enemy_movement_system);
22 | }
23 | }
24 |
25 | fn enemy_spawn_system(
26 | mut commands: Commands,
27 | game_textures: Res,
28 | mut enemy_count: ResMut,
29 | mut formation_maker: ResMut,
30 | win_size: Res,
31 | ) {
32 | if enemy_count.0 < ENEMY_MAX {
33 | // get formation and start x/y
34 | let formation = formation_maker.make(&win_size);
35 | let (x, y) = formation.start;
36 |
37 | commands
38 | .spawn((
39 | Sprite::from_image(game_textures.enemy.clone()),
40 | Transform {
41 | translation: Vec3::new(x, y, 10.),
42 | scale: Vec3::new(SPRITE_SCALE, SPRITE_SCALE, 1.),
43 | ..Default::default()
44 | },
45 | ))
46 | .insert(Enemy)
47 | .insert(formation)
48 | .insert(SpriteSize::from(ENEMY_SIZE));
49 |
50 | enemy_count.0 += 1;
51 | }
52 | }
53 |
54 | fn enemy_fire_criteria() -> bool {
55 | thread_rng().gen_bool(1. / 60.)
56 | }
57 |
58 | fn enemy_fire_system(
59 | mut commands: Commands,
60 | game_textures: Res,
61 | enemy_query: Query<&Transform, With>,
62 | ) {
63 | for &tf in enemy_query.iter() {
64 | let (x, y) = (tf.translation.x, tf.translation.y);
65 | // spawn enemy laser sprite
66 | commands
67 | .spawn((
68 | Sprite::from_image(game_textures.enemy_laser.clone()),
69 | Transform {
70 | translation: Vec3::new(x, y - 15., 0.),
71 | rotation: Quat::from_rotation_x(PI),
72 | scale: Vec3::new(SPRITE_SCALE, SPRITE_SCALE, 1.),
73 | },
74 | ))
75 | .insert(Laser)
76 | .insert(SpriteSize::from(ENEMY_LASER_SIZE))
77 | .insert(FromEnemy)
78 | .insert(Movable { auto_despawn: true })
79 | .insert(Velocity { x: 0., y: -1. });
80 | }
81 | }
82 |
83 | fn enemy_movement_system(
84 | time: Res