[INFO] cloning repository https://github.com/Sokoliem/neon-drift
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/Sokoliem/neon-drift" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSokoliem%2Fneon-drift", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSokoliem%2Fneon-drift'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] de0796484f1126c80cb9ff9e27c4048ddae27055
[INFO] checking Sokoliem/neon-drift against try#943e2200e35c3825486c4671b6cab0107a07f8c1 for pr-148952
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2FSokoliem%2Fneon-drift" "/workspace/builds/worker-5-tc2/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-5-tc2/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/Sokoliem/neon-drift
[INFO] finished tweaking git repo https://github.com/Sokoliem/neon-drift
[INFO] tweaked toml for git repo https://github.com/Sokoliem/neon-drift written to /workspace/builds/worker-5-tc2/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/Sokoliem/neon-drift on toolchain 943e2200e35c3825486c4671b6cab0107a07f8c1
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+943e2200e35c3825486c4671b6cab0107a07f8c1" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/Sokoliem/neon-drift already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+943e2200e35c3825486c4671b6cab0107a07f8c1" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+943e2200e35c3825486c4671b6cab0107a07f8c1" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4e3bcb42287bf2052fa1822af774765e802b94ce5ce81a66515f0600cced518c
[INFO] running `Command { std: "docker" "start" "-a" "4e3bcb42287bf2052fa1822af774765e802b94ce5ce81a66515f0600cced518c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4e3bcb42287bf2052fa1822af774765e802b94ce5ce81a66515f0600cced518c", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e3bcb42287bf2052fa1822af774765e802b94ce5ce81a66515f0600cced518c", kill_on_drop: false }`
[INFO] [stdout] 4e3bcb42287bf2052fa1822af774765e802b94ce5ce81a66515f0600cced518c
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-5-tc2/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:4848fb76d95f26979359cc7e45710b1dbc8f3acb7aeedee7c460d7702230f228" "/opt/rustwide/cargo-home/bin/cargo" "+943e2200e35c3825486c4671b6cab0107a07f8c1" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] a1e3b019599fb0f064947a86704dfe3b414f69ab3bdd3a7efd5e6e7bedbf5951
[INFO] running `Command { std: "docker" "start" "-a" "a1e3b019599fb0f064947a86704dfe3b414f69ab3bdd3a7efd5e6e7bedbf5951", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.95
[INFO] [stderr]    Compiling serde v1.0.219
[INFO] [stderr]    Compiling libc v0.2.172
[INFO] [stderr]     Checking log v0.4.27
[INFO] [stderr]    Compiling libm v0.2.15
[INFO] [stderr]     Checking smallvec v1.15.0
[INFO] [stderr]    Compiling zerocopy v0.8.25
[INFO] [stderr]    Compiling cc v1.2.25
[INFO] [stderr]     Checking libloading v0.8.8
[INFO] [stderr]    Compiling rustix v0.38.44
[INFO] [stderr]     Checking either v1.15.0
[INFO] [stderr]     Checking equivalent v1.0.2
[INFO] [stderr]     Checking foldhash v0.1.5
[INFO] [stderr]    Compiling getrandom v0.3.3
[INFO] [stderr]    Compiling ahash v0.8.12
[INFO] [stderr]    Compiling wayland-sys v0.31.6
[INFO] [stderr]     Checking memchr v2.7.4
[INFO] [stderr]     Checking hashbrown v0.15.3
[INFO] [stderr]     Checking dlib v0.5.2
[INFO] [stderr]    Compiling lock_api v0.4.13
[INFO] [stderr]    Compiling paste v1.0.15
[INFO] [stderr]    Compiling parking_lot_core v0.9.11
[INFO] [stderr]    Compiling wayland-client v0.31.10
[INFO] [stderr]     Checking miniz_oxide v0.8.8
[INFO] [stderr]     Checking crossbeam-channel v0.5.15
[INFO] [stderr]    Compiling matrixmultiply v0.3.10
[INFO] [stderr]    Compiling typenum v1.18.0
[INFO] [stderr]     Checking indexmap v2.9.0
[INFO] [stderr]     Checking pp-rs v0.2.1
[INFO] [stderr]    Compiling wgpu-hal v0.19.5
[INFO] [stderr]     Checking rawpointer v0.2.1
[INFO] [stderr]    Compiling serde_json v1.0.140
[INFO] [stderr]    Compiling anyhow v1.0.98
[INFO] [stderr]    Compiling rustix v1.0.7
[INFO] [stderr]    Compiling wgpu-core v0.19.4
[INFO] [stderr]     Checking half v2.6.0
[INFO] [stderr]     Checking linux-raw-sys v0.9.4
[INFO] [stderr]    Compiling quick-xml v0.37.5
[INFO] [stderr]    Compiling quote v1.0.40
[INFO] [stderr]     Checking flate2 v1.1.1
[INFO] [stderr]    Compiling syn v2.0.101
[INFO] [stderr]     Checking glow v0.13.1
[INFO] [stderr]     Checking tracing-core v0.1.33
[INFO] [stderr]     Checking robust v1.2.0
[INFO] [stderr]     Checking rayon v1.10.0
[INFO] [stderr]     Checking crossbeam-queue v0.3.12
[INFO] [stderr]    Compiling wgpu v0.19.4
[INFO] [stderr]     Checking khronos-egl v6.0.0
[INFO] [stderr]     Checking tracing v0.1.41
[INFO] [stderr]     Checking glam v0.25.0
[INFO] [stderr]     Checking parking_lot v0.12.4
[INFO] [stderr]     Checking crossbeam v0.8.4
[INFO] [stderr]     Checking png v0.17.16
[INFO] [stderr]     Checking aho-corasick v1.1.3
[INFO] [stderr]     Checking num-traits v0.2.19
[INFO] [stderr]     Checking anstyle v1.0.10
[INFO] [stderr]     Checking zune-core v0.4.12
[INFO] [stderr]     Checking regex-syntax v0.8.5
[INFO] [stderr]     Checking weezl v0.1.10
[INFO] [stderr]     Checking zune-jpeg v0.4.14
[INFO] [stderr]     Checking inotify-sys v0.1.5
[INFO] [stderr]     Checking zune-inflate v0.2.54
[INFO] [stderr]     Checking xkeysym v0.2.1
[INFO] [stderr]     Checking cursor-icon v1.2.0
[INFO] [stderr]     Checking bit_field v0.10.2
[INFO] [stderr]    Compiling smithay-client-toolkit v0.18.1
[INFO] [stderr]     Checking lebe v0.5.2
[INFO] [stderr]     Checking gif v0.13.1
[INFO] [stderr]     Checking inotify v0.9.6
[INFO] [stderr]     Checking approx v0.5.1
[INFO] [stderr]     Checking num-integer v0.1.46
[INFO] [stderr]     Checking num-complex v0.4.6
[INFO] [stderr]     Checking spade v2.13.1
[INFO] [stderr]     Checking exr v1.73.0
[INFO] [stderr]     Checking num-rational v0.4.2
[INFO] [stderr]     Checking mio v0.8.11
[INFO] [stderr]     Checking getrandom v0.2.16
[INFO] [stderr]     Checking filetime v0.2.25
[INFO] [stderr]     Checking hashbrown v0.14.5
[INFO] [stderr]     Checking memmap2 v0.9.5
[INFO] [stderr]    Compiling wayland-scanner v0.31.6
[INFO] [stderr]     Checking utf8parse v0.2.2
[INFO] [stderr]     Checking spin v0.9.8
[INFO] [stderr]     Checking urlencoding v2.1.3
[INFO] [stderr]     Checking base64 v0.13.1
[INFO] [stderr]     Checking anstyle-parse v0.2.6
[INFO] [stderr]     Checking rand_core v0.6.4
[INFO] [stderr]     Checking notify v6.1.1
[INFO] [stderr]     Checking ppv-lite86 v0.2.21
[INFO] [stderr]    Compiling winit v0.29.15
[INFO] [stderr]     Checking clap_lex v0.7.4
[INFO] [stderr]     Checking colorchoice v1.0.3
[INFO] [stderr]     Checking plotters-backend v0.3.7
[INFO] [stderr]     Checking as-raw-xcb-connection v1.0.1
[INFO] [stderr]     Checking option-ext v0.2.0
[INFO] [stderr]     Checking anstyle-query v1.1.2
[INFO] [stderr]     Checking jpeg-decoder v0.3.1
[INFO] [stderr]     Checking x11rb-protocol v0.13.1
[INFO] [stderr]     Checking is_terminal_polyfill v1.70.1
[INFO] [stderr]     Checking ciborium-io v0.2.2
[INFO] [stderr]     Checking anstream v0.6.18
[INFO] [stderr]     Checking plotters-svg v0.3.7
[INFO] [stderr]     Checking ciborium-ll v0.2.2
[INFO] [stderr]     Checking dirs-sys v0.4.1
[INFO] [stderr]     Checking clap_builder v4.5.39
[INFO] [stderr]     Checking x11-dl v2.21.0
[INFO] [stderr]     Checking itertools v0.10.5
[INFO] [stderr]     Checking rand_chacha v0.3.1
[INFO] [stderr]     Checking regex-automata v0.4.9
[INFO] [stderr]     Checking hecs v0.10.5
[INFO] [stderr]     Checking cast v0.3.0
[INFO] [stderr]     Checking smol_str v0.2.2
[INFO] [stderr]     Checking jiff v0.2.14
[INFO] [stderr]     Checking rand v0.8.5
[INFO] [stderr]     Checking dirs v5.0.1
[INFO] [stderr]     Checking plotters v0.3.7
[INFO] [stderr]     Checking tiff v0.9.1
[INFO] [stderr]     Checking is-terminal v0.4.16
[INFO] [stderr]     Checking pollster v0.3.0
[INFO] [stderr]     Checking anes v0.1.6
[INFO] [stderr]     Checking oorandom v11.1.5
[INFO] [stderr]     Checking criterion-plot v0.5.0
[INFO] [stderr]     Checking clap v4.5.39
[INFO] [stderr]    Compiling wayland-backend v0.3.10
[INFO] [stderr]    Compiling tracy-client-sys v0.24.3
[INFO] [stderr]     Checking regex v1.11.1
[INFO] [stderr]     Checking env_filter v0.1.3
[INFO] [stderr]     Checking env_logger v0.11.8
[INFO] [stderr]    Compiling serde_derive v1.0.219
[INFO] [stderr]    Compiling bytemuck_derive v1.9.3
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling profiling-procmacros v1.0.16
[INFO] [stderr]    Compiling nalgebra-macros v0.2.2
[INFO] [stderr]    Compiling num-derive v0.4.2
[INFO] [stderr]    Compiling gltf-derive v1.4.1
[INFO] [stderr]    Compiling tokio-macros v2.5.0
[INFO] [stderr]     Checking tokio v1.45.1
[INFO] [stderr]     Checking bytemuck v1.23.0
[INFO] [stderr]     Checking thiserror v1.0.69
[INFO] [stderr]     Checking safe_arch v0.7.4
[INFO] [stderr]     Checking qoi v0.4.1
[INFO] [stderr]     Checking tiny-skia-path v0.11.4
[INFO] [stderr]     Checking image v0.25.6
[INFO] [stderr]     Checking image v0.24.9
[INFO] [stderr]     Checking wide v0.7.32
[INFO] [stderr]     Checking tiny-skia v0.11.4
[INFO] [stderr]     Checking simba v0.8.1
[INFO] [stderr]     Checking bitflags v2.9.1
[INFO] [stderr]     Checking ciborium v0.2.2
[INFO] [stderr]     Checking gpu-descriptor-types v0.1.2
[INFO] [stderr]     Checking spirv v0.3.0+sdk-1.3.268.0
[INFO] [stderr]     Checking gpu-alloc-types v0.3.0
[INFO] [stderr]     Checking wgpu-types v0.19.2
[INFO] [stderr]     Checking ron v0.8.1
[INFO] [stderr]     Checking xkbcommon-dl v0.4.2
[INFO] [stderr]     Checking gpu-descriptor v0.2.4
[INFO] [stderr]     Checking gpu-alloc v0.6.0
[INFO] [stderr]     Checking nalgebra v0.32.6
[INFO] [stderr]     Checking gltf-json v1.4.1
[INFO] [stderr]     Checking tinytemplate v1.2.1
[INFO] [stderr]     Checking naga v0.19.2
[INFO] [stderr]     Checking criterion v0.5.1
[INFO] [stderr]     Checking gltf v1.4.1
[INFO] [stderr]     Checking polling v3.8.0
[INFO] [stderr]     Checking neon-assets v0.1.0 (/opt/rustwide/workdir/crates/assets)
[INFO] [stderr]     Checking calloop v0.12.4
[INFO] [stderr]     Checking x11rb v0.13.1
[INFO] [stderr]     Checking wayland-csd-frame v0.3.0
[INFO] [stderr]     Checking tracy-client v0.17.6
[INFO] [stderr]     Checking profiling v1.0.16
[INFO] [stderr]     Checking wayland-protocols v0.31.2
[INFO] [stderr]     Checking calloop-wayland-source v0.2.0
[INFO] [stderr]     Checking wayland-cursor v0.31.10
[INFO] [stderr]     Checking parry3d v0.13.8
[INFO] [stderr]     Checking wayland-protocols-wlr v0.2.0
[INFO] [stderr]     Checking wayland-protocols-plasma v0.2.0
[INFO] [stderr]     Checking rapier3d v0.18.0
[INFO] [stderr]     Checking sctk-adwaita v0.8.3
[INFO] [stderr]     Checking neon-physics v0.1.0 (/opt/rustwide/workdir/crates/physics)
[INFO] [stdout] warning: unused variable: `forward_velocity`
[INFO] [stdout]    --> crates/physics/src/vehicle.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 127 |             let forward_velocity = velocity.dot(&forward);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_velocity`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ground_height`
[INFO] [stdout]    --> crates/physics/src/vehicle.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |             let ground_height = 0.0; // Ground at y=0
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ground_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `forward_velocity`
[INFO] [stdout]    --> crates/physics/src/vehicle.rs:127:17
[INFO] [stdout]     |
[INFO] [stdout] 127 |             let forward_velocity = velocity.dot(&forward);
[INFO] [stdout]     |                 ^^^^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_forward_velocity`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `ground_height`
[INFO] [stdout]    --> crates/physics/src/vehicle.rs:248:17
[INFO] [stdout]     |
[INFO] [stdout] 248 |             let ground_height = 0.0; // Ground at y=0
[INFO] [stdout]     |                 ^^^^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_ground_height`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking neon-renderer v0.1.0 (/opt/rustwide/workdir/crates/renderer)
[INFO] [stdout] warning: field `ray_tracing_enabled` is never read
[INFO] [stdout]   --> crates/renderer/src/lib.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Renderer {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     ray_tracing_enabled: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `storage_texture` is never read
[INFO] [stdout]  --> crates/renderer/src/ray_tracing.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct RayTracingPipeline {
[INFO] [stdout]   |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     storage_texture: wgpu::Texture,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `ray_tracing_enabled` is never read
[INFO] [stdout]   --> crates/renderer/src/lib.rs:16:5
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Renderer {
[INFO] [stdout]    |            -------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 16 |     ray_tracing_enabled: bool,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `storage_texture` is never read
[INFO] [stdout]  --> crates/renderer/src/ray_tracing.rs:7:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct RayTracingPipeline {
[INFO] [stdout]   |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 7 |     storage_texture: wgpu::Texture,
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking neon-gameplay v0.1.0 (/opt/rustwide/workdir/crates/gameplay)
[INFO] [stdout] warning: unused import: `glam::Vec3`
[INFO] [stdout]  --> crates/gameplay/src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glam::Vec3;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_time`
[INFO] [stdout]   --> crates/gameplay/src/lib.rs:19:30
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn update(&mut self, delta_time: f32) {
[INFO] [stdout]    |                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_time`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `world` is never read
[INFO] [stdout]  --> crates/gameplay/src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct GameplaySystem {
[INFO] [stdout]   |            -------------- field in this struct
[INFO] [stdout] 9 |     world: World,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `glam::Vec3`
[INFO] [stdout]  --> crates/gameplay/src/lib.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use glam::Vec3;
[INFO] [stdout]   |     ^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `delta_time`
[INFO] [stdout]   --> crates/gameplay/src/lib.rs:19:30
[INFO] [stdout]    |
[INFO] [stdout] 19 |     pub fn update(&mut self, delta_time: f32) {
[INFO] [stdout]    |                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_delta_time`
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `world` is never read
[INFO] [stdout]  --> crates/gameplay/src/lib.rs:9:5
[INFO] [stdout]   |
[INFO] [stdout] 8 | pub struct GameplaySystem {
[INFO] [stdout]   |            -------------- field in this struct
[INFO] [stdout] 9 |     world: World,
[INFO] [stdout]   |     ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Checking neon-drift-native v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unused import: `WindowEvent`
[INFO] [stdout]  --> src/controls.rs:1:44
[INFO] [stdout]   |
[INFO] [stdout] 1 | use winit::event::{ElementState, KeyEvent, WindowEvent};
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `WindowEvent`
[INFO] [stdout]  --> src/controls.rs:1:44
[INFO] [stdout]   |
[INFO] [stdout] 1 | use winit::event::{ElementState, KeyEvent, WindowEvent};
[INFO] [stdout]   |                                            ^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyEvent`
[INFO] [stdout]  --> src/game.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use winit::event::{ElementState, KeyEvent, WindowEvent};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `KeyEvent`
[INFO] [stdout]  --> src/game.rs:3:34
[INFO] [stdout]   |
[INFO] [stdout] 3 | use winit::event::{ElementState, KeyEvent, WindowEvent};
[INFO] [stdout]   |                                  ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vec3`
[INFO] [stdout]  --> src/hud_elements.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use glam::{Vec2, Vec3, Vec4};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/hud_elements.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::util::DeviceExt`
[INFO] [stdout]  --> src/light_trail_renderer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::util::DeviceExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Vec3` and `Vec4`
[INFO] [stdout]  --> src/main_menu.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use glam::{Vec2, Vec3, Vec4};
[INFO] [stdout]   |                  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `Vec3`
[INFO] [stdout]  --> src/hud_elements.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use glam::{Vec2, Vec3, Vec4};
[INFO] [stdout]   |                  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/hud_elements.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 2 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `wgpu::util::DeviceExt`
[INFO] [stdout]  --> src/light_trail_renderer.rs:1:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | use wgpu::util::DeviceExt;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused imports: `Vec3` and `Vec4`
[INFO] [stdout]  --> src/main_menu.rs:1:18
[INFO] [stdout]   |
[INFO] [stdout] 1 | use glam::{Vec2, Vec3, Vec4};
[INFO] [stdout]   |                  ^^^^  ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/tron_hud.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `std::f32::consts::PI`
[INFO] [stdout]  --> src/tron_hud.rs:5:5
[INFO] [stdout]   |
[INFO] [stdout] 5 | use std::f32::consts::PI;
[INFO] [stdout]   |     ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PopupStyle`
[INFO] [stdout]  --> src/ui_popup_renderer.rs:5:45
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::ui_popup_system::{UIPopupSystem, PopupStyle};
[INFO] [stdout]   |                                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `PopupStyle`
[INFO] [stdout]  --> src/ui_popup_renderer.rs:5:45
[INFO] [stdout]   |
[INFO] [stdout] 5 | use crate::ui_popup_system::{UIPopupSystem, PopupStyle};
[INFO] [stdout]   |                                             ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]    --> src/main_menu.rs:246:17
[INFO] [stdout]     |
[INFO] [stdout] 246 |         for (i, text) in menu_items.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `text`
[INFO] [stdout]    --> src/main_menu.rs:246:17
[INFO] [stdout]     |
[INFO] [stdout] 246 |         for (i, text) in menu_items.iter().enumerate() {
[INFO] [stdout]     |                 ^^^^ help: if this is intentional, prefix it with an underscore: `_text`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/ui_popup_renderer.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, popup) in popup_system.get_popups().iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `camera_bind_group_layout` and `test_renderer` are never read
[INFO] [stdout]   --> src/app.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct NeonDriftApp {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 34 |     camera_bind_group_layout: wgpu::BindGroupLayout,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     test_renderer: TestRenderer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/audio_stub.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 |     PlayEngineSound(f32, f32),
[INFO] [stdout]   |     --------------- ^^^  ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     fields in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 4 -     PlayEngineSound(f32, f32),
[INFO] [stdout] 4 +     PlayEngineSound((), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/audio_stub.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     PlayDriftSound(f32),
[INFO] [stdout]   |     -------------- ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     PlayDriftSound(f32),
[INFO] [stdout] 5 +     PlayDriftSound(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/audio_stub.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     PlayCollisionSound(f32),
[INFO] [stdout]   |     ------------------ ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 8 -     PlayCollisionSound(f32),
[INFO] [stdout] 8 +     PlayCollisionSound(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `PlayBoostSound`, `StopBoostSound`, `SetMasterVolume`, `PlayMusic`, and `StopMusic` are never constructed
[INFO] [stdout]   --> src/audio_stub.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub enum AudioCommand {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  6 |     PlayBoostSound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]  7 |     StopBoostSound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     PlayCollisionSound(f32),
[INFO] [stdout]  9 |     SetMasterVolume(f32),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     PlayMusic(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 11 |     StopMusic,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BloomPipeline` is never constructed
[INFO] [stdout]   --> src/bloom_pipeline.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct BloomPipeline {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_pipeline`, `resize`, `create_bind_groups`, `update`, and `render` are never used
[INFO] [stdout]    --> src/bloom_pipeline.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl BloomPipeline {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  42 |     pub fn new(device: &wgpu::Device, format: wgpu::TextureFormat) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn create_pipeline(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn resize(&mut self, device: &wgpu::Device, width: u32, height: u32, format: wgpu::TextureFormat) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn create_bind_groups(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn update(&mut self, queue: &wgpu::Queue, threshold: f32, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     pub fn render(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `target_position`, `target_look_at`, and `smoothness` are never read
[INFO] [stdout]   --> src/camera.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct Camera {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub target_position: Vec3,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     pub target_look_at: Vec3,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub smoothness: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Camera` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `follow_vehicle`, and `set_chase_cam` are never used
[INFO] [stdout]   --> src/camera.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Camera {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new(aspect_ratio: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn update(&mut self, delta_time: f32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn follow_vehicle(&mut self, vehicle_pos: Vec3, vehicle_forward: Vec3, vehicle_velocity: Vec3) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn set_chase_cam(&mut self, target: Vec3) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Free` is never constructed
[INFO] [stdout]   --> src/camera_system.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum CameraMode {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     Free,       // Free look camera
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CameraMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `up` is never read
[INFO] [stdout]   --> src/camera_system.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct CameraState {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub up: Vec3,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CameraState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pitch_offset` is never read
[INFO] [stdout]   --> src/camera_system.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct HoodSettings {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 57 |     offset: Vec3,
[INFO] [stdout] 58 |     pitch_offset: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HoodSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_rotation` is never read
[INFO] [stdout]   --> src/camera_system.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct CockpitSettings {
[INFO] [stdout]    |        --------------- field in this struct
[INFO] [stdout] 63 |     offset: Vec3,
[INFO] [stdout] 64 |     max_rotation: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CockpitSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_free_look`, `get_view_matrix`, and `get_projection_matrix` are never used
[INFO] [stdout]    --> src/camera_system.rs:379:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CameraSystem {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn update_free_look(&mut self, yaw_delta: f32, pitch_delta: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub fn get_view_matrix(&self) -> Mat4 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn get_projection_matrix(&self, aspect_ratio: f32) -> Mat4 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `timestamp` is never read
[INFO] [stdout]   --> src/collision_system.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct CollisionEvent {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub timestamp: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CollisionEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_recent_collisions` and `clear_old_collisions` are never used
[INFO] [stdout]    --> src/collision_system.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl CollisionSystem {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn get_recent_collisions(&self) -> &VecDeque<CollisionEvent> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn clear_old_collisions(&mut self, current_time: f32, max_age: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Transition` and `NearMiss` are never constructed
[INFO] [stdout]   --> src/drift_system.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum StyleBonusType {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 43 |     Transition,        // Smooth direction change
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 44 |     NearMiss,          // Close to wall/obstacle
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StyleBonusType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `width` are never read
[INFO] [stdout]   --> src/drift_system.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct TrailPoint {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 51 |     pub position: Vec3,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 52 |     pub width: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrailPoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_multiplier_color` is never used
[INFO] [stdout]    --> src/drift_system.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl DriftSystem {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_multiplier_color(&self) -> [f32; 3] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `track` is never read
[INFO] [stdout]   --> src/game.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct GameState {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub track: TrackPhysics,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HudRenderer` is never constructed
[INFO] [stdout]  --> src/hud.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct HudRenderer {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_hud_geometry`, `create_quad`, `update`, and `render` are never used
[INFO] [stdout]    --> src/hud.rs:31:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl HudRenderer {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  31 |     pub fn new(device: &wgpu::Device, surface_format: wgpu::TextureFormat) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn create_hud_geometry() -> Vec<HudVertex> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn create_quad(pos: Vec2, size: Vec2, color: [f32; 4]) -> [HudVertex; 6] {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     pub fn update(&self, queue: &wgpu::Queue, screen_size: [f32; 2], speed: f32, drift_score: f32, lap_time: f32, time: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position_display` and `damage_indicator` are never read
[INFO] [stdout]   --> src/hud_elements.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct HudElements {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub position_display: PositionDisplay,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub damage_indicator: DamageIndicator,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HudElements` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `unit` is never read
[INFO] [stdout]   --> src/hud_elements.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Speedometer {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub unit: SpeedUnit,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Speedometer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MPH` is never constructed
[INFO] [stdout]   --> src/hud_elements.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub enum SpeedUnit {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 48 |     KMH,
[INFO] [stdout] 49 |     MPH,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpeedUnit` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `redline` is never read
[INFO] [stdout]   --> src/hud_elements.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Tachometer {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub redline: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tachometer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `chain_count` and `style_text` are never read
[INFO] [stdout]   --> src/hud_elements.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct DriftDisplay {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub chain_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 69 |     pub style_text: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DriftDisplay` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `current_lap`, `total_laps`, and `sector_times` are never read
[INFO] [stdout]   --> src/hud_elements.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct LapTimer {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub current_lap: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 89 |     pub total_laps: u32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 90 |     pub sector_times: Vec<f32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LapTimer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `zoom_level`, `rotation`, `track_data`, and `player_positions` are never read
[INFO] [stdout]    --> src/hud_elements.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  95 | pub struct Minimap {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub zoom_level: f32,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]  99 |     pub rotation: f32, // 0 = fixed north, 1 = follow car
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 100 |     pub track_data: Vec<Vec2>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 101 |     pub player_positions: Vec<(Vec2, f32)>, // position, rotation
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Minimap` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `current_position`, `total_racers`, `position_change`, and `animation_timer` are never read
[INFO] [stdout]    --> src/hud_elements.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct PositionDisplay {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 106 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 107 |     pub current_position: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub total_racers: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub position_change: i32, // +1 = gained position
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 110 |     pub animation_timer: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PositionDisplay` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `damage_level`, `critical_parts`, and `warning_flash` are never read
[INFO] [stdout]    --> src/hud_elements.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub struct DamageIndicator {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 115 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 116 |     pub damage_level: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 117 |     pub critical_parts: Vec<DamagePart>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 118 |     pub warning_flash: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DamageIndicator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `damage`, and `critical` are never read
[INFO] [stdout]    --> src/hud_elements.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct DamagePart {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 123 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 124 |     pub damage: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 125 |     pub critical: bool,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DamagePart` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_visible` is never read
[INFO] [stdout]    --> src/hud_elements.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct NotificationSystem {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 130 |     pub active_notifications: Vec<Notification>,
[INFO] [stdout] 131 |     pub max_visible: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationSystem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `text`, `notification_type`, and `position` are never read
[INFO] [stdout]    --> src/hud_elements.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct Notification {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 136 |     pub text: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub notification_type: NotificationType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Notification` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Achievement`, `Warning`, `Info`, `DriftBonus`, and `LapTime` are never constructed
[INFO] [stdout]    --> src/hud_elements.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub enum NotificationType {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] 145 |     Achievement,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 146 |     Warning,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 147 |     Info,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 148 |     DriftBonus,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 149 |     LapTime,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `size`, and `color` are never read
[INFO] [stdout]    --> src/hud_elements.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct StatusIndicator {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 154 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 155 |     pub size: Vec2,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub color: Vec4,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StatusIndicator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_notification` is never used
[INFO] [stdout]    --> src/hud_elements.rs:312:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl HudElements {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 312 |     pub fn add_notification(&mut self, text: String, notification_type: NotificationType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gear` is never read
[INFO] [stdout]    --> src/hud_elements.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub struct HudUpdateData {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub gear: i32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/input.rs:4:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | pub struct InputState {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout]  3 |     // Movement
[INFO] [stdout]  4 |     pub forward: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]  5 |     pub backward: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  6 |     pub left: bool,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]  7 |     pub right: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub camera_cycle: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub rear_view: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 17 |     pub free_look: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 18 |     pub photo_mode: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub pause: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub reset_car: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub throttle_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub brake_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 27 |     pub steer_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub mouse_delta: (f32, f32),
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InputState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_throttle`, `get_brake`, `get_steer`, and `reset_frame_inputs` are never used
[INFO] [stdout]   --> src/input.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl InputState {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_throttle(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn get_brake(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn get_steer(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn reset_frame_inputs(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `vertex_count` is never used
[INFO] [stdout]    --> src/light_trail_system.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl LightTrailSystem {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn vertex_count(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_indices` is never read
[INFO] [stdout]   --> src/light_trail_renderer.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct LightTrailRenderer {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     max_indices: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MenuOption` is never used
[INFO] [stdout]   --> src/main_menu.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum MenuOption {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MenuState` is never used
[INFO] [stdout]   --> src/main_menu.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum MenuState {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainMenu` is never constructed
[INFO] [stdout]   --> src/main_menu.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MainMenu {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_menu_geometry`, `create_background_geometry`, `update`, `handle_input`, and `render` are never used
[INFO] [stdout]    --> src/main_menu.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl MainMenu {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  63 |     pub fn new(device: &wgpu::Device, format: wgpu::TextureFormat, screen_size: Vec2) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     fn create_menu_geometry(screen_size: Vec2) -> (Vec<MenuVertex>, Vec<u16>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn create_background_geometry() -> (Vec<MenuVertex>, Vec<u16>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn update(&mut self, queue: &wgpu::Queue, delta_time: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub fn handle_input(&mut self, key: winit::keyboard::KeyCode) -> Option<MenuOption> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_threshold`, `set_intensity`, `set_radius`, and `set_color_boost` are never used
[INFO] [stdout]    --> src/neon_glow.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl NeonGlowPipeline {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn set_threshold(&mut self, threshold: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn set_intensity(&mut self, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn set_radius(&mut self, radius: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn set_color_boost(&mut self, color_boost: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gravity` and `drag` are never read
[INFO] [stdout]   --> src/particle_system.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ParticleEmitter {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub gravity: Vec3,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 31 |     pub drag: f32,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_tire_smoke` and `create_derezz_effect` are never used
[INFO] [stdout]    --> src/particle_system.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl ParticleSystem {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn set_tire_smoke(&mut self, wheel_index: usize, position: Vec3, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 259 |     pub fn create_derezz_effect(&mut self, position: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/physics_mode.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PhysicsSettings {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub drift_grip: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 19 |     pub drift_recovery_speed: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub abs_strength: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub weight_transfer: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub tire_temperature: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub aerodynamics: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub realistic_damage: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicsSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_trick` is never read
[INFO] [stdout]    --> src/physics_mode.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout]  93 | pub struct VehicleState {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub last_trick: Option<Trick>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VehicleState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BarrelRoll`, `Backflip`, `Frontflip`, and `Spin360` are never constructed
[INFO] [stdout]    --> src/physics_mode.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum Trick {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] 109 |     BarrelRoll,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 110 |     Backflip,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 111 |     Frontflip,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 112 |     Spin360,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Trick` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_perform_trick` is never used
[INFO] [stdout]    --> src/physics_mode.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl VehicleState {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn can_perform_trick(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_count` and `dynamic_vertex_buffer_size` are never read
[INFO] [stdout]   --> src/tron_hud.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct TronHudRenderer {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     vertex_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     dynamic_vertex_buffer_size: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_notification` is never used
[INFO] [stdout]    --> src/tron_hud.rs:633:12
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl TronHudRenderer {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 633 |     pub fn add_notification(&mut self, text: String, notification_type: NotificationType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pipeline` is never read
[INFO] [stdout]  --> src/test_renderer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct TestRenderer {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 2 |     pipeline: wgpu::RenderPipeline,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render` is never used
[INFO] [stdout]   --> src/test_renderer.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl TestRenderer {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>, camera_bind_group: &'a wgpu::BindGroup) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Perfect` is never constructed
[INFO] [stdout]   --> src/ui_popup_system.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum PopupStyle {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Perfect,         // Perfect drift
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PopupStyle` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_perfect_drift_popup` is never used
[INFO] [stdout]    --> src/ui_popup_system.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout]  31 | impl UIPopupSystem {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn add_perfect_drift_popup(&mut self, position: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `i`
[INFO] [stdout]    --> src/ui_popup_renderer.rs:194:14
[INFO] [stdout]     |
[INFO] [stdout] 194 |         for (i, popup) in popup_system.get_popups().iter().enumerate() {
[INFO] [stdout]     |              ^ help: if this is intentional, prefix it with an underscore: `_i`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `camera_bind_group_layout` and `test_renderer` are never read
[INFO] [stdout]   --> src/app.rs:34:5
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub struct NeonDriftApp {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 34 |     camera_bind_group_layout: wgpu::BindGroupLayout,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 38 |     test_renderer: TestRenderer,
[INFO] [stdout]    |     ^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `0` and `1` are never read
[INFO] [stdout]  --> src/audio_stub.rs:4:21
[INFO] [stdout]   |
[INFO] [stdout] 4 |     PlayEngineSound(f32, f32),
[INFO] [stdout]   |     --------------- ^^^  ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     fields in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the fields to be of unit type to suppress this warning while preserving the field numbering, or remove the fields
[INFO] [stdout]   |
[INFO] [stdout] 4 -     PlayEngineSound(f32, f32),
[INFO] [stdout] 4 +     PlayEngineSound((), ()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/audio_stub.rs:5:20
[INFO] [stdout]   |
[INFO] [stdout] 5 |     PlayDriftSound(f32),
[INFO] [stdout]   |     -------------- ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 5 -     PlayDriftSound(f32),
[INFO] [stdout] 5 +     PlayDriftSound(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `0` is never read
[INFO] [stdout]  --> src/audio_stub.rs:8:24
[INFO] [stdout]   |
[INFO] [stdout] 8 |     PlayCollisionSound(f32),
[INFO] [stdout]   |     ------------------ ^^^
[INFO] [stdout]   |     |
[INFO] [stdout]   |     field in this variant
[INFO] [stdout]   |
[INFO] [stdout] help: consider changing the field to be of unit type to suppress this warning while preserving the field numbering, or remove the field
[INFO] [stdout]   |
[INFO] [stdout] 8 -     PlayCollisionSound(f32),
[INFO] [stdout] 8 +     PlayCollisionSound(()),
[INFO] [stdout]   |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `PlayBoostSound`, `StopBoostSound`, `SetMasterVolume`, `PlayMusic`, and `StopMusic` are never constructed
[INFO] [stdout]   --> src/audio_stub.rs:6:5
[INFO] [stdout]    |
[INFO] [stdout]  3 | pub enum AudioCommand {
[INFO] [stdout]    |          ------------ variants in this enum
[INFO] [stdout] ...
[INFO] [stdout]  6 |     PlayBoostSound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]  7 |     StopBoostSound,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^
[INFO] [stdout]  8 |     PlayCollisionSound(f32),
[INFO] [stdout]  9 |     SetMasterVolume(f32),
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^
[INFO] [stdout] 10 |     PlayMusic(String),
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 11 |     StopMusic,
[INFO] [stdout]    |     ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `BloomPipeline` is never constructed
[INFO] [stdout]   --> src/bloom_pipeline.rs:13:12
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct BloomPipeline {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_pipeline`, `resize`, `create_bind_groups`, `update`, and `render` are never used
[INFO] [stdout]    --> src/bloom_pipeline.rs:42:12
[INFO] [stdout]     |
[INFO] [stdout]  41 | impl BloomPipeline {
[INFO] [stdout]     | ------------------ associated items in this implementation
[INFO] [stdout]  42 |     pub fn new(device: &wgpu::Device, format: wgpu::TextureFormat) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 218 |     fn create_pipeline(
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 275 |     pub fn resize(&mut self, device: &wgpu::Device, width: u32, height: u32, format: wgpu::TextureFormat) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 311 |     pub fn create_bind_groups(
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 391 |     pub fn update(&mut self, queue: &wgpu::Queue, threshold: f32, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 397 |     pub fn render(
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `target_position`, `target_look_at`, and `smoothness` are never read
[INFO] [stdout]   --> src/camera.rs:13:9
[INFO] [stdout]    |
[INFO] [stdout]  4 | pub struct Camera {
[INFO] [stdout]    |            ------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 13 |     pub target_position: Vec3,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 14 |     pub target_look_at: Vec3,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^
[INFO] [stdout] 15 |     pub smoothness: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Camera` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `update`, `follow_vehicle`, and `set_chase_cam` are never used
[INFO] [stdout]   --> src/camera.rs:19:12
[INFO] [stdout]    |
[INFO] [stdout] 18 | impl Camera {
[INFO] [stdout]    | ----------- associated items in this implementation
[INFO] [stdout] 19 |     pub fn new(aspect_ratio: f32) -> Self {
[INFO] [stdout]    |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 33 |     pub fn update(&mut self, delta_time: f32) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 44 |     pub fn follow_vehicle(&mut self, vehicle_pos: Vec3, vehicle_forward: Vec3, vehicle_velocity: Vec3) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 64 |     pub fn set_chase_cam(&mut self, target: Vec3) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Free` is never constructed
[INFO] [stdout]   --> src/camera_system.rs:10:5
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub enum CameraMode {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 10 |     Free,       // Free look camera
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CameraMode` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `up` is never read
[INFO] [stdout]   --> src/camera_system.rs:40:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct CameraState {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 40 |     pub up: Vec3,
[INFO] [stdout]    |         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CameraState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pitch_offset` is never read
[INFO] [stdout]   --> src/camera_system.rs:58:5
[INFO] [stdout]    |
[INFO] [stdout] 56 | struct HoodSettings {
[INFO] [stdout]    |        ------------ field in this struct
[INFO] [stdout] 57 |     offset: Vec3,
[INFO] [stdout] 58 |     pitch_offset: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HoodSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_rotation` is never read
[INFO] [stdout]   --> src/camera_system.rs:64:5
[INFO] [stdout]    |
[INFO] [stdout] 62 | struct CockpitSettings {
[INFO] [stdout]    |        --------------- field in this struct
[INFO] [stdout] 63 |     offset: Vec3,
[INFO] [stdout] 64 |     max_rotation: f32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CockpitSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `update_free_look`, `get_view_matrix`, and `get_projection_matrix` are never used
[INFO] [stdout]    --> src/camera_system.rs:379:12
[INFO] [stdout]     |
[INFO] [stdout]  75 | impl CameraSystem {
[INFO] [stdout]     | ----------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 379 |     pub fn update_free_look(&mut self, yaw_delta: f32, pitch_delta: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 404 |     pub fn get_view_matrix(&self) -> Mat4 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 408 |     pub fn get_projection_matrix(&self, aspect_ratio: f32) -> Mat4 {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `timestamp` is never read
[INFO] [stdout]   --> src/collision_system.rs:11:9
[INFO] [stdout]    |
[INFO] [stdout]  6 | pub struct CollisionEvent {
[INFO] [stdout]    |            -------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 11 |     pub timestamp: f32,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `CollisionEvent` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_recent_collisions` and `clear_old_collisions` are never used
[INFO] [stdout]    --> src/collision_system.rs:147:12
[INFO] [stdout]     |
[INFO] [stdout]  21 | impl CollisionSystem {
[INFO] [stdout]     | -------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 147 |     pub fn get_recent_collisions(&self) -> &VecDeque<CollisionEvent> {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 151 |     pub fn clear_old_collisions(&mut self, current_time: f32, max_age: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Transition` and `NearMiss` are never constructed
[INFO] [stdout]   --> src/drift_system.rs:43:5
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub enum StyleBonusType {
[INFO] [stdout]    |          -------------- variants in this enum
[INFO] [stdout] ...
[INFO] [stdout] 43 |     Transition,        // Smooth direction change
[INFO] [stdout]    |     ^^^^^^^^^^
[INFO] [stdout] 44 |     NearMiss,          // Close to wall/obstacle
[INFO] [stdout]    |     ^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `StyleBonusType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position` and `width` are never read
[INFO] [stdout]   --> src/drift_system.rs:51:9
[INFO] [stdout]    |
[INFO] [stdout] 50 | pub struct TrailPoint {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout] 51 |     pub position: Vec3,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout] 52 |     pub width: f32,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `TrailPoint` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `get_multiplier_color` is never used
[INFO] [stdout]    --> src/drift_system.rs:245:12
[INFO] [stdout]     |
[INFO] [stdout]  57 | impl DriftSystem {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 245 |     pub fn get_multiplier_color(&self) -> [f32; 3] {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `track` is never read
[INFO] [stdout]   --> src/game.rs:26:9
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub struct GameState {
[INFO] [stdout]    |            --------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub track: TrackPhysics,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `HudRenderer` is never constructed
[INFO] [stdout]  --> src/hud.rs:4:12
[INFO] [stdout]   |
[INFO] [stdout] 4 | pub struct HudRenderer {
[INFO] [stdout]   |            ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_hud_geometry`, `create_quad`, `update`, and `render` are never used
[INFO] [stdout]    --> src/hud.rs:31:12
[INFO] [stdout]     |
[INFO] [stdout]  30 | impl HudRenderer {
[INFO] [stdout]     | ---------------- associated items in this implementation
[INFO] [stdout]  31 |     pub fn new(device: &wgpu::Device, surface_format: wgpu::TextureFormat) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 153 |     fn create_hud_geometry() -> Vec<HudVertex> {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 177 |     fn create_quad(pos: Vec2, size: Vec2, color: [f32; 4]) -> [HudVertex; 6] {
[INFO] [stdout]     |        ^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 194 |     pub fn update(&self, queue: &wgpu::Queue, screen_size: [f32; 2], speed: f32, drift_score: f32, lap_time: f32, time: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 207 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position_display` and `damage_indicator` are never read
[INFO] [stdout]   --> src/hud_elements.rs:23:9
[INFO] [stdout]    |
[INFO] [stdout]  5 | pub struct HudElements {
[INFO] [stdout]    |            ----------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 23 |     pub position_display: PositionDisplay,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 26 |     pub damage_indicator: DamageIndicator,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `HudElements` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `unit` is never read
[INFO] [stdout]   --> src/hud_elements.rs:42:9
[INFO] [stdout]    |
[INFO] [stdout] 37 | pub struct Speedometer {
[INFO] [stdout]    |            ----------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 42 |     pub unit: SpeedUnit,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Speedometer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `MPH` is never constructed
[INFO] [stdout]   --> src/hud_elements.rs:49:5
[INFO] [stdout]    |
[INFO] [stdout] 47 | pub enum SpeedUnit {
[INFO] [stdout]    |          --------- variant in this enum
[INFO] [stdout] 48 |     KMH,
[INFO] [stdout] 49 |     MPH,
[INFO] [stdout]    |     ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `SpeedUnit` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `redline` is never read
[INFO] [stdout]   --> src/hud_elements.rs:58:9
[INFO] [stdout]    |
[INFO] [stdout] 53 | pub struct Tachometer {
[INFO] [stdout]    |            ---------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 58 |     pub redline: f32,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `Tachometer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `chain_count` and `style_text` are never read
[INFO] [stdout]   --> src/hud_elements.rs:68:9
[INFO] [stdout]    |
[INFO] [stdout] 63 | pub struct DriftDisplay {
[INFO] [stdout]    |            ------------ fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 68 |     pub chain_count: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 69 |     pub style_text: Option<String>,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DriftDisplay` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `current_lap`, `total_laps`, and `sector_times` are never read
[INFO] [stdout]   --> src/hud_elements.rs:88:9
[INFO] [stdout]    |
[INFO] [stdout] 84 | pub struct LapTimer {
[INFO] [stdout]    |            -------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 88 |     pub current_lap: u32,
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout] 89 |     pub total_laps: u32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 90 |     pub sector_times: Vec<f32>,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `LapTimer` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `zoom_level`, `rotation`, `track_data`, and `player_positions` are never read
[INFO] [stdout]    --> src/hud_elements.rs:98:9
[INFO] [stdout]     |
[INFO] [stdout]  95 | pub struct Minimap {
[INFO] [stdout]     |            ------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout]  98 |     pub zoom_level: f32,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]  99 |     pub rotation: f32, // 0 = fixed north, 1 = follow car
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 100 |     pub track_data: Vec<Vec2>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout] 101 |     pub player_positions: Vec<(Vec2, f32)>, // position, rotation
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Minimap` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `current_position`, `total_racers`, `position_change`, and `animation_timer` are never read
[INFO] [stdout]    --> src/hud_elements.rs:106:9
[INFO] [stdout]     |
[INFO] [stdout] 105 | pub struct PositionDisplay {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 106 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 107 |     pub current_position: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 108 |     pub total_racers: u32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 109 |     pub position_change: i32, // +1 = gained position
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 110 |     pub animation_timer: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `PositionDisplay` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `damage_level`, `critical_parts`, and `warning_flash` are never read
[INFO] [stdout]    --> src/hud_elements.rs:115:9
[INFO] [stdout]     |
[INFO] [stdout] 114 | pub struct DamageIndicator {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 115 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 116 |     pub damage_level: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^
[INFO] [stdout] 117 |     pub critical_parts: Vec<DamagePart>,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^
[INFO] [stdout] 118 |     pub warning_flash: f32,
[INFO] [stdout]     |         ^^^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DamageIndicator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `name`, `damage`, and `critical` are never read
[INFO] [stdout]    --> src/hud_elements.rs:123:9
[INFO] [stdout]     |
[INFO] [stdout] 122 | pub struct DamagePart {
[INFO] [stdout]     |            ---------- fields in this struct
[INFO] [stdout] 123 |     pub name: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 124 |     pub damage: f32,
[INFO] [stdout]     |         ^^^^^^
[INFO] [stdout] 125 |     pub critical: bool,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `DamagePart` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_visible` is never read
[INFO] [stdout]    --> src/hud_elements.rs:131:9
[INFO] [stdout]     |
[INFO] [stdout] 129 | pub struct NotificationSystem {
[INFO] [stdout]     |            ------------------ field in this struct
[INFO] [stdout] 130 |     pub active_notifications: Vec<Notification>,
[INFO] [stdout] 131 |     pub max_visible: usize,
[INFO] [stdout]     |         ^^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationSystem` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `text`, `notification_type`, and `position` are never read
[INFO] [stdout]    --> src/hud_elements.rs:136:9
[INFO] [stdout]     |
[INFO] [stdout] 135 | pub struct Notification {
[INFO] [stdout]     |            ------------ fields in this struct
[INFO] [stdout] 136 |     pub text: String,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 137 |     pub notification_type: NotificationType,
[INFO] [stdout]     |         ^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 140 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Notification` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `Achievement`, `Warning`, `Info`, `DriftBonus`, and `LapTime` are never constructed
[INFO] [stdout]    --> src/hud_elements.rs:145:5
[INFO] [stdout]     |
[INFO] [stdout] 144 | pub enum NotificationType {
[INFO] [stdout]     |          ---------------- variants in this enum
[INFO] [stdout] 145 |     Achievement,
[INFO] [stdout]     |     ^^^^^^^^^^^
[INFO] [stdout] 146 |     Warning,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout] 147 |     Info,
[INFO] [stdout]     |     ^^^^
[INFO] [stdout] 148 |     DriftBonus,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 149 |     LapTime,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `NotificationType` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `position`, `size`, and `color` are never read
[INFO] [stdout]    --> src/hud_elements.rs:154:9
[INFO] [stdout]     |
[INFO] [stdout] 153 | pub struct StatusIndicator {
[INFO] [stdout]     |            --------------- fields in this struct
[INFO] [stdout] 154 |     pub position: Vec2,
[INFO] [stdout]     |         ^^^^^^^^
[INFO] [stdout] 155 |     pub size: Vec2,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] ...
[INFO] [stdout] 158 |     pub color: Vec4,
[INFO] [stdout]     |         ^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `StatusIndicator` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_notification` is never used
[INFO] [stdout]    --> src/hud_elements.rs:312:12
[INFO] [stdout]     |
[INFO] [stdout] 162 | impl HudElements {
[INFO] [stdout]     | ---------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 312 |     pub fn add_notification(&mut self, text: String, notification_type: NotificationType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `gear` is never read
[INFO] [stdout]    --> src/hud_elements.rs:337:9
[INFO] [stdout]     |
[INFO] [stdout] 334 | pub struct HudUpdateData {
[INFO] [stdout]     |            ------------- field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 337 |     pub gear: i32,
[INFO] [stdout]     |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/input.rs:4:9
[INFO] [stdout]    |
[INFO] [stdout]  2 | pub struct InputState {
[INFO] [stdout]    |            ---------- fields in this struct
[INFO] [stdout]  3 |     // Movement
[INFO] [stdout]  4 |     pub forward: bool,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout]  5 |     pub backward: bool,
[INFO] [stdout]    |         ^^^^^^^^
[INFO] [stdout]  6 |     pub left: bool,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout]  7 |     pub right: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 15 |     pub camera_cycle: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 16 |     pub rear_view: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 17 |     pub free_look: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] 18 |     pub photo_mode: bool,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     pub pause: bool,
[INFO] [stdout]    |         ^^^^^
[INFO] [stdout] 22 |     pub reset_car: bool,
[INFO] [stdout]    |         ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 25 |     pub throttle_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 26 |     pub brake_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 27 |     pub steer_analog: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub mouse_delta: (f32, f32),
[INFO] [stdout]    |         ^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `InputState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `get_throttle`, `get_brake`, `get_steer`, and `reset_frame_inputs` are never used
[INFO] [stdout]   --> src/input.rs:38:12
[INFO] [stdout]    |
[INFO] [stdout] 33 | impl InputState {
[INFO] [stdout]    | --------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 38 |     pub fn get_throttle(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 50 |     pub fn get_brake(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 60 |     pub fn get_steer(&self) -> f32 {
[INFO] [stdout]    |            ^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 72 |     pub fn reset_frame_inputs(&mut self) {
[INFO] [stdout]    |            ^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `vertex_count` is never used
[INFO] [stdout]    --> src/light_trail_system.rs:200:12
[INFO] [stdout]     |
[INFO] [stdout]  90 | impl LightTrailSystem {
[INFO] [stdout]     | --------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn vertex_count(&self) -> u32 {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `max_indices` is never read
[INFO] [stdout]   --> src/light_trail_renderer.rs:33:5
[INFO] [stdout]    |
[INFO] [stdout] 28 | pub struct LightTrailRenderer {
[INFO] [stdout]    |            ------------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 33 |     max_indices: usize,
[INFO] [stdout]    |     ^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MenuOption` is never used
[INFO] [stdout]   --> src/main_menu.rs:25:10
[INFO] [stdout]    |
[INFO] [stdout] 25 | pub enum MenuOption {
[INFO] [stdout]    |          ^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: enum `MenuState` is never used
[INFO] [stdout]   --> src/main_menu.rs:33:10
[INFO] [stdout]    |
[INFO] [stdout] 33 | pub enum MenuState {
[INFO] [stdout]    |          ^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: struct `MainMenu` is never constructed
[INFO] [stdout]   --> src/main_menu.rs:40:12
[INFO] [stdout]    |
[INFO] [stdout] 40 | pub struct MainMenu {
[INFO] [stdout]    |            ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: associated items `new`, `create_menu_geometry`, `create_background_geometry`, `update`, `handle_input`, and `render` are never used
[INFO] [stdout]    --> src/main_menu.rs:63:12
[INFO] [stdout]     |
[INFO] [stdout]  62 | impl MainMenu {
[INFO] [stdout]     | ------------- associated items in this implementation
[INFO] [stdout]  63 |     pub fn new(device: &wgpu::Device, format: wgpu::TextureFormat, screen_size: Vec2) -> Self {
[INFO] [stdout]     |            ^^^
[INFO] [stdout] ...
[INFO] [stdout] 228 |     fn create_menu_geometry(screen_size: Vec2) -> (Vec<MenuVertex>, Vec<u16>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 288 |     fn create_background_geometry() -> (Vec<MenuVertex>, Vec<u16>) {
[INFO] [stdout]     |        ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 328 |     pub fn update(&mut self, queue: &wgpu::Queue, delta_time: f32) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 349 |     pub fn handle_input(&mut self, key: winit::keyboard::KeyCode) -> Option<MenuOption> {
[INFO] [stdout]     |            ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 367 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>) {
[INFO] [stdout]     |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_threshold`, `set_intensity`, `set_radius`, and `set_color_boost` are never used
[INFO] [stdout]    --> src/neon_glow.rs:196:12
[INFO] [stdout]     |
[INFO] [stdout]  25 | impl NeonGlowPipeline {
[INFO] [stdout]     | --------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 196 |     pub fn set_threshold(&mut self, threshold: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 200 |     pub fn set_intensity(&mut self, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 204 |     pub fn set_radius(&mut self, radius: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 208 |     pub fn set_color_boost(&mut self, color_boost: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `gravity` and `drag` are never read
[INFO] [stdout]   --> src/particle_system.rs:30:9
[INFO] [stdout]    |
[INFO] [stdout] 19 | pub struct ParticleEmitter {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 30 |     pub gravity: Vec3,
[INFO] [stdout]    |         ^^^^^^^
[INFO] [stdout] 31 |     pub drag: f32,
[INFO] [stdout]    |         ^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: methods `set_tire_smoke` and `create_derezz_effect` are never used
[INFO] [stdout]    --> src/particle_system.rs:203:12
[INFO] [stdout]     |
[INFO] [stdout] 119 | impl ParticleSystem {
[INFO] [stdout]     | ------------------- methods in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 203 |     pub fn set_tire_smoke(&mut self, wheel_index: usize, position: Vec3, intensity: f32) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 259 |     pub fn create_derezz_effect(&mut self, position: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: multiple fields are never read
[INFO] [stdout]   --> src/physics_mode.rs:18:9
[INFO] [stdout]    |
[INFO] [stdout] 10 | pub struct PhysicsSettings {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     pub drift_grip: f32,
[INFO] [stdout]    |         ^^^^^^^^^^
[INFO] [stdout] 19 |     pub drift_recovery_speed: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 24 |     pub abs_strength: f32,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 27 |     pub weight_transfer: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^
[INFO] [stdout] 28 |     pub tire_temperature: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout] 29 |     pub aerodynamics: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^
[INFO] [stdout] 30 |     pub realistic_damage: bool,
[INFO] [stdout]    |         ^^^^^^^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PhysicsSettings` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `last_trick` is never read
[INFO] [stdout]    --> src/physics_mode.rs:103:9
[INFO] [stdout]     |
[INFO] [stdout]  93 | pub struct VehicleState {
[INFO] [stdout]     |            ------------ field in this struct
[INFO] [stdout] ...
[INFO] [stdout] 103 |     pub last_trick: Option<Trick>,
[INFO] [stdout]     |         ^^^^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `VehicleState` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variants `BarrelRoll`, `Backflip`, `Frontflip`, and `Spin360` are never constructed
[INFO] [stdout]    --> src/physics_mode.rs:109:5
[INFO] [stdout]     |
[INFO] [stdout] 108 | pub enum Trick {
[INFO] [stdout]     |          ----- variants in this enum
[INFO] [stdout] 109 |     BarrelRoll,
[INFO] [stdout]     |     ^^^^^^^^^^
[INFO] [stdout] 110 |     Backflip,
[INFO] [stdout]     |     ^^^^^^^^
[INFO] [stdout] 111 |     Frontflip,
[INFO] [stdout]     |     ^^^^^^^^^
[INFO] [stdout] 112 |     Spin360,
[INFO] [stdout]     |     ^^^^^^^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `Trick` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `can_perform_trick` is never used
[INFO] [stdout]    --> src/physics_mode.rs:164:12
[INFO] [stdout]     |
[INFO] [stdout] 133 | impl VehicleState {
[INFO] [stdout]     | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 164 |     pub fn can_perform_trick(&self) -> bool {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `vertex_count` and `dynamic_vertex_buffer_size` are never read
[INFO] [stdout]   --> src/tron_hud.rs:18:5
[INFO] [stdout]    |
[INFO] [stdout]  7 | pub struct TronHudRenderer {
[INFO] [stdout]    |            --------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 18 |     vertex_count: u32,
[INFO] [stdout]    |     ^^^^^^^^^^^^
[INFO] [stdout] ...
[INFO] [stdout] 21 |     dynamic_vertex_buffer_size: u64,
[INFO] [stdout]    |     ^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_notification` is never used
[INFO] [stdout]    --> src/tron_hud.rs:633:12
[INFO] [stdout]     |
[INFO] [stdout]  51 | impl TronHudRenderer {
[INFO] [stdout]     | -------------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 633 |     pub fn add_notification(&mut self, text: String, notification_type: NotificationType) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: field `pipeline` is never read
[INFO] [stdout]  --> src/test_renderer.rs:2:5
[INFO] [stdout]   |
[INFO] [stdout] 1 | pub struct TestRenderer {
[INFO] [stdout]   |            ------------ field in this struct
[INFO] [stdout] 2 |     pipeline: wgpu::RenderPipeline,
[INFO] [stdout]   |     ^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `render` is never used
[INFO] [stdout]   --> src/test_renderer.rs:62:12
[INFO] [stdout]    |
[INFO] [stdout]  5 | impl TestRenderer {
[INFO] [stdout]    | ----------------- method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 62 |     pub fn render<'a>(&'a self, render_pass: &mut wgpu::RenderPass<'a>, camera_bind_group: &'a wgpu::BindGroup) {
[INFO] [stdout]    |            ^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: variant `Perfect` is never constructed
[INFO] [stdout]   --> src/ui_popup_system.rs:23:5
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub enum PopupStyle {
[INFO] [stdout]    |          ---------- variant in this enum
[INFO] [stdout] ...
[INFO] [stdout] 23 |     Perfect,         // Perfect drift
[INFO] [stdout]    |     ^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `PopupStyle` has derived impls for the traits `Clone` and `Debug`, but these are intentionally ignored during dead code analysis
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: method `add_perfect_drift_popup` is never used
[INFO] [stdout]    --> src/ui_popup_system.rs:101:12
[INFO] [stdout]     |
[INFO] [stdout]  31 | impl UIPopupSystem {
[INFO] [stdout]     | ------------------ method in this implementation
[INFO] [stdout] ...
[INFO] [stdout] 101 |     pub fn add_perfect_drift_popup(&mut self, position: Vec3) {
[INFO] [stdout]     |            ^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 2m 47s
[INFO] running `Command { std: "docker" "inspect" "a1e3b019599fb0f064947a86704dfe3b414f69ab3bdd3a7efd5e6e7bedbf5951", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "a1e3b019599fb0f064947a86704dfe3b414f69ab3bdd3a7efd5e6e7bedbf5951", kill_on_drop: false }`
[INFO] [stdout] a1e3b019599fb0f064947a86704dfe3b414f69ab3bdd3a7efd5e6e7bedbf5951
