diff options
Diffstat (limited to 'src/render/gl.cpp')
| -rw-r--r-- | src/render/gl.cpp | 17 |
1 files changed, 6 insertions, 11 deletions
diff --git a/src/render/gl.cpp b/src/render/gl.cpp index 382d81e..e44a165 100644 --- a/src/render/gl.cpp +++ b/src/render/gl.cpp @@ -276,7 +276,7 @@ GL_TEX2D* gl_texture_from_file( GL_DATA* gl, const char* name ) { return tex; } -GL_TEX2D* gl_texture_from_bitmap( GL_DATA* gl, const char* name, U8* bitmap, U32 width, U32 height ) { +GL_TEX2D* gl_texture_from_bitmap( GL_DATA* gl, const char* name, U8* bitmap, U32 w, U32 h ) { GL_TEX2D* tex = gl_texture_create( gl, name ); glBindTexture( GL_TEXTURE_2D, tex->id ); glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT ); @@ -284,18 +284,13 @@ GL_TEX2D* gl_texture_from_bitmap( GL_DATA* gl, const char* name, U8* bitmap, U32 glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR ); glTexParameteri( GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR ); - tex->width = width; - tex->height = height; - - glTexImage2D( - GL_TEXTURE_2D, - 0, GL_RGBA, - (I32)width, (I32)height, 0, - GL_RGBA, GL_UNSIGNED_BYTE, bitmap - ); - + glTexImage2D( GL_TEXTURE_2D, 0, GL_RGBA, w, h, 0, GL_RGBA, GL_UNSIGNED_BYTE, bitmap ); + glGenerateMipmap( GL_TEXTURE_2D ); glBindTexture( GL_TEXTURE_2D, 0 ); + tex->width = w; + tex->height = h; + return tex; } |
