[Bf-blender-cvs] [8da192a2584] experimental-build: soc-17-vpaint experimental build
Darshan Kadu
noreply at git.blender.org
Mon Jul 24 17:27:02 CEST 2017
Commit: 8da192a2584944a6d38a70850f708eecfb8d0c5d
Author: Darshan Kadu
Date: Mon Jul 24 16:16:55 2017 +0530
Branches: experimental-build
https://developer.blender.org/rB8da192a2584944a6d38a70850f708eecfb8d0c5d
soc-17-vpaint experimental build
===================================================================
D p1.orig
D p1.rej
M release/scripts/startup/bl_ui/space_view3d.py
D release/scripts/startup/bl_ui/space_view3d.py.orig
M release/scripts/startup/bl_ui/space_view3d_toolbar.py
D release/scripts/startup/bl_ui/space_view3d_toolbar.py.orig
D release/scripts/startup/io_mesh_ply_soc/__init__.py
D release/scripts/startup/io_mesh_ply_soc/export_ply_soc.py
D release/scripts/startup/io_mesh_ply_soc/import_ply_soc.py
D release/scripts/startup/io_scene_fbx_soc/__init__.py
D release/scripts/startup/io_scene_fbx_soc/data_types.py
D release/scripts/startup/io_scene_fbx_soc/encode_bin.py
D release/scripts/startup/io_scene_fbx_soc/export_fbx_bin_soc.py
D release/scripts/startup/io_scene_fbx_soc/export_fbx_soc.py
D release/scripts/startup/io_scene_fbx_soc/fbx2json.py
D release/scripts/startup/io_scene_fbx_soc/fbx_utils.py
D release/scripts/startup/io_scene_fbx_soc/import_fbx_soc.py
D release/scripts/startup/io_scene_fbx_soc/json2fbx.py
D release/scripts/startup/io_scene_fbx_soc/parse_fbx.py
M source/blender/blenkernel/BKE_paint.h
D source/blender/blenkernel/BKE_paint.h.orig
M source/blender/blenkernel/BKE_pbvh.h
D source/blender/blenkernel/BKE_pbvh.h.orig
M source/blender/blenkernel/intern/CCGSubSurf.c
D source/blender/blenkernel/intern/CCGSubSurf.c.orig
M source/blender/blenkernel/intern/DerivedMesh.c
D source/blender/blenkernel/intern/DerivedMesh.c.orig
M source/blender/blenkernel/intern/cdderivedmesh.c
D source/blender/blenkernel/intern/cdderivedmesh.c.orig
M source/blender/blenkernel/intern/object.c
D source/blender/blenkernel/intern/object.c.orig
M source/blender/blenkernel/intern/paint.c
D source/blender/blenkernel/intern/paint.c.orig
M source/blender/blenkernel/intern/pbvh.c
D source/blender/blenkernel/intern/pbvh.c.orig
M source/blender/blenkernel/intern/pbvh_intern.h
D source/blender/blenkernel/intern/pbvh_intern.h.orig
M source/blender/blenkernel/intern/subsurf_ccg.c
D source/blender/blenkernel/intern/subsurf_ccg.c.orig
M source/blender/blenloader/intern/versioning_270.c
D source/blender/blenloader/intern/versioning_270.c.orig
M source/blender/blenloader/intern/versioning_defaults.c
D source/blender/blenloader/intern/versioning_defaults.c.orig
M source/blender/collada/GeometryExporter.cpp
D source/blender/collada/GeometryExporter.cpp.orig
M source/blender/editors/sculpt_paint/paint_image.c
D source/blender/editors/sculpt_paint/paint_image.c.orig
M source/blender/editors/sculpt_paint/paint_intern.h
D source/blender/editors/sculpt_paint/paint_intern.h.orig
M source/blender/editors/sculpt_paint/paint_ops.c
D source/blender/editors/sculpt_paint/paint_ops.c.orig
M source/blender/editors/sculpt_paint/paint_vertex.c
D source/blender/editors/sculpt_paint/paint_vertex.c.orig
M source/blender/editors/sculpt_paint/sculpt.c
D source/blender/editors/sculpt_paint/sculpt.c.orig
M source/blender/editors/sculpt_paint/sculpt_intern.h
D source/blender/editors/sculpt_paint/sculpt_intern.h.orig
M source/blender/editors/space_view3d/drawobject.c
D source/blender/editors/space_view3d/drawobject.c.orig
M source/blender/editors/space_view3d/view3d_header.c
D source/blender/editors/space_view3d/view3d_header.c.orig
M source/blender/gpu/intern/gpu_buffers.c
D source/blender/gpu/intern/gpu_buffers.c.orig
M source/blender/makesdna/DNA_brush_types.h
D source/blender/makesdna/DNA_brush_types.h.orig
M source/blender/makesdna/DNA_object_types.h
D source/blender/makesdna/DNA_object_types.h.orig
M source/blender/makesdna/DNA_scene_types.h
D source/blender/makesdna/DNA_scene_types.h.orig
M source/blender/makesrna/intern/rna_brush.c
D source/blender/makesrna/intern/rna_brush.c.orig
M source/blender/makesrna/intern/rna_mesh.c
D source/blender/makesrna/intern/rna_mesh.c.orig
M source/blender/makesrna/intern/rna_sculpt_paint.c
D source/blender/makesrna/intern/rna_sculpt_paint.c.orig
D vpaint.txt
D "\357\200\233OB\357\200\233OA"
D "\357\200\233OB\357\200\233OA.pub"
===================================================================
diff --git a/p1.orig b/p1.orig
deleted file mode 100644
index e69de29bb2d..00000000000
diff --git a/p1.rej b/p1.rej
deleted file mode 100644
index 7461baad21d..00000000000
--- a/p1.rej
+++ /dev/null
@@ -1,3708 +0,0 @@
---- space_view3d_toolbar.py
-+++ space_view3d_toolbar.py
-@@ -51,6 +51,19 @@ def draw_keyframing_tools(context, layout):
- row.operator("anim.keyframe_delete_v3d", text="Remove")
-
-
-+# Used by vertex & weight paint
-+def draw_vpaint_symmetry(layout, vpaint):
-+ col = layout.column(align=True)
-+ col.label(text="Mirror:")
-+ row = col.row(align=True)
-+
-+ row.prop(vpaint, "use_symmetry_x", text="X", toggle=True)
-+ row.prop(vpaint, "use_symmetry_y", text="Y", toggle=True)
-+ row.prop(vpaint, "use_symmetry_z", text="Z", toggle=True)
-+
-+ col = layout.column()
-+ col.prop(vpaint, "radial_symmetry", text="Radial")
-+
- # ********** default tools for object-mode ****************
-
-
-@@ -1132,7 +1145,11 @@ class VIEW3D_PT_tools_brush(Panel, View3DPaintPanel):
- self.prop_unified_color_picker(col, context, brush, "color", value_slider=True)
- if settings.palette:
- col.template_palette(settings, "palette", color=True)
-- self.prop_unified_color(col, context, brush, "color", text="")
-+ row = col.row(align=True)
-+ self.prop_unified_color(row, context, brush, "color", text="")
-+ self.prop_unified_color(row, context, brush, "secondary_color", text="")
-+ row.separator()
-+ row.operator("paint.brush_colors_flip", icon='FILE_REFRESH', text="")
-
- col.separator()
- row = col.row(align=True)
-@@ -1713,6 +1730,19 @@ class VIEW3D_PT_tools_weightpaint(View3DPanel, Panel):
- props.data_type = 'VGROUP_WEIGHTS'
-
-
-+class VIEW3D_PT_tools_weightpaint_symmetry(Panel, View3DPaintPanel):
-+ bl_category = "Tools"
-+ bl_context = "weightpaint"
-+ bl_options = {'DEFAULT_CLOSED'}
-+ bl_label = "Symmetry"
-+
-+ def draw(self, context):
-+ layout = self.layout
-+ toolsettings = context.tool_settings
-+ wpaint = toolsettings.weight_paint
-+ draw_vpaint_symmetry(layout, wpaint)
-+
-+
- class VIEW3D_PT_tools_weightpaint_options(Panel, View3DPaintPanel):
- bl_category = "Options"
- bl_context = "weightpaint"
-@@ -1775,6 +1805,20 @@ class VIEW3D_PT_tools_vertexpaint(Panel, View3DPaintPanel):
- #~ col.label(text="Multiply:")
- #~ col.prop(vpaint, "mul", text="")
-
-+
-+class VIEW3D_PT_tools_vertexpaint_symmetry(Panel, View3DPaintPanel):
-+ bl_category = "Tools"
-+ bl_context = "vertexpaint"
-+ bl_options = {'DEFAULT_CLOSED'}
-+ bl_label = "Symmetry"
-+
-+ def draw(self, context):
-+ layout = self.layout
-+ toolsettings = context.tool_settings
-+ vpaint = toolsettings.vertex_paint
-+ draw_vpaint_symmetry(layout, vpaint)
-+
-+
- # ********** default tools for texture-paint ****************
-
-
-@@ -2054,8 +2098,10 @@ classes = (
- VIEW3D_PT_sculpt_symmetry,
- VIEW3D_PT_tools_brush_appearance,
- VIEW3D_PT_tools_weightpaint,
-+ VIEW3D_PT_tools_weightpaint_symmetry,
- VIEW3D_PT_tools_weightpaint_options,
- VIEW3D_PT_tools_vertexpaint,
-+ VIEW3D_PT_tools_vertexpaint_symmetry,
- VIEW3D_PT_tools_imagepaint_external,
- VIEW3D_PT_tools_imagepaint_symmetry,
- VIEW3D_PT_tools_projectpaint,
---- BKE_paint.h
-+++ BKE_paint.h
-@@ -201,10 +201,30 @@ typedef struct SculptSession {
-
- struct SculptStroke *stroke;
- struct StrokeCache *cache;
-+
-+ union {
-+ struct {
-+ int *vert_map_mem;
-+ struct MeshElemMap *vert_to_loop;
-+ int *poly_map_mem;
-+ struct MeshElemMap *vert_to_poly;
-+
-+ unsigned int (*total_color)[3];
-+ double *total_weight;
-+ unsigned int *tot_loops_hit;
-+ float *max_weight;
-+ unsigned int *previous_color;
-+ bool building_vp_handle;
-+ } vwpaint;
-+ //struct {
-+ //ToDo: identify sculpt-only fields
-+ //} sculpt;
-+ } modes;
- } SculptSession;
-
- void BKE_sculptsession_free(struct Object *ob);
- void BKE_sculptsession_free_deformMats(struct SculptSession *ss);
-+void BKE_sculptsession_free_vwpaint_data(struct SculptSession *ss);
- void BKE_sculptsession_bm_to_me(struct Object *ob, bool reorder);
- void BKE_sculptsession_bm_to_me_for_render(struct Object *object);
- void BKE_sculpt_update_mesh_elements(struct Scene *scene, struct Sculpt *sd, struct Object *ob,
---- BKE_pbvh.h
-+++ BKE_pbvh.h
-@@ -32,6 +32,7 @@
-
- struct CCGElem;
- struct CCGKey;
-+struct CCGDerivedMesh;
- struct CustomData;
- struct DMFlagMat;
- struct MPoly;
-@@ -71,7 +72,7 @@ void BKE_pbvh_build_grids(PBVH *bvh, struct CCGElem **grid_elems,
- struct CCGKey *key, void **gridfaces, struct DMFlagMat *flagmats,
- unsigned int **grid_hidden);
- void BKE_pbvh_build_bmesh(PBVH *bvh, struct BMesh *bm, bool smooth_shading, struct BMLog *log, const int cd_vert_node_offset, const int cd_face_node_offset);
--
-+void BKE_pbvh_add_ccgdm(PBVH *bvh, struct CCGDerivedMesh *ccgdm);
- void BKE_pbvh_free(PBVH *bvh);
- void BKE_pbvh_free_layer_disp(PBVH *bvh);
-
-@@ -118,6 +119,7 @@ void BKE_pbvh_raycast_project_ray_root(
- void BKE_pbvh_node_draw(PBVHNode *node, void *data);
- void BKE_pbvh_draw(PBVH *bvh, float (*planes)[4], float (*face_nors)[3],
- int (*setMaterial)(int matnr, void *attribs), bool wireframe, bool fast);
-+void BKE_pbvh_draw_BB(PBVH *bvh);
-
- /* PBVH Access */
- typedef enum {
-@@ -141,6 +143,7 @@ int BKE_pbvh_count_grid_quads(BLI_bitmap **grid_hidden,
-
- /* multires level, only valid for type == PBVH_GRIDS */
- void BKE_pbvh_get_grid_key(const PBVH *pbvh, struct CCGKey *key);
-+struct CCGDerivedMesh *BKE_pbvh_get_ccgdm(const PBVH *bvh);
-
- /* Only valid for type == PBVH_BMESH */
- struct BMesh *BKE_pbvh_get_bmesh(PBVH *pbvh);
-@@ -189,6 +192,7 @@ void BKE_pbvh_node_num_verts(
- void BKE_pbvh_node_get_verts(
- PBVH *bvh, PBVHNode *node,
- const int **r_vert_indices, struct MVert **r_verts);
-+void BKE_pbvh_get_num_nodes(const PBVH *bvh, int *r_totnode);
-
- void BKE_pbvh_node_get_BB(PBVHNode *node, float bb_min[3], float bb_max[3]);
- void BKE_pbvh_node_get_original_BB(PBVHNode *node, float bb_min[3], float bb_max[3]);
---- CCGSubSurf.c
-+++ CCGSubSurf.c
-@@ -1196,6 +1196,7 @@ int ccgSubSurf_getNumEdges(const CCGSubSurf *ss)
- }
- int ccgSubSurf_getNumFaces(const CCGSubSurf *ss)
- {
-+
- return ss->fMap->numEntries;
- }
-
---- DerivedMesh.c
-+++ DerivedMesh.c
-@@ -2641,7 +2641,7 @@ static void mesh_build_data(
- ob->lastDataMask = dataMask;
- ob->lastNeedMapping = need_mapping;
-
-- if ((ob->mode & OB_MODE_SCULPT) && ob->sculpt) {
-+ if ((ob->mode & OB_MODE_ALL_SCULPT) && ob->sculpt) {
- /* create PBVH immediately (would be created on the fly too,
- * but this avoids waiting on first stroke) */
-
---- cdderivedmesh.c
-+++ cdderivedmesh.c
-@@ -660,6 +660,11 @@ static void cdDM_drawMappedFaces(
-
- const int *index_mp_to_orig = dm->getPolyDataArray(dm, CD_ORIGINDEX);
-
-+ if (cddm->pbvh) {
-+ if (G.debug_value == 14)
-+ BKE_pbvh_draw_BB(cddm->pbvh);
-+ }
-+
- /* fist, setup common buffers */
- GPU_vertex_setup(dm);
- GPU_triangle_setup(dm);
---- object.c
-+++ object.c
-@@ -2679,7 +2679,7 @@ void BKE_object_sculpt_modifiers_changed(Object *ob)
- {
- SculptSession *ss = ob->sculpt;
-
-- if (ss) {
-+ if (ss && ss->modes.vwpaint.building_vp_handle == false) {
- if (!ss->cache) {
- /* we free pbvh on changes, except during sculpt since it can't deal with
- * changing PVBH node organization, we hope topology does not change in
-@@ -2690,6 +2690,9 @@ void BKE_object_sculpt_modifiers_changed(Object *ob)
- }
-
- BKE_sculptsession_free_deformMats(ob->sculpt);
-+
-+ /* In vertex/weight paint, force maps to be rebuilt. */
-+ BKE_sculptsession_free_vwpaint_data(ob->sculpt);
- }
- else {
- PBVHNode **nodes;
---- paint.c
-+++ paint.c
-@@ -656,6 +656,22 @@ void BKE_sculptsession_free_deformMats(SculptSession *ss)
- MEM_SAFE_FREE(ss->deform_imats);
- }
-
-+void BKE_sculptsession_free_vwpaint_data(struct SculptSession *ss)
-+{
-+ /* Free maps */
-+ MEM_SAFE_FREE(ss->modes.vwpaint.vert_to_loop);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.vert_map_mem);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.vert_to_poly);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.poly_map_mem);
-+
-+ /* Free average, blur, and spray brush arrays */
-+ MEM_SAFE_FREE(ss->modes.vwpaint.tot_loops_hit);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.total_color);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.total_weight);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.max_weight);
-+ MEM_SAFE_FREE(ss->modes.vwpaint.previous_color);
-+}
-+
- /* Write out the sculpt dynamic-topology BMesh to the Mesh */
- static void sculptsession_bm_to_me_update_data_only(Object *ob, bool reorder)
- {
-@@ -697,10 +713,7 @@ void BKE_sculptsession_bm_to_me_for_render(Object *object)
- */
- BKE_object_free_derived_caches(object);
-
-- if (object->sculpt->pbvh) {
-- BKE_pbvh_free(object->sculpt->pbvh);
-- object->sculpt->pbvh = NULL;
-- }
-+ MEM_SAFE_FREE(object->sculpt->pbvh);
-
- sculptsession_bm_to_me_update_data_only(object, false);
-
-@@ -747,6 +760,8 @@ void BKE_sculptsession_free(Object *ob)
- if (ss->deform_imats)
- MEM_freeN(ss->deform_imats);
-
-+ BKE_sculptsession_free_vwpaint_data(ob->sculpt);
-+
- MEM_freeN(ss);
-
- ob->sculpt = NULL;
-@@ -831,6 +846,9 @@ void BKE_sculpt_update_mesh_elements(Scene *scene, Sculpt *sd, Object *ob,
- ss->modifiers_active = sculpt_modifiers_active(scene, sd, ob);
- ss->show_diffuse_color = (sd->flags & SCULPT_SHOW_DIFFUSE) != 0;
-
-+ /* This flag prevents PBVH from being freed when creating the vp_handle for texture paint */
-+ ss->modes.vwpaint.building_vp_handle = false;
-+
- if (need_mask) {
- if (mmd == NULL) {
- if (!CustomData_has_layer(&me->vdata, CD_PAINT_MASK)) {
-@@ -859,7 +877,8 @@ void BKE_sculpt_update_mesh_elements(Scene *scene, Sculpt *sd, Object *ob,
-
- dm = mesh_get_derived_final(scene, ob, CD_MASK_BAREMESH);
-
-- if (mmd) {
-+ /* VWPaint require mesh info for loop lookup, so require sculpt mode here */
-+ if (mm
@@ Diff output truncated at 10240 characters. @@
More information about the Bf-blender-cvs
mailing list