summaryrefslogtreecommitdiffstats
path: root/Smoke/renderer_gl.c
diff options
context:
space:
mode:
Diffstat (limited to 'Smoke/renderer_gl.c')
-rw-r--r--Smoke/renderer_gl.c33
1 files changed, 32 insertions, 1 deletions
diff --git a/Smoke/renderer_gl.c b/Smoke/renderer_gl.c
index 0f91404..9bbd754 100644
--- a/Smoke/renderer_gl.c
+++ b/Smoke/renderer_gl.c
@@ -62,7 +62,37 @@ static int grid_cell_size = 50;
-void renderer_load_texture(char *filename)
+void renderer_load_raw_texture(char *filename)
+{
+ FILE *bitmap;
+
+
+ bitmap = fopen(filename, "rb");
+ if (bitmap > 0) {
+ unsigned int filesize;
+ GLsizei width, height;
+ unsigned char *imagedata;
+
+ fseek(bitmap, 0, SEEK_END);
+ filesize = ftell(bitmap);
+ imagedata = (unsigned char *)malloc((size_t)(filesize) /* *(char *) */);
+
+ fseek(bitmap, 0, SEEK_SET);
+ fread(imagedata, (size_t)(filesize), 1, bitmap);
+
+ glGenTextures(1, &texture);
+ glBindTexture(GL_TEXTURE_2D, texture);
+ gluBuild2DMipmaps(GL_TEXTURE_2D, GL_RGBA, 120, 120, GL_RGBA, GL_UNSIGNED_BYTE, imagedata);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
+ glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
+
+ free(imagedata);
+ fclose(bitmap);
+ }
+}
+
+
+void renderer_load_bmp_texture(char *filename)
{
FILE *bitmap;
@@ -251,6 +281,7 @@ static void render_normals(void)
glDisable(GL_LIGHTING);
glBegin(GL_LINES);
glColor3f(0.2f, 1.0f, 0.0f);
+ glLineWidth(1.0f);
for (j = 0; j < DIM - 1; j++)
{