diff options
author | Clément Foucault <foucault.clem@gmail.com> | 2018-02-07 07:26:56 +0300 |
---|---|---|
committer | Clément Foucault <foucault.clem@gmail.com> | 2018-02-07 07:44:05 +0300 |
commit | 708ef19d8857d3a4edf0f60cb2a46b713e28ae6c (patch) | |
tree | 5d4236d2ea7e5dcb109436a17306444469907aea /source/blender | |
parent | 17577c53c672dcc8d5493324c4bcb970db455f2a (diff) |
GPU: Remove Mesa + Vega hack.
This is not needed anymore with linux 4.15 + Mesa 17.3.3.
Diffstat (limited to 'source/blender')
-rw-r--r-- | source/blender/draw/engines/eevee/eevee_bloom.c | 20 | ||||
-rw-r--r-- | source/blender/gpu/GPU_extensions.h | 1 | ||||
-rw-r--r-- | source/blender/gpu/intern/gpu_extensions.c | 8 | ||||
-rw-r--r-- | source/blender/gpu/intern/gpu_framebuffer.c | 15 |
4 files changed, 7 insertions, 37 deletions
diff --git a/source/blender/draw/engines/eevee/eevee_bloom.c b/source/blender/draw/engines/eevee/eevee_bloom.c index 63c030a574f..1b015a51f6a 100644 --- a/source/blender/draw/engines/eevee/eevee_bloom.c +++ b/source/blender/draw/engines/eevee/eevee_bloom.c @@ -145,14 +145,8 @@ int EEVEE_bloom_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) for (int i = 0; i < effects->bloom_iteration_ct; ++i) { texsize[0] /= 2; texsize[1] /= 2; - if (GPU_type_matches(GPU_DEVICE_AMD_VEGA, GPU_OS_UNIX, GPU_DRIVER_OPENSOURCE)) { - texsize[0] = MAX2(texsize[0], 17); - texsize[1] = MAX2(texsize[1], 17); - } - else { - texsize[0] = MAX2(texsize[0], 2); - texsize[1] = MAX2(texsize[1], 2); - } + texsize[0] = MAX2(texsize[0], 2); + texsize[1] = MAX2(texsize[1], 2); effects->downsamp_texel_size[i][0] = 1.0f / (float)texsize[0]; effects->downsamp_texel_size[i][1] = 1.0f / (float)texsize[1]; @@ -168,14 +162,8 @@ int EEVEE_bloom_init(EEVEE_ViewLayerData *UNUSED(sldata), EEVEE_Data *vedata) for (int i = 0; i < effects->bloom_iteration_ct - 1; ++i) { texsize[0] /= 2; texsize[1] /= 2; - if (GPU_type_matches(GPU_DEVICE_AMD_VEGA, GPU_OS_UNIX, GPU_DRIVER_OPENSOURCE)) { - texsize[0] = MAX2(texsize[0], 17); - texsize[1] = MAX2(texsize[1], 17); - } - else { - texsize[0] = MAX2(texsize[0], 2); - texsize[1] = MAX2(texsize[1], 2); - } + texsize[0] = MAX2(texsize[0], 2); + texsize[1] = MAX2(texsize[1], 2); DRWFboTexture tex_bloom = {&txl->bloom_upsample[i], DRW_TEX_RGB_11_11_10, DRW_TEX_FILTER}; DRW_framebuffer_init(&fbl->bloom_accum_fb[i], &draw_engine_eevee_type, diff --git a/source/blender/gpu/GPU_extensions.h b/source/blender/gpu/GPU_extensions.h index d860431b04f..d36b0ea15be 100644 --- a/source/blender/gpu/GPU_extensions.h +++ b/source/blender/gpu/GPU_extensions.h @@ -64,7 +64,6 @@ typedef enum GPUDeviceType { GPU_DEVICE_INTEL = (1 << 2), GPU_DEVICE_SOFTWARE = (1 << 3), GPU_DEVICE_UNKNOWN = (1 << 4), - GPU_DEVICE_AMD_VEGA = (1 << 5), GPU_DEVICE_ANY = (0xff) } GPUDeviceType; diff --git a/source/blender/gpu/intern/gpu_extensions.c b/source/blender/gpu/intern/gpu_extensions.c index 57df877bf18..6bf330179d3 100644 --- a/source/blender/gpu/intern/gpu_extensions.c +++ b/source/blender/gpu/intern/gpu_extensions.c @@ -178,14 +178,6 @@ void gpu_extensions_init(void) GG.device = GPU_DEVICE_ATI; GG.driver = GPU_DRIVER_OFFICIAL; } - /* XXX : TODO : Remove this once this sampling mipmap problem is gone. - * https://github.com/dfelinto/opengl-sandbox/blob/downsample/README.md */ - else if (strstr(renderer, "AMD VEGA") && - strstr(vendor, "X.Org")) - { - GG.device = GPU_DEVICE_AMD_VEGA; - GG.driver = GPU_DRIVER_OPENSOURCE; - } else if (strstr(vendor, "NVIDIA")) { GG.device = GPU_DEVICE_NVIDIA; GG.driver = GPU_DRIVER_OFFICIAL; diff --git a/source/blender/gpu/intern/gpu_framebuffer.c b/source/blender/gpu/intern/gpu_framebuffer.c index 09013cd29bd..7b1f5c80246 100644 --- a/source/blender/gpu/intern/gpu_framebuffer.c +++ b/source/blender/gpu/intern/gpu_framebuffer.c @@ -602,18 +602,9 @@ void GPU_framebuffer_recursive_downsample( current_dim[0] /= 2; current_dim[1] /= 2; - if (GPU_type_matches(GPU_DEVICE_AMD_VEGA, GPU_OS_UNIX, GPU_DRIVER_OPENSOURCE)) { - /* NOTE : here 16 is because of a bug on AMD Vega GPU + non-pro drivers, that prevents us - * from sampling mipmaps that are smaller or equal to 16px. (9) */ - if (current_dim[0] <= 16 && current_dim[1] <= 16) { - break; - } - } - else { - if (current_dim[0] <= 2 && current_dim[1] <= 2) { - /* Cannot reduce further. */ - break; - } + if (current_dim[0] <= 2 && current_dim[1] <= 2) { + /* Cannot reduce further. */ + break; } /* ensure that the viewport size is always at least 1x1 */ |