[Bf-blender-cvs] [3d13c7ebbc7] lanpr-under-gp: LineArt: Take account of hidden modifiers in render and viewport.
YimingWu
noreply at git.blender.org
Wed Jul 15 07:27:38 CEST 2020
Commit: 3d13c7ebbc7138e7e2b4c633286c8f5b15e40f69
Author: YimingWu
Date: Wed Jul 15 13:27:33 2020 +0800
Branches: lanpr-under-gp
https://developer.blender.org/rB3d13c7ebbc7138e7e2b4c633286c8f5b15e40f69
LineArt: Take account of hidden modifiers in render and viewport.
===================================================================
M source/blender/editors/lineart/lineart_cpu.c
===================================================================
diff --git a/source/blender/editors/lineart/lineart_cpu.c b/source/blender/editors/lineart/lineart_cpu.c
index 5d5a041c4f1..530668fdb17 100644
--- a/source/blender/editors/lineart/lineart_cpu.c
+++ b/source/blender/editors/lineart/lineart_cpu.c
@@ -2464,6 +2464,7 @@ static int lineart_get_max_occlusion_level(Depsgraph *dg)
LineartGpencilModifierData *lmd;
int max_occ = 0;
int max;
+ int mode = DEG_get_mode(dg);
DEG_OBJECT_ITER_BEGIN (dg,
ob,
@@ -2472,6 +2473,16 @@ static int lineart_get_max_occlusion_level(Depsgraph *dg)
if (ob->type == OB_GPENCIL) {
LISTBASE_FOREACH (GpencilModifierData *, md, &ob->greasepencil_modifiers) {
if (md->type == eGpencilModifierType_Lineart) {
+ if (mode == DAG_EVAL_RENDER) {
+ if (!(md->flag & eGpencilModifierMode_Render)) {
+ continue;
+ }
+ }
+ else {
+ if (!(md->flag & eGpencilModifierMode_Realtime)) {
+ continue;
+ }
+ }
lmd = (LineartGpencilModifierData *)md;
max = MAX2(lmd->level_start, lmd->level_end);
max_occ = MAX2(max, max_occ);
@@ -3462,6 +3473,14 @@ int ED_lineart_compute_feature_lines_internal(Depsgraph *depsgraph, const int sh
* Unlock parent thread, it'scene safe to run independently from now. */
BLI_spin_unlock(&lineart_share.lock_loader);
+ if (!rb->vertex_buffer_pointers.first) {
+ /* Nothing loaded, early return. */
+ if (show_frame_progress) {
+ ED_lineart_update_render_progress(100, "LRT: Finished.");
+ }
+ return OPERATOR_FINISHED;
+ }
+
lineart_compute_view_vector(rb);
lineart_cull_triangles(rb);
More information about the Bf-blender-cvs
mailing list