diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2020-07-26 21:17:01 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2020-07-26 22:07:25 +0300 |
commit | 487eaeed7e3da6bbadc7899062574ef9b62ab7e4 (patch) | |
tree | c90cd601f1a4169ecdfb1e24a7a5a0c9a0ad827e /source/blender/gpu/intern/gpu_texture.c | |
parent | 025dc31d28446039f949d8c12359c64c90530bee (diff) |
GPUTexture: Replace GL textarget enum by Image enum
Diffstat (limited to 'source/blender/gpu/intern/gpu_texture.c')
-rw-r--r-- | source/blender/gpu/intern/gpu_texture.c | 15 |
1 files changed, 14 insertions, 1 deletions
diff --git a/source/blender/gpu/intern/gpu_texture.c b/source/blender/gpu/intern/gpu_texture.c index 4456229c1ee..2eac3c6f64d 100644 --- a/source/blender/gpu/intern/gpu_texture.c +++ b/source/blender/gpu/intern/gpu_texture.c @@ -1186,8 +1186,21 @@ GPUTexture *GPU_texture_create_buffer(eGPUTextureFormat tex_format, const GLuint return tex; } -GPUTexture *GPU_texture_from_bindcode(int textarget, int bindcode) +static GLenum convert_target_to_gl(int target) { + static const GLenum table[] = { + [TEXTARGET_TEXTURE_2D] = GL_TEXTURE_2D, + [TEXTARGET_TEXTURE_CUBE_MAP] = GL_TEXTURE_CUBE_MAP, + [TEXTARGET_TEXTURE_2D_ARRAY] = GL_TEXTURE_2D_ARRAY, + [TEXTARGET_TEXTURE_TILE_MAPPING] = GL_TEXTURE_1D_ARRAY, + }; + return table[target]; +} + +GPUTexture *GPU_texture_from_bindcode(int target, int bindcode) +{ + GLenum textarget = convert_target_to_gl(target); + GPUTexture *tex = MEM_callocN(sizeof(GPUTexture), "GPUTexture"); tex->bindcode = bindcode; tex->refcount = 1; |