diff options
| author | LLLL Colonq <llll@colonq> | 2026-04-26 22:56:52 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2026-04-26 22:59:25 -0400 |
| commit | d943ba194b3cfab18354e96f7be2c1e434d6c073 (patch) | |
| tree | 786b7c92f3d9abc6a147a59e440982306fc77f55 /crates/renderer/src/overlay.rs | |
| parent | 4a22d2573cd4014c3cc0ed784dd2e9d6bed7fb67 (diff) | |
Update
Diffstat (limited to 'crates/renderer/src/overlay.rs')
| -rw-r--r-- | crates/renderer/src/overlay.rs | 21 |
1 files changed, 20 insertions, 1 deletions
diff --git a/crates/renderer/src/overlay.rs b/crates/renderer/src/overlay.rs index 049d788..5abeb04 100644 --- a/crates/renderer/src/overlay.rs +++ b/crates/renderer/src/overlay.rs @@ -4,13 +4,17 @@ pub mod drawing; pub mod automata; pub mod tcg; pub mod loopback; +pub mod clippy; +pub mod combo; +use redis::Commands; use teleia::*; use std::f32::consts::PI; use byteorder::{LE, ReadBytesExt}; +use sha2::Digest; -use crate::{assets, fig, toggle, input, background}; +use crate::{assets, background, input, net::fig, texture_server, toggle}; pub struct Chat { author: String, @@ -49,6 +53,7 @@ pub struct State { model: scene::Scene, model_neck_base: glam::Mat4, fig_binary: fig::BinaryClient, + texture_server: texture_server::Server, tracking: Tracking, info: Info, chat: Chat, @@ -87,7 +92,12 @@ impl State { b"overlay shader chat", b"overlay automata spawn", b"overlay tcg generate", + b"overlay clippy animate", + b"overlay clippy border on", + b"overlay clippy border off", + b"overlay combo message", ]).expect("failed to connect to bus"), + texture_server: texture_server::Server::new(ctx), tracking: Tracking { eyes: (1.0, 1.0), mouth: 0.0, @@ -121,6 +131,7 @@ impl State { if let Some(n) = self.model.nodes_by_name.get("J_Bip_C_Neck").and_then(|i| self.model.nodes.get_mut(*i)) { n.transform = self.model_neck_base * glam::Mat4::from_quat(self.tracking.neck); } + self.texture_server.update(ctx); Ok(()) } } @@ -256,6 +267,14 @@ impl teleia::state::Game for Overlays { for ov in self.overlays.iter_mut() { ov.render(ctx, st, &mut self.state)?; } + // st.bind_2d(ctx, &self.state.assets.shader_flat); + // self.state.assets.shader_flat.set_f32(ctx, "transparency", 0.0); + // self.state.assets.shader_flat.set_position_2d(ctx, st, + // &glam::Vec2::new(0.0, 0.0), + // &glam::Vec2::new(200.0, 200.0), + // ); + // self.state.texture_server.tex.bind(ctx); + // st.mesh_square.render(ctx); Ok(()) } } |
