summaryrefslogtreecommitdiffhomepage
path: root/src/rlgl.c
diff options
context:
space:
mode:
authorraysan5 <[email protected]>2016-10-27 13:40:48 +0200
committerraysan5 <[email protected]>2016-10-27 13:40:48 +0200
commit4ff98f34bbc3233f5eca61dfe07c2336c52918ce (patch)
tree4f230a241559b0e3bf1ac9eec9b16610babd1e04 /src/rlgl.c
parent5c80f650827337af8054446b21424d39349606d9 (diff)
downloadraylib-4ff98f34bbc3233f5eca61dfe07c2336c52918ce.tar.gz
raylib-4ff98f34bbc3233f5eca61dfe07c2336c52918ce.zip
Function to set texture parameters -IN PROGRESS-
Diffstat (limited to 'src/rlgl.c')
-rw-r--r--src/rlgl.c42
1 files changed, 42 insertions, 0 deletions
diff --git a/src/rlgl.c b/src/rlgl.c
index 80687958..0a7e3583 100644
--- a/src/rlgl.c
+++ b/src/rlgl.c
@@ -871,6 +871,48 @@ void rlDisableTexture(void)
#endif
}
+// Set texture parameters
+// TODO: Review this function to choose right filter/wrap value
+void rlTextureParameters(unsigned int id, int param, int value)
+{
+/*
+// TextureWrapMode
+#define GL_REPEAT 0x2901
+#define GL_CLAMP_TO_EDGE 0x812F
+
+// TextureMagFilter
+#define GL_NEAREST 0x2600
+#define GL_LINEAR 0x2601
+
+// TextureMinFilter
+#define GL_NEAREST 0x2600
+#define GL_LINEAR 0x2601
+#define GL_NEAREST_MIPMAP_NEAREST 0x2700
+#define GL_LINEAR_MIPMAP_NEAREST 0x2701
+#define GL_NEAREST_MIPMAP_LINEAR 0x2702
+#define GL_LINEAR_MIPMAP_LINEAR 0x2703
+*/
+
+ int glValue = 0;
+
+ glBindTexture(GL_TEXTURE_2D, id);
+
+ switch (value)
+ {
+ case FILTER_POINT: glValue = GL_NEAREST; break;
+ case FILTER_BILINEAR: glValue = GL_LINEAR; break;
+ case FILTER_TRILINEAR: glValue = GL_LINEAR; break;
+ //case WRAP_REPEAT: glValue = GL_REPEAT; break;
+ //case WRAP_CLAMP: glValue = GL_CLAMP_TO_EDGE; break;
+ //case WRAP_MIRROR: glValue = GL_NEAREST; break;
+ default: break;
+ }
+
+ glTexParameteri(GL_TEXTURE_2D, param, glValue);
+
+ glBindTexture(GL_TEXTURE_2D, 0);
+}
+
// Enable rendering to texture (fbo)
void rlEnableRenderTexture(unsigned int id)
{