[Bf-blender-cvs] [1686baa7f2b] blender2.8: Fix "GPUTexture: texture alloc failed. Not enough Video Memory." in area resizing

Germano noreply at git.blender.org
Wed Jan 24 01:50:15 CET 2018


Commit: 1686baa7f2b9cd4470d7ec7960f71ce144f13779
Author: Germano
Date:   Tue Jan 23 22:50:05 2018 -0200
Branches: blender2.8
https://developer.blender.org/rB1686baa7f2b9cd4470d7ec7960f71ce144f13779

Fix "GPUTexture: texture alloc failed. Not enough Video Memory." in area resizing

`gpu_texture_try_alloc` invalidates zero-sized textures.
The message in the console is not correct in this case (because it is not due to lack of memory).

===================================================================

M	source/blender/draw/engines/eevee/eevee_effects.c
M	source/blender/draw/intern/draw_manager.c

===================================================================

diff --git a/source/blender/draw/engines/eevee/eevee_effects.c b/source/blender/draw/engines/eevee/eevee_effects.c
index 2065ecabfb6..5821111c59d 100644
--- a/source/blender/draw/engines/eevee/eevee_effects.c
+++ b/source/blender/draw/engines/eevee/eevee_effects.c
@@ -157,7 +157,7 @@ void EEVEE_effects_init(EEVEE_ViewLayerData *sldata, EEVEE_Data *vedata)
 	}
 
 	DRW_framebuffer_init(&fbl->downsample_fb, &draw_engine_eevee_type,
-	                    (int)viewport_size[0] / 2, (int)viewport_size[1] / 2,
+	                    max_ii((int)viewport_size[0] / 2, 1), max_ii((int)viewport_size[1] / 2, 1),
 	                    &texmax, 1);
 
 
diff --git a/source/blender/draw/intern/draw_manager.c b/source/blender/draw/intern/draw_manager.c
index f0b11fadfab..b1718413d4d 100644
--- a/source/blender/draw/intern/draw_manager.c
+++ b/source/blender/draw/intern/draw_manager.c
@@ -2308,6 +2308,7 @@ void DRW_framebuffer_init(
         DRWFboTexture textures[MAX_FBO_TEX], int textures_len)
 {
 	BLI_assert(textures_len <= MAX_FBO_TEX);
+	BLI_assert(width > 0 && height > 0);
 
 	bool create_fb = false;
 	int color_attachment = -1;



More information about the Bf-blender-cvs mailing list