Cleanup: Make Render finalization function more generic

Allows to extend that code more easily.
This commit is contained in:
2019-05-06 17:47:22 +02:00
parent 1bb740f95c
commit 1a57c94c09
2 changed files with 11 additions and 4 deletions

View File

@@ -307,6 +307,9 @@ void RE_RenderFreestyleStrokes(struct Render *re,
void RE_RenderFreestyleExternal(struct Render *re);
#endif
/* Free memory and clear runtime data which is only needed during rendering. */
void RE_CleanAfterRender(struct Render *re);
void RE_SetActiveRenderView(struct Render *re, const char *viewname);
const char *RE_GetActiveRenderView(struct Render *re);

View File

@@ -2126,8 +2126,7 @@ void RE_RenderFrame(Render *re,
BLI_callback_exec(
re->main, (ID *)scene, G.is_break ? BLI_CB_EVT_RENDER_CANCEL : BLI_CB_EVT_RENDER_COMPLETE);
/* Destroy the opengl context in the correct thread. */
RE_gl_context_destroy(re);
RE_CleanAfterRender(re);
/* UGLY WARNING */
G.is_rendering = false;
@@ -2713,8 +2712,7 @@ void RE_RenderAnim(Render *re,
re->main, (ID *)scene, G.is_break ? BLI_CB_EVT_RENDER_CANCEL : BLI_CB_EVT_RENDER_COMPLETE);
BKE_sound_reset_scene_specs(scene);
/* Destroy the opengl context in the correct thread. */
RE_gl_context_destroy(re);
RE_CleanAfterRender(re);
/* UGLY WARNING */
G.is_rendering = false;
@@ -2739,6 +2737,12 @@ void RE_PreviewRender(Render *re, Main *bmain, Scene *sce)
do_render_3d(re);
}
void RE_CleanAfterRender(Render *re)
{
/* Destroy the opengl context in the correct thread. */
RE_gl_context_destroy(re);
}
/* note; repeated win/disprect calc... solve that nicer, also in compo */
/* only the temp file! */