[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