[Bf-blender-cvs] [b8ab411185c] hair_guides_grooming: Merge branch 'hair_guides' into hair_guides_grooming
Lukas Tönne
noreply at git.blender.org
Sun Aug 12 14:00:02 CEST 2018
Commit: b8ab411185c11ce98e7e791b0d30a9d9b1ce6d69
Author: Lukas Tönne
Date: Sun Aug 12 12:59:39 2018 +0100
Branches: hair_guides_grooming
https://developer.blender.org/rBb8ab411185c11ce98e7e791b0d30a9d9b1ce6d69
Merge branch 'hair_guides' into hair_guides_grooming
===================================================================
===================================================================
diff --cc release/scripts/startup/bl_ui/__init__.py
index 1ef6566ed8e,3b0cc2527a8..76adb544b49
--- a/release/scripts/startup/bl_ui/__init__.py
+++ b/release/scripts/startup/bl_ui/__init__.py
@@@ -34,7 -34,7 +34,8 @@@ _modules =
"properties_data_camera",
"properties_data_curve",
"properties_data_empty",
+ "properties_data_gpencil",
+ "properties_data_groom",
"properties_data_light",
"properties_data_lattice",
"properties_data_mesh",
diff --cc release/scripts/startup/bl_ui/space_view3d.py
index a508790c046,a26d99e9ae9..e8350a9642f
--- a/release/scripts/startup/bl_ui/space_view3d.py
+++ b/release/scripts/startup/bl_ui/space_view3d.py
@@@ -1457,8 -1480,8 +1496,9 @@@ class INFO_MT_add(Menu)
# layout.operator_menu_enum("object.surface_add", "type", text="Surface", icon='OUTLINER_OB_SURFACE')
layout.menu("INFO_MT_surface_add", icon='OUTLINER_OB_SURFACE')
layout.menu("INFO_MT_metaball_add", text="Metaball", icon='OUTLINER_OB_META')
+ layout.menu("INFO_MT_groom_add", text="Groom", icon='OUTLINER_OB_GROOM')
layout.operator("object.text_add", text="Text", icon='OUTLINER_OB_FONT')
+ layout.operator_menu_enum("object.gpencil_add", "type", text="Grease Pencil", icon='OUTLINER_OB_GREASEPENCIL')
layout.separator()
layout.menu("INFO_MT_armature_add", icon='OUTLINER_OB_ARMATURE')
diff --cc source/blender/CMakeLists.txt
index b88e5e88cfe,f46283aced5..5a1abb5d7a6
--- a/source/blender/CMakeLists.txt
+++ b/source/blender/CMakeLists.txt
@@@ -44,9 -44,10 +44,11 @@@ set(SRC_DNA_IN
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_fileglobal_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_freestyle_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_genfile.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_gpencil_modifier_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_gpencil_types.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_shader_fx_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_gpu_types.h
+ ${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_groom_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_group_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_hair_types.h
${CMAKE_CURRENT_SOURCE_DIR}/makesdna/DNA_image_types.h
diff --cc source/blender/blenkernel/CMakeLists.txt
index 300c52f51c3,2640abab15b..7159165eb39
--- a/source/blender/blenkernel/CMakeLists.txt
+++ b/source/blender/blenkernel/CMakeLists.txt
@@@ -115,7 -117,7 +117,8 @@@ set(SR
intern/font.c
intern/freestyle.c
intern/gpencil.c
+ intern/gpencil_modifier.c
+ intern/groom.c
intern/hair.c
intern/hair_draw.c
intern/icons.c
@@@ -257,7 -266,7 +267,8 @@@
BKE_freestyle.h
BKE_global.h
BKE_gpencil.h
+ BKE_gpencil_modifier.h
+ BKE_groom.h
BKE_hair.h
BKE_icons.h
BKE_idcode.h
diff --cc source/blender/blenkernel/intern/library_query.c
index 656d3cff307,0626e051e83..b2f63f246ba
--- a/source/blender/blenkernel/intern/library_query.c
+++ b/source/blender/blenkernel/intern/library_query.c
@@@ -1094,8 -1106,8 +1117,10 @@@ bool BKE_library_id_can_use_idtype(ID *
return (ELEM(id_type_used, ID_TE, ID_OB));
case ID_LP:
return ELEM(id_type_used, ID_IM);
+ case ID_GD:
+ return ELEM(id_type_used, ID_MA);
+ case ID_GM:
+ return true;
case ID_WS:
return ELEM(id_type_used, ID_SCR, ID_SCE);
case ID_IM:
diff --cc source/blender/blenkernel/intern/material.c
index 4bdb59b1374,5edf9b9048f..0b27e472f4a
--- a/source/blender/blenkernel/intern/material.c
+++ b/source/blender/blenkernel/intern/material.c
@@@ -232,10 -273,10 +274,14 @@@ Material ***give_matarar(Object *ob
mb = ob->data;
return &(mb->mat);
}
+ else if (ob->type == OB_GPENCIL) {
+ gpd = ob->data;
+ return &(gpd->mat);
+ }
+ else if (ob->type == OB_GROOM) {
+ Groom *groom = ob->data;
+ return &(groom->mat);
+ }
return NULL;
}
@@@ -257,10 -299,10 +304,14 @@@ short *give_totcolp(Object *ob
mb = ob->data;
return &(mb->totcol);
}
+ else if (ob->type == OB_GPENCIL) {
+ gpd = ob->data;
+ return &(gpd->totcol);
+ }
+ else if (ob->type == OB_GROOM) {
+ Groom *groom = ob->data;
+ return &(groom->totcol);
+ }
return NULL;
}
@@@ -277,8 -319,8 +328,10 @@@ Material ***give_matarar_id(ID *id
return &(((Curve *)id)->mat);
case ID_MB:
return &(((MetaBall *)id)->mat);
+ case ID_GD:
+ return &(((bGPdata *)id)->mat);
+ case ID_GM:
+ return &(((Groom *)id)->mat);
default:
break;
}
@@@ -297,8 -339,8 +350,10 @@@ short *give_totcolp_id(ID *id
return &(((Curve *)id)->totcol);
case ID_MB:
return &(((MetaBall *)id)->totcol);
+ case ID_GD:
+ return &(((bGPdata *)id)->totcol);
+ case ID_GM:
+ return &(((Groom *)id)->totcol);
default:
break;
}
diff --cc source/blender/blenkernel/intern/object.c
index a07e81e22b0,41c23c46c44..97c311d7f9f
--- a/source/blender/blenkernel/intern/object.c
+++ b/source/blender/blenkernel/intern/object.c
@@@ -41,8 -41,8 +41,9 @@@
#include "DNA_camera_types.h"
#include "DNA_constraint_types.h"
#include "DNA_gpencil_types.h"
+ #include "DNA_gpencil_modifier_types.h"
#include "DNA_group_types.h"
+#include "DNA_groom_types.h"
#include "DNA_key_types.h"
#include "DNA_lamp_types.h"
#include "DNA_lattice_types.h"
@@@ -692,7 -720,7 +735,8 @@@ void *BKE_object_obdata_add_from_type(M
case OB_ARMATURE: return BKE_armature_add(bmain, name);
case OB_SPEAKER: return BKE_speaker_add(bmain, name);
case OB_LIGHTPROBE:return BKE_lightprobe_add(bmain, name);
+ case OB_GPENCIL: return BKE_gpencil_data_addnew(bmain, name);
+ case OB_GROOM: return BKE_groom_add(bmain, name);
case OB_EMPTY: return NULL;
default:
printf("%s: Internal error, bad type: %d\n", __func__, type);
diff --cc source/blender/blenkernel/intern/object_update.c
index 8c9569ecfcb,3641df26496..908debd828f
--- a/source/blender/blenkernel/intern/object_update.c
+++ b/source/blender/blenkernel/intern/object_update.c
@@@ -62,7 -62,7 +62,8 @@@
#include "BKE_particle.h"
#include "BKE_pointcache.h"
#include "BKE_scene.h"
+ #include "BKE_gpencil.h"
+#include "BKE_groom.h"
#include "MEM_guardedalloc.h"
@@@ -325,9 -325,9 +326,12 @@@ void BKE_object_eval_uber_data(Depsgrap
case OB_MBALL:
BKE_mball_batch_cache_dirty(ob->data, BKE_MBALL_BATCH_DIRTY_ALL);
break;
+ case OB_GPENCIL:
+ BKE_gpencil_batch_cache_dirty(ob->data);
+ break;
+ case OB_GROOM:
+ BKE_groom_batch_cache_dirty(ob->data, BKE_GROOM_BATCH_DIRTY_ALL);
+ break;
}
}
diff --cc source/blender/blenloader/intern/readfile.c
index 3906dc2d105,9655d69ca4a..456ffe31186
--- a/source/blender/blenloader/intern/readfile.c
+++ b/source/blender/blenloader/intern/readfile.c
@@@ -70,10 -70,11 +70,12 @@@
#include "DNA_effect_types.h"
#include "DNA_fileglobal_types.h"
#include "DNA_genfile.h"
+#include "DNA_groom_types.h"
#include "DNA_group_types.h"
#include "DNA_gpencil_types.h"
+ #include "DNA_gpencil_modifier_types.h"
#include "DNA_hair_types.h"
+ #include "DNA_shader_fx_types.h"
#include "DNA_ipo_types.h"
#include "DNA_key_types.h"
#include "DNA_lattice_types.h"
diff --cc source/blender/blenloader/intern/writefile.c
index 78fdf51b616,f5ee0bdb244..7fbb6860be2
--- a/source/blender/blenloader/intern/writefile.c
+++ b/source/blender/blenloader/intern/writefile.c
@@@ -116,9 -116,10 +116,11 @@@
#include "DNA_constraint_types.h"
#include "DNA_dynamicpaint_types.h"
#include "DNA_genfile.h"
+#include "DNA_groom_types.h"
#include "DNA_group_types.h"
#include "DNA_gpencil_types.h"
+ #include "DNA_gpencil_modifier_types.h"
+ #include "DNA_shader_fx_types.h"
#include "DNA_fileglobal_types.h"
#include "DNA_hair_types.h"
#include "DNA_key_types.h"
diff --cc source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
index a784fdc33c4,efd57734b48..477a97bb2f0
--- a/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_nodes.cc
@@@ -78,8 -77,9 +78,10 @@@ extern "C"
#include "BKE_curve.h"
#include "BKE_effect.h"
#include "BKE_fcurve.h"
+ #include "BKE_gpencil.h"
+ #include "BKE_gpencil_modifier.h"
#include "BKE_idcode.h"
+#include "BKE_groom.h"
#include "BKE_key.h"
#include "BKE_lattice.h"
#include "BKE_library.h"
@@@ -594,7 -603,7 +605,8 @@@ void DepsgraphNodeBuilder::build_object
case OB_SURF:
case OB_MBALL:
case OB_LATTICE:
+ case OB_GPENCIL:
+ case OB_GROOM:
build_object_data_geometry(object);
/* TODO(sergey): Only for until we support granular
* update of curves.
@@@ -1205,18 -1225,20 +1228,32 @@@ void DepsgraphNodeBuilder::build_object
op_node->set_as_entry();
break;
}
+
+ case ID_GD:
+ {
+ /* GPencil evaluation operations. */
+ op_node = add_operation_node(obdata,
+ DEG_NODE_TYPE_GEOMETRY,
+ function_bind(BKE_gpencil_eval_geometry,
+ _1,
+ (bGPdata *)obdata_cow),
+ DEG_OPCODE_PLACEHOLDER,
+ "Geometry Eval");
+ op_node->set_as_entry();
+ break;
+ }
+ case ID_GM:
+ {
+ /* Groom evaluation operations. */
+ op_node = add_operation_node(obdata, DEG_NODE_TYPE_GEOMETRY,
+ function_bind(BKE_groom_eval_geometry,
+ _1,
+ (Groom *)obdata_cow),
+ DEG_OPCODE_PLACEHOLDER,
+ "Geometry Eval");
+ op_node->set_as_entry();
+ break;
+ }
default:
BLI_assert(!"Should not happen");
break;
diff --cc source/blender/depsgraph/intern/builder/deg_builder_relations.cc
index 4a250292f83,4f94066f3bb..88084fbfb57
--- a/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
+++ b/source/blender/depsgraph/intern/builder/deg_builder_relations.cc
@@@ -632,7 -636,7 +638,8 @@@ void DepsgraphRelationBuilder::build_ob
case OB_SURF:
case OB_MBALL:
case OB_LATTICE:
+ case OB_GPENCI
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list