From e53d5fba130f32d04db0a16cc6234a5dc63f9678 Mon Sep 17 00:00:00 2001 From: lisyarus Date: Wed, 23 Sep 2020 21:56:40 +0300 Subject: [PATCH] Add texture_2d wrap options --- libs/gfx/include/psemek/gfx/texture.hpp | 3 +++ libs/gfx/source/texture.cpp | 14 ++++++++++++++ 2 files changed, 17 insertions(+) diff --git a/libs/gfx/include/psemek/gfx/texture.hpp b/libs/gfx/include/psemek/gfx/texture.hpp index 45e5f637..f94b461f 100644 --- a/libs/gfx/include/psemek/gfx/texture.hpp +++ b/libs/gfx/include/psemek/gfx/texture.hpp @@ -107,6 +107,9 @@ namespace psemek::gfx void linear_filter(); void anisotropy(); + void repeat(); + void clamp(); + private: GLuint id_; int width_ = 0; diff --git a/libs/gfx/source/texture.cpp b/libs/gfx/source/texture.cpp index 5c0b4f58..e674a7c3 100644 --- a/libs/gfx/source/texture.cpp +++ b/libs/gfx/source/texture.cpp @@ -108,4 +108,18 @@ namespace psemek::gfx gl::TexParameterf(gl::TEXTURE_2D, gl::TEXTURE_MAX_ANISOTROPY_EXT, *level); } + void texture_2d::repeat() + { + bind(); + gl::TexParameteri(gl::TEXTURE_2D, gl::TEXTURE_WRAP_S, gl::REPEAT); + gl::TexParameteri(gl::TEXTURE_2D, gl::TEXTURE_WRAP_T, gl::REPEAT); + } + + void texture_2d::clamp() + { + bind(); + gl::TexParameteri(gl::TEXTURE_2D, gl::TEXTURE_WRAP_S, gl::CLAMP_TO_EDGE); + gl::TexParameteri(gl::TEXTURE_2D, gl::TEXTURE_WRAP_T, gl::CLAMP_TO_EDGE); + } + }