[retro-gtk/wip/aplazas/gl-display-2] Test define texture row length
- From: Adrien Plazas <aplazas src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [retro-gtk/wip/aplazas/gl-display-2] Test define texture row length
- Date: Sat, 18 Nov 2017 12:53:38 +0000 (UTC)
commit 1d0c7b4ce1cd5adc989523dd2ad637a8db0b8006
Author: Adrien Plazas <kekun plazas laposte net>
Date: Sat Nov 18 13:53:16 2017 +0100
Test define texture row length
retro-gtk/retro-pixdata.c | 6 +++++-
1 files changed, 5 insertions(+), 1 deletions(-)
---
diff --git a/retro-gtk/retro-pixdata.c b/retro-gtk/retro-pixdata.c
index e7e277d..8d60c85 100644
--- a/retro-gtk/retro-pixdata.c
+++ b/retro-gtk/retro-pixdata.c
@@ -367,6 +367,7 @@ retro_pixdata_load_gl_texture (RetroPixdata *self)
{
GLenum format;
GLenum type;
+ gint pixel_size;
g_return_val_if_fail (self != NULL, FALSE);
@@ -375,25 +376,28 @@ retro_pixdata_load_gl_texture (RetroPixdata *self)
g_message ("XRGB1555 stride %llux%llu stride %llu", self->width, self->height, self->rowstride);
format = GL_BGRA;
type = GL_UNSIGNED_SHORT_5_5_5_1;
+ pixel_size = 2;
break;
case RETRO_PIXEL_FORMAT_XRGB8888:
g_message ("XRGB8888 %llux%llu stride %llu", self->width, self->height, self->rowstride);
format = GL_BGRA;
type = GL_UNSIGNED_BYTE;
+ pixel_size = 4;
break;
case RETRO_PIXEL_FORMAT_RGB565:
g_message ("RGB565 stride %llux%llu stride %llu", self->width, self->height, self->rowstride);
format = GL_RGB;
type = GL_UNSIGNED_SHORT_5_6_5;
+ pixel_size = 2;
break;
default:
return FALSE;
}
- glPixelStorei (GL_PACK_ROW_LENGTH, self->rowstride);
+ glPixelStorei (GL_UNPACK_ROW_LENGTH, self->rowstride / pixel_size);
glTexImage2D (GL_TEXTURE_2D,
0,
GL_RGB,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]