diff options
| author | LLLL Colonq <llll@colonq> | 2026-06-02 04:30:25 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2026-06-02 04:30:25 -0400 |
| commit | bc0e38a0ad8b15db49d311d50a69aaa157fecde8 (patch) | |
| tree | 0b4fb0805b6de0ef3b6ed73564fff2e9c4d7d7e1 /crates | |
| parent | 49bfe7902cb058a6ecf20bfa8199ca93a8af669b (diff) | |
Split x and y increment in set_texture_offset
Diffstat (limited to 'crates')
| -rw-r--r-- | crates/teleia/src/renderer.rs | 26 |
1 files changed, 11 insertions, 15 deletions
diff --git a/crates/teleia/src/renderer.rs b/crates/teleia/src/renderer.rs index 0a16d36..2b5e747 100644 --- a/crates/teleia/src/renderer.rs +++ b/crates/teleia/src/renderer.rs @@ -118,11 +118,7 @@ impl<A: Assets> Renderer<A> { ctx: &context::Context, st: &mut state::State, flags: UberFlags, mode: ShaderMode, ) { - if let BoundShader::Uber(f, sm) = self.shader { - if f == flags && sm == mode { - return; - } - } + if let BoundShader::Uber(f, sm) = self.shader && f == flags && sm == mode { return } match mode { ShaderMode::TwoDimension => st.bind_2d(ctx, &self.shader_uber), ShaderMode::ThreeDimension => st.bind_3d(ctx, &self.shader_uber), @@ -135,11 +131,7 @@ impl<A: Assets> Renderer<A> { ctx: &context::Context, st: &mut state::State, shader: A::Shader, mode: ShaderMode, ) { - if let BoundShader::Shader(s, sm) = self.shader { - if s == shader && sm == mode { - return; - } - } + if let BoundShader::Shader(s, sm) = self.shader && s == shader && sm == mode { return } match mode { ShaderMode::TwoDimension => st.bind_2d(ctx, self.assets.shader(shader)), ShaderMode::ThreeDimension => st.bind_3d(ctx, self.assets.shader(shader)), @@ -212,16 +204,20 @@ impl<A: Assets> Renderer<A> { pub fn set_mat4(&self, ctx: &context::Context, _st: &state::State, nm: &str, val: glam::Mat4) { if let Some((s, _)) = self.shader() { s.set_mat4(ctx, nm, &val) } } - pub fn set_texture_offset(&self, ctx: &context::Context, st: &state::State, inc: i32, x: i32, y: i32) { - let count = inc as f32; - let ratio = 1.0 / count; + pub fn set_texture_offset(&self, + ctx: &context::Context, st: &state::State, + xinc: i32, yinc: i32, + x: i32, y: i32 + ) { + let xcount = xinc as f32; let xratio = 1.0 / xcount; + let ycount = yinc as f32; let yratio = 1.0 / ycount; self.set_vec2( ctx, st, "sprite_dims", - glam::Vec2::new(ratio, ratio), + glam::Vec2::new(xratio, yratio), ); self.set_vec2( ctx, st, "sprite_offset", - glam::Vec2::new((x % inc) as f32 * ratio, (y % inc) as f32 * ratio), + glam::Vec2::new((x % xinc) as f32 * xratio, (y % yinc) as f32 * yratio), ); } |
