summaryrefslogtreecommitdiff
path: root/src/video/opengl.h
diff options
context:
space:
mode:
authorMichael Lutz <michi@icosahedron.de>2021-01-16 16:43:42 +0100
committerMichael Lutz <michi@icosahedron.de>2021-02-22 22:16:07 +0100
commit200be7d20cf736db309c70f7eae35268d812f706 (patch)
treea8f018899017f7cddd8c3fdecee478f5d18fb470 /src/video/opengl.h
parent01ef44fa4ff800c03994d904a8eef445f1871b32 (diff)
downloadopenttd-200be7d20cf736db309c70f7eae35268d812f706.tar.xz
Add: [OpenGL] Support for a separate animation buffer that stores the palette values of the screen in addition to the colour buffer.
Diffstat (limited to 'src/video/opengl.h')
-rw-r--r--src/video/opengl.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/video/opengl.h b/src/video/opengl.h
index 1d7404139..a0fd2d2f3 100644
--- a/src/video/opengl.h
+++ b/src/video/opengl.h
@@ -39,6 +39,9 @@ private:
GLuint vbo_quad; ///< Vertex buffer with a fullscreen quad.
GLuint pal_texture; ///< Palette lookup texture.
+ GLuint anim_pbo; ///< Pixel buffer object storing the memory used for the animation buffer.
+ GLuint anim_texture; ///< Texture handle for the animation buffer texture.
+
GLuint remap_program; ///< Shader program for blending and rendering a RGBA + remap texture.
GLint remap_sprite_loc; ///< Uniform location for sprite parameters.
GLint remap_screen_loc; ///< Uniform location for screen size;
@@ -72,7 +75,9 @@ public:
void ClearCursorCache();
void *GetVideoBuffer();
+ uint8 *GetAnimBuffer();
void ReleaseVideoBuffer(const Rect &update_rect);
+ void ReleaseAnimBuffer(const Rect &update_rect);
/* SpriteEncoder */