diff options
| author | LLLL Colonq <llll@colonq> | 2024-04-13 20:34:28 -0400 |
|---|---|---|
| committer | LLLL Colonq <llll@colonq> | 2024-04-13 20:34:28 -0400 |
| commit | f0b945d378a157a780f56b1fc015b7937e151852 (patch) | |
| tree | 3caddd259ad14a225cd3984726b3d44bac8b6d4a /src/texture.rs | |
| parent | 17eb85df48b64dd9d391cad28f58355e05ed2855 (diff) | |
Bugfixes, texture filtering
Diffstat (limited to 'src/texture.rs')
| -rw-r--r-- | src/texture.rs | 16 |
1 files changed, 13 insertions, 3 deletions
diff --git a/src/texture.rs b/src/texture.rs index 2da2247..6e46d58 100644 --- a/src/texture.rs +++ b/src/texture.rs @@ -42,11 +42,14 @@ impl Texture { } } - pub fn set_linear_filtering(&self, ctx: &context::Context) { + pub fn set_anisotropic_filtering(&self, ctx: &context::Context) { unsafe { ctx.gl.bind_texture(glow::TEXTURE_2D, Some(self.tex)); - ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_MIN_FILTER, glow::NEAREST_MIPMAP_NEAREST as i32); - ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_MAG_FILTER, glow::NEAREST_MIPMAP_NEAREST as i32); + ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_WRAP_S, glow::REPEAT as i32); + ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_WRAP_T, glow::REPEAT as i32); + ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_MIN_FILTER, glow::LINEAR_MIPMAP_LINEAR as i32); + ctx.gl.tex_parameter_i32(glow::TEXTURE_2D, glow::TEXTURE_MAG_FILTER, glow::LINEAR as i32); + ctx.gl.tex_parameter_f32(glow::TEXTURE_2D, glow::TEXTURE_MAX_ANISOTROPY_EXT, 4.0); } } @@ -56,4 +59,11 @@ impl Texture { ctx.gl.bind_texture(glow::TEXTURE_2D, Some(self.tex)); } } + + pub fn bind_normal(&self, ctx: &context::Context) { + unsafe { + ctx.gl.active_texture(glow::TEXTURE1); + ctx.gl.bind_texture(glow::TEXTURE_2D, Some(self.tex)); + } + } } |
