diff options
Diffstat (limited to 'source/blender/gpu/intern/gpu_init_exit.c')
-rw-r--r-- | source/blender/gpu/intern/gpu_init_exit.c | 26 |
1 files changed, 25 insertions, 1 deletions
diff --git a/source/blender/gpu/intern/gpu_init_exit.c b/source/blender/gpu/intern/gpu_init_exit.c index c72c83b6b07..78d4f491b66 100644 --- a/source/blender/gpu/intern/gpu_init_exit.c +++ b/source/blender/gpu/intern/gpu_init_exit.c @@ -30,8 +30,11 @@ */ #include "BLI_sys_types.h" +#include "GPU_buffers.h" #include "GPU_init_exit.h" /* interface */ - +#include "GPU_immediate.h" +#include "GPU_batch.h" +#include "GPU_texture.h" #include "BKE_global.h" #include "intern/gpu_codegen.h" @@ -54,19 +57,40 @@ void GPU_init(void) gpu_extensions_init(); /* must come first */ + GPU_texture_orphans_init(); + GPU_material_orphans_init(); gpu_codegen_init(); + gpu_framebuffer_module_init(); if (G.debug & G_DEBUG_GPU) gpu_debug_init(); + gpu_batch_init(); + + if (!G.background) { + immInit(); + } + + GPU_pbvh_fix_linking(); } void GPU_exit(void) { + if (!G.background) { + immDestroy(); + } + + gpu_batch_exit(); + + GPU_texture_orphans_exit(); + GPU_material_orphans_exit(); + if (G.debug & G_DEBUG_GPU) gpu_debug_exit(); + + gpu_framebuffer_module_exit(); gpu_codegen_exit(); gpu_extensions_exit(); /* must come last */ |