X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;ds=sidebyside;f=resource_pool.cpp;h=6939fe01d50a61131d4357858c6d82a4d9361da2;hb=7f403a37735095a865eff62e29d674d05054cad3;hp=944910bde3829320abcbdd859b861c3995b3da4f;hpb=825c90789c229f502520bf0b665596d473f2636d;p=movit diff --git a/resource_pool.cpp b/resource_pool.cpp index 944910b..6939fe0 100644 --- a/resource_pool.cpp +++ b/resource_pool.cpp @@ -236,14 +236,18 @@ GLuint ResourcePool::create_2d_texture(GLint internal_format, GLsizei width, GLs case GL_RGBA32F_ARB: case GL_RGBA16F_ARB: case GL_RGBA8: + case GL_RGB10_A2: case GL_SRGB8_ALPHA8: format = GL_RGBA; break; case GL_RGB32F: case GL_RGB16F: + case GL_R11F_G11F_B10F: case GL_RGB8: + case GL_RGB10: case GL_SRGB8: case GL_RGB565: + case GL_RGB9_E5: format = GL_RGB; break; case GL_RG32F: @@ -268,6 +272,8 @@ GLuint ResourcePool::create_2d_texture(GLint internal_format, GLsizei width, GLs case GL_RGBA16F_ARB: case GL_RGB32F: case GL_RGB16F: + case GL_R11F_G11F_B10F: + case GL_RGB9_E5: case GL_RG32F: case GL_RG16F: case GL_R32F: @@ -278,6 +284,8 @@ GLuint ResourcePool::create_2d_texture(GLint internal_format, GLsizei width, GLs case GL_SRGB8: case GL_RGBA8: case GL_RGB8: + case GL_RGB10_A2: + case GL_RGB10: case GL_RG8: case GL_R8: type = GL_UNSIGNED_BYTE; @@ -501,8 +509,16 @@ size_t ResourcePool::estimate_texture_size(const Texture2D &texture_format) case GL_RGB16F_ARB: bytes_per_pixel = 6; break; + case GL_R11F_G11F_B10F: + bytes_per_pixel = 4; + break; + case GL_RGB9_E5: + bytes_per_pixel = 4; + break; case GL_RGBA8: case GL_SRGB8_ALPHA8: + case GL_RGB10_A2: + case GL_RGB10: bytes_per_pixel = 4; break; case GL_RGB8: