diff options
author | Lukas Stockner <lukas.stockner@freenet.de> | 2020-02-13 03:29:30 +0300 |
---|---|---|
committer | Lukas Stockner <lukas.stockner@freenet.de> | 2020-02-14 02:33:50 +0300 |
commit | 4af74f453d4e41129626f7578c55ac9927f6d02a (patch) | |
tree | 3282c0e74e96d3d155e87618f4dfb3ca2157d5b9 /source/blender/render | |
parent | b6572c5430c570130c6f6aec92522fdf9df6365a (diff) |
Freestyle: Add option for rendering Freestyle to a separate pass
This allows for more flexibility in Compositing compared to the
hardcoded alpha-over that is currently used.
Reviewed By: brecht
Differential Revision: https://developer.blender.org/D6829
Diffstat (limited to 'source/blender/render')
4 files changed, 16 insertions, 16 deletions
diff --git a/source/blender/render/extern/include/RE_pipeline.h b/source/blender/render/extern/include/RE_pipeline.h index dc18bac541f..40984b6d3b2 100644 --- a/source/blender/render/extern/include/RE_pipeline.h +++ b/source/blender/render/extern/include/RE_pipeline.h @@ -228,6 +228,13 @@ struct RenderPass *RE_create_gp_pass(struct RenderResult *rr, const char *layername, const char *viewname); +void RE_create_render_pass(struct RenderResult *rr, + const char *name, + int channels, + const char *chan_id, + const char *layername, + const char *viewname); + /* obligatory initialize call, disprect is optional */ void RE_InitState(struct Render *re, struct Render *source, diff --git a/source/blender/render/intern/include/render_result.h b/source/blender/render/intern/include/render_result.h index 24356194f5d..3c089335115 100644 --- a/source/blender/render/intern/include/render_result.h +++ b/source/blender/render/intern/include/render_result.h @@ -66,12 +66,6 @@ void render_result_merge(struct RenderResult *rr, struct RenderResult *rrpart); /* Add Passes */ void render_result_clone_passes(struct Render *re, struct RenderResult *rr, const char *viewname); -void render_result_add_pass(struct RenderResult *rr, - const char *name, - int channels, - const char *chan_id, - const char *layername, - const char *viewname); /* Free */ diff --git a/source/blender/render/intern/source/external_engine.c b/source/blender/render/intern/source/external_engine.c index d3080ebe3ed..90058da5f0c 100644 --- a/source/blender/render/intern/source/external_engine.c +++ b/source/blender/render/intern/source/external_engine.c @@ -258,7 +258,7 @@ void RE_engine_add_pass(RenderEngine *engine, return; } - render_result_add_pass(re->result, name, channels, chan_id, layername, NULL); + RE_create_render_pass(re->result, name, channels, chan_id, layername, NULL); } void RE_engine_end_result( diff --git a/source/blender/render/intern/source/render_result.c b/source/blender/render/intern/source/render_result.c index 0bf03347b80..120787a8d13 100644 --- a/source/blender/render/intern/source/render_result.c +++ b/source/blender/render/intern/source/render_result.c @@ -520,12 +520,12 @@ void render_result_clone_passes(Render *re, RenderResult *rr, const char *viewna } } -void render_result_add_pass(RenderResult *rr, - const char *name, - int channels, - const char *chan_id, - const char *layername, - const char *viewname) +void RE_create_render_pass(RenderResult *rr, + const char *name, + int channels, + const char *chan_id, + const char *layername, + const char *viewname) { RenderLayer *rl; RenderPass *rp; @@ -1234,7 +1234,7 @@ void render_result_exr_file_begin(Render *re, RenderEngine *engine) * mutex locked to avoid deadlock with Python GIL. */ BLI_rw_mutex_lock(&re->resultmutex, THREAD_LOCK_WRITE); for (RenderPass *pass = templates.first; pass; pass = pass->next) { - render_result_add_pass( + RE_create_render_pass( re->result, pass->name, pass->channels, pass->chan_id, rl->name, NULL); } BLI_rw_mutex_unlock(&re->resultmutex); @@ -1277,8 +1277,7 @@ void render_result_exr_file_end(Render *re, RenderEngine *engine) * mutex locked to avoid deadlock with Python GIL. */ BLI_rw_mutex_lock(&re->resultmutex, THREAD_LOCK_WRITE); for (RenderPass *pass = templates.first; pass; pass = pass->next) { - render_result_add_pass( - re->result, pass->name, pass->channels, pass->chan_id, rl->name, NULL); + RE_create_render_pass(re->result, pass->name, pass->channels, pass->chan_id, rl->name, NULL); } BLI_freelistN(&templates); |