Commit: 30780a4238f7254ab035737b1a42f3661b82e2c4
Author: Joshua Leung
Date: Tue Oct 31 17:29:25 2017 +1300
Branches: greasepencil-object
https://developer.blender.org/rB30780a4238f7254ab035737b1a42f3661b82e2c4
GP Modifier: Set up stubs for geometry modifiers too
===================================================================
M source/blender/blenkernel/intern/gpencil_modifier.c
===================================================================
diff --git a/source/blender/blenkernel/intern/gpencil_modifier.c
b/source/blender/blenkernel/intern/gpencil_modifier.c
index cb70a8212bc..f2afcee7134 100644
--- a/source/blender/blenkernel/intern/gpencil_modifier.c
+++ b/source/blender/blenkernel/intern/gpencil_modifier.c
@@ -764,6 +764,13 @@ bool BKE_gpencil_has_geometry_modifiers(Object *ob)
{
ModifierData *md;
for (md = ob->modifiers.first; md; md = md->next) {
+ const ModifierTypeInfo *mti = modifierType_getInfo(md->type);
+
+ if (mti->generateStrokes) {
+ return true;
+ }
+
+ // XXX: Remove
if (md->type == eModifierType_GpencilDupli) {
return true;
}
@@ -778,7 +785,7 @@ void BKE_gpencil_stroke_modifiers(Object *ob, bGPDlayer
*gpl, bGPDframe *UNUSED(
bGPdata *gpd = ob->data;
bool is_edit = GPENCIL_ANY_EDIT_MODE(gpd);
- int id = 0;
+ int id = 0; // XXX: Remove
for (md = ob->modifiers.first; md; md = md->next) {
if (((md->mode & eModifierMode_Realtime) && ((G.f &
G_RENDER_OGL) == 0)) ||
((md->mode & eModifierMode_Render) && (G.f & G_RENDER_OGL)))
@@ -842,10 +849,18 @@ void BKE_gpencil_geometry_modifiers(Object *ob, bGPDlayer
*gpl, bGPDframe *gpf)
if (((md->mode & eModifierMode_Realtime) && ((G.f &
G_RENDER_OGL) == 0)) ||
((md->mode & eModifierMode_Render) && (G.f & G_RENDER_OGL)))
{
+ const ModifierTypeInfo *mti =
modifierType_getInfo(md->type);
+
if (((md->mode & eModifierMode_Editmode) == 0) &&
(is_edit)) {
continue;
}
+ if (mti->generateStrokes) {
+ EvaluationContext eval_ctx = {0}; /* XXX */
+ mti->generateStrokes(md, &eval_ctx, ob, gpl,
gpf, id);
+ }
+
+ // XXX: The following lines need to all be converted to
modifier callbacks...
switch (md->type) {
// Array
case eModifierType_GpencilDupli:
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
https://lists.blender.org/mailman/listinfo/bf-blender-cvs