[Bf-blender-cvs] [c6797b01597] temp-greasepencil-object-stacksplit: Changes after first code review
Antonio Vazquez
noreply at git.blender.org
Wed Jun 20 09:36:37 CEST 2018
Commit: c6797b01597a26fae4f85336f350d6763f4fa00a
Author: Antonio Vazquez
Date: Wed Jun 20 09:36:20 2018 +0200
Branches: temp-greasepencil-object-stacksplit
https://developer.blender.org/rBc6797b01597a26fae4f85336f350d6763f4fa00a
Changes after first code review
===================================================================
M source/blender/blenkernel/BKE_gpencil.h
M source/blender/blenkernel/BKE_gpencil_modifier.h
M source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
M source/blender/editors/include/ED_object.h
M source/blender/editors/object/object_gpencil_modifier.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilhook.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilinstance.c
M source/blender/gpencil_modifiers/intern/MOD_gpencillattice.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilnoise.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciloffset.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilopacity.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsimplify.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsmooth.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilsubdiv.c
M source/blender/gpencil_modifiers/intern/MOD_gpencilthick.c
M source/blender/gpencil_modifiers/intern/MOD_gpenciltint.c
===================================================================
diff --git a/source/blender/blenkernel/BKE_gpencil.h b/source/blender/blenkernel/BKE_gpencil.h
index 85a067f1419..887a7f4f67b 100644
--- a/source/blender/blenkernel/BKE_gpencil.h
+++ b/source/blender/blenkernel/BKE_gpencil.h
@@ -115,10 +115,6 @@ struct bGPDstroke *BKE_gpencil_add_stroke(struct bGPDframe *gpf, int mat_idx, in
#define GPENCIL_ALPHA_OPACITY_THRESH 0.001f
#define GPENCIL_STRENGTH_MIN 0.003f
-#define GPENCIL_MODIFIER_ACTIVE(_md, _is_render) (((_md->mode & eGpencilModifierMode_Realtime) && (_is_render == false)) || \
- ((_md->mode & eGpencilModifierMode_Render) && (_is_render == true)))
-#define GPENCIL_MODIFIER_EDIT(_md, _is_edit) (((_md->mode & eGpencilModifierMode_Editmode) == 0) && (_is_edit))
-
bool gpencil_layer_is_editable(const struct bGPDlayer *gpl);
/* How gpencil_layer_getframe() should behave when there
@@ -163,19 +159,6 @@ void BKE_gpencil_stroke_weights_duplicate(struct bGPDstroke *gps_src, struct bGP
/* GPencil geometry evaluation */
void BKE_gpencil_eval_geometry(struct Depsgraph *depsgraph, struct bGPdata *gpd);
-/* modifiers */
-bool BKE_gpencil_has_geometry_modifiers(struct Object *ob);
-
-void BKE_gpencil_stroke_modifiers(
- struct Depsgraph *depsgraph, struct Object *ob,
- struct bGPDlayer *gpl, struct bGPDframe *gpf, struct bGPDstroke *gps, bool is_render);
-void BKE_gpencil_geometry_modifiers(
- struct Depsgraph *depsgraph, struct Object *ob,
- struct bGPDlayer *gpl, struct bGPDframe *gpf, bool is_render);
-
-void BKE_gpencil_lattice_init(struct Object *ob);
-void BKE_gpencil_lattice_clear(struct Object *ob);
-
/* stroke geometry utilities */
void BKE_gpencil_stroke_normal(const struct bGPDstroke *gps, float r_normal[3]);
void BKE_gpencil_simplify_stroke(struct bGPDstroke *gps, float factor);
diff --git a/source/blender/blenkernel/BKE_gpencil_modifier.h b/source/blender/blenkernel/BKE_gpencil_modifier.h
index 5c686982f63..4c1f97d4fad 100644
--- a/source/blender/blenkernel/BKE_gpencil_modifier.h
+++ b/source/blender/blenkernel/BKE_gpencil_modifier.h
@@ -19,8 +19,8 @@
*
* ***** END GPL LICENSE BLOCK *****
*/
-#ifndef __BKE_GREASEPENCIL_H__
-#define __BKE_GREASEPENCIL_H__
+#ifndef __BKE_GPENCIL_MODIFIER_H__
+#define __BKE_GPENCIL_MODIFIER_H__
/** \file BKE_greasepencil_modifier.h
* \ingroup bke
@@ -49,6 +49,10 @@ struct bGPDframe;
struct bGPDstroke;
struct ModifierUpdateDepsgraphContext;
+#define GPENCIL_MODIFIER_ACTIVE(_md, _is_render) (((_md->mode & eGpencilModifierMode_Realtime) && (_is_render == false)) || \
+ ((_md->mode & eGpencilModifierMode_Render) && (_is_render == true)))
+#define GPENCIL_MODIFIER_EDIT(_md, _is_edit) (((_md->mode & eGpencilModifierMode_Editmode) == 0) && (_is_edit))
+
typedef enum {
/* Should not be used, only for None modifier type */
eGpencilModifierTypeType_None,
@@ -58,10 +62,8 @@ typedef enum {
} GpencilModifierTypeType;
typedef enum {
- eGpencilModifierTypeFlag_AcceptsMesh = (1 << 0),
- eGpencilModifierTypeFlag_AcceptsCVs = (1 << 1),
- eGpencilModifierTypeFlag_SupportsMapping = (1 << 2),
- eGpencilModifierTypeFlag_SupportsEditmode = (1 << 3),
+ eGpencilModifierTypeFlag_SupportsMapping = (1 << 0),
+ eGpencilModifierTypeFlag_SupportsEditmode = (1 << 1),
/* For modifiers that support editmode this determines if the
* modifier should be enabled by default in editmode. This should
@@ -69,21 +71,18 @@ typedef enum {
* also generally used in editmode, otherwise let the user enable
* it by hand.
*/
- eGpencilModifierTypeFlag_EnableInEditmode = (1 << 4),
+ eGpencilModifierTypeFlag_EnableInEditmode = (1 << 2),
/* For modifiers that require original data and so cannot
* be placed after any non-deformative modifier.
*/
- eGpencilModifierTypeFlag_RequiresOriginalData = (1 << 5),
+ eGpencilModifierTypeFlag_RequiresOriginalData = (1 << 3),
/* max one per type */
- eGpencilModifierTypeFlag_Single = (1 << 6),
+ eGpencilModifierTypeFlag_Single = (1 << 4),
- /* Grease pencil modifiers */
- eGpencilModifierTypeFlag_GpencilMod = (1 << 7),
-
/* can't be added manually by user */
- eGpencilModifierTypeFlag_NoUserAdd = (1 << 8),
+ eGpencilModifierTypeFlag_NoUserAdd = (1 << 5),
} GpencilModifierTypeFlag;
/* IMPORTANT! Keep ObjectWalkFunc and IDWalkFunc signatures compatible. */
@@ -192,16 +191,6 @@ typedef struct GpencilModifierTypeInfo {
bool (*dependsOnTime)(struct GpencilModifierData *md);
- /* True when a deform modifier uses normals, the requiredDataMask
- * cant be used here because that refers to a normal layer where as
- * in this case we need to know if the deform modifier uses normals.
- *
- * this is needed because applying 2 deform modifiers will give the
- * second modifier bogus normals.
- * */
- bool (*dependsOnNormals)(struct GpencilModifierData *md);
-
-
/* Should call the given walk function on with a pointer to each Object
* pointer that the modifier data stores. This is used for linking on file
* load and for unlinking objects or forwarding object references.
@@ -248,4 +237,16 @@ struct GpencilModifierData *BKE_gpencil_modifiers_findByName(struct Object *ob,
void BKE_gpencil_modifier_copyData_generic(const struct GpencilModifierData *md_src, struct GpencilModifierData *md_dst);
void BKE_gpencil_modifier_copyData(struct GpencilModifierData *md, struct GpencilModifierData *target);
-#endif /* __BKE_GREASEPENCIL_H__ */
+bool BKE_gpencil_has_geometry_modifiers(struct Object *ob);
+
+void BKE_gpencil_stroke_modifiers(
+ struct Depsgraph *depsgraph, struct Object *ob,
+ struct bGPDlayer *gpl, struct bGPDframe *gpf, struct bGPDstroke *gps, bool is_render);
+void BKE_gpencil_geometry_modifiers(
+ struct Depsgraph *depsgraph, struct Object *ob,
+ struct bGPDlayer *gpl, struct bGPDframe *gpf, bool is_render);
+
+void BKE_gpencil_lattice_init(struct Object *ob);
+void BKE_gpencil_lattice_clear(struct Object *ob);
+
+#endif /* __BKE_GPENCIL_MODIFIER_H__ */
diff --git a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index 775fa8ecb12..2925b724790 100644
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@ -77,6 +77,7 @@ extern "C" {
#include "BKE_effect.h"
#include "BKE_fcurve.h"
#include "BKE_gpencil.h"
+#include "BKE_gpencil_modifier.h"
#include "BKE_idcode.h"
#include "BKE_key.h"
#include "BKE_lattice.h"
diff --git a/source/blender/editors/include/ED_object.h b/source/blender/editors/include/ED_object.h
index 19c29be6d15..d1c72e0cbae 100644
--- a/source/blender/editors/include/ED_object.h
+++ b/source/blender/editors/include/ED_object.h
@@ -276,13 +276,6 @@ int ED_object_gpencil_modifier_apply(
int ED_object_gpencil_modifier_copy(
struct ReportList *reports, struct Object *ob, struct GpencilModifierData *md);
-
-bool ED_object_iter_other(
- struct Main *bmain, struct Object *orig_ob, const bool include_orig,
- bool (*callback)(struct Object *ob, void *callback_data),
- void *callback_data);
-
-
/* object_select.c */
void ED_object_select_linked_by_id(struct bContext *C, struct ID *id);
diff --git a/source/blender/editors/object/object_gpencil_modifier.c b/source/blender/editors/object/object_gpencil_modifier.c
index 8a3a2d5b3fb..7c9dc188457 100644
--- a/source/blender/editors/object/object_gpencil_modifier.c
+++ b/source/blender/editors/object/object_gpencil_modifier.c
@@ -15,7 +15,7 @@
* along with this program; if not, write to the Free Software Foundation,
* Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
- * The Original Code is Copyright (C) 2001-2002 by NaN Holding BV.
+ * The Original Code is Copyright (C) 2018 Blender Foundation.
* All rights reserved.
*
* Contributor(s): Blender Foundation, 2018
@@ -315,10 +315,6 @@ static const EnumPropertyItem *gpencil_modifier_add_itemf(
if (mti->flags & eGpencilModifierTypeFlag_NoUserAdd)
continue;
-
- if ((mti->flags & eGpencilModifierTypeFlag_GpencilMod) == 0) {
- continue;
- }
}
else {
group_item = md_item;
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
index a6fb6e7bf25..94ae418d521 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilbuild.c
@@ -539,7 +539,7 @@ GpencilModifierTypeInfo modifierType_Gpencil_Build = {
/* structName */ "BuildGpencilModifierData",
/* structSize */ sizeof(BuildGpencilModifierData),
/* type */ eGpencilModifierTypeType_Gpencil,
- /* flags */ eGpencilModifierTypeFlag_GpencilMod,
+ /* flags */ 0,
/* copyData */ copyData,
@@ -552,7 +552,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Build = {
/* isDisabled */ NULL,
/* updateDepsgraph */ NULL,
/* dependsOnTime */ dependsOnTime,
- /* dependsOnNormals */ NULL,
/* foreachObjectLink */ NULL,
/* foreachIDLink */ NULL,
/* foreachTexLink */ NULL,
diff --git a/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c b/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
index ceadd2beeed..76f5f698b93 100644
--- a/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
+++ b/source/blender/gpencil_modifiers/intern/MOD_gpencilcolor.c
@@ -159,7 +159,7 @@ GpencilModifierTypeInfo modifierType_Gpencil_Color = {
/* structName */ "ColorGpencilModifierData",
/* structSize */ sizeof(ColorGpencilModifierData),
/* type */ eGpencilModifierTypeType_Gpencil,
- /* flags */ eGpencilModifierTypeFlag_GpencilMod | eGpencilModifierTypeFlag_SupportsEditmode,
+ /* flags */ eGpencilModifierTypeFlag_SupportsEditmode,
/* copyData */ copyData,
@@ -172,7 +172,6 @@ GpencilModifierTypeInfo modifierType_Gpencil_Color = {
/* isDisabled */ NULL,
/* updateDepsgraph */ NULL,
/* dependsOnTime */ NULL,
- /* dependsOnNormals */ NULL,
/* foreachObjectLink */ NULL,
/* foreachIDLink */ NULL,
/* foreachTexLink */ NULL,
diff --git a/source/blender/gpencil_mod
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list