[Bf-blender-cvs] [7799374520e] soc-2019-npr: LANPR: Fixed modifier read pointer error by providing foreachObjectLink() callback.
YimingWu
noreply at git.blender.org
Sun Jun 23 12:02:41 CEST 2019
Commit: 7799374520e1179d9b3614f4e5486da23bb52a73
Author: YimingWu
Date: Sun Jun 23 16:11:21 2019 +0800
Branches: soc-2019-npr
https://developer.blender.org/rB7799374520e1179d9b3614f4e5486da23bb52a73
LANPR: Fixed modifier read pointer error by providing foreachObjectLink() callback.
===================================================================
M source/blender/blenloader/intern/readfile.c
M source/blender/draw/engines/lanpr/lanpr_ops.c
M source/blender/makesrna/intern/rna_modifier.c
M source/blender/modifiers/intern/MOD_featureline.c
===================================================================
diff --git a/source/blender/blenloader/intern/readfile.c b/source/blender/blenloader/intern/readfile.c
index f49f69f1aba..f08e789b695 100644
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@ -5798,6 +5798,11 @@ static void direct_link_modifiers(FileData *fd, ListBase *lb)
}
}
}
+ else if (md->type == eModifierType_FeatureLine) {
+ FeatureLineModifierData *flmd= (FeatureLineModifierData *)md;
+
+ //flmd->target = newdataadr(fd, flmd->target);
+ }
}
}
diff --git a/source/blender/draw/engines/lanpr/lanpr_ops.c b/source/blender/draw/engines/lanpr/lanpr_ops.c
index 79e675d67d0..16248a8e8c1 100644
--- a/source/blender/draw/engines/lanpr/lanpr_ops.c
+++ b/source/blender/draw/engines/lanpr/lanpr_ops.c
@@ -4040,8 +4040,8 @@ int lanpr_compute_feature_lines_internal(Depsgraph *depsgraph)
if (lanpr->enable_chaining) {
lanpr_NO_THREAD_chain_feature_lines(rb); // should use user_adjustable value
- //lanpr_split_chains_for_fixed_occlusion(rb);
- //anpr_connect_chains_image_space(rb);
+ lanpr_split_chains_for_fixed_occlusion(rb);
+ lanpr_connect_chains_image_space(rb);
}
rb->cached_for_frame = rb->scene->r.cfra;
diff --git a/source/blender/makesrna/intern/rna_modifier.c b/source/blender/makesrna/intern/rna_modifier.c
index ac51cd23820..d4733b33fe1 100644
--- a/source/blender/makesrna/intern/rna_modifier.c
+++ b/source/blender/makesrna/intern/rna_modifier.c
@@ -6049,6 +6049,7 @@ static void rna_def_modifier_featureline(BlenderRNA *brna)
RNA_def_property_update(prop, 0, "rna_Modifier_update");
prop = RNA_def_property(srna, "target", PROP_POINTER, PROP_NONE);
+ RNA_def_property_pointer_sdna(prop, NULL, "target");
RNA_def_property_ui_text(prop, "Target", "GPencil object to put the stroke result");
RNA_def_property_flag(prop, PROP_EDITABLE | PROP_ID_SELF_CHECK);
RNA_def_property_update(prop, 0, "rna_Modifier_dependency_update");
diff --git a/source/blender/modifiers/intern/MOD_featureline.c b/source/blender/modifiers/intern/MOD_featureline.c
index 9377f55ab49..a0270aca8ef 100644
--- a/source/blender/modifiers/intern/MOD_featureline.c
+++ b/source/blender/modifiers/intern/MOD_featureline.c
@@ -40,6 +40,7 @@
#include "BKE_modifier.h"
#include "BKE_particle.h"
#include "BKE_scene.h"
+#include "BKE_library_query.h"
#include "DEG_depsgraph_query.h"
@@ -87,6 +88,13 @@ static Mesh *applyModifier(ModifierData *md, const ModifierEvalContext *ctx, Mes
return mesh;
}
+static void foreachObjectLink(ModifierData *md, Object *ob, ObjectWalkFunc walk, void *userData)
+{
+ FeatureLineModifierData *flmd = (FeatureLineModifierData *)md;
+
+ walk(userData, ob, &flmd->target, IDWALK_NOP);
+}
+
ModifierTypeInfo modifierType_FeatureLine = {
/* name */ "Feature Line",
/* structName */ "FeatureLineModifierData",
@@ -108,7 +116,7 @@ ModifierTypeInfo modifierType_FeatureLine = {
/* updateDepsgraph */ NULL,
/* dependsOnTime */ dependsOnTime,
/* dependsOnNormals */ NULL,
- /* foreachObjectLink */ NULL,
+ /* foreachObjectLink */ foreachObjectLink,
/* foreachIDLink */ NULL,
/* foreachTexLink */ NULL,
/* freeRuntimeData */ NULL,
More information about the Bf-blender-cvs
mailing list