[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [59033] branches/soc-2013-dingto: Merged revision(s) 58994-59032 from trunk/blender into soc-2013-dingto.

Thomas Dinges blender at dingto.org
Fri Aug 9 19:30:21 CEST 2013


Revision: 59033
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=59033
Author:   dingto
Date:     2013-08-09 17:30:21 +0000 (Fri, 09 Aug 2013)
Log Message:
-----------
Merged revision(s) 58994-59032 from trunk/blender into soc-2013-dingto. 

Modified Paths:
--------------
    branches/soc-2013-dingto/CMakeLists.txt
    branches/soc-2013-dingto/build_files/cmake/cmake_static_check_smatch.py
    branches/soc-2013-dingto/build_files/cmake/cmake_static_check_sparse.py
    branches/soc-2013-dingto/build_files/cmake/project_source_info.py
    branches/soc-2013-dingto/intern/cycles/blender/blender_object.cpp
    branches/soc-2013-dingto/source/blender/blenkernel/BKE_image.h
    branches/soc-2013-dingto/source/blender/blenkernel/intern/curve.c
    branches/soc-2013-dingto/source/blender/blenkernel/intern/image.c
    branches/soc-2013-dingto/source/blender/blenkernel/intern/particle.c
    branches/soc-2013-dingto/source/blender/blenloader/intern/readfile.c
    branches/soc-2013-dingto/source/blender/compositor/nodes/COM_SplitViewerNode.cpp
    branches/soc-2013-dingto/source/blender/editors/interface/interface_templates.c
    branches/soc-2013-dingto/source/blender/editors/object/object_group.c
    branches/soc-2013-dingto/source/blender/editors/screen/screen_edit.c
    branches/soc-2013-dingto/source/blender/editors/space_time/space_time.c
    branches/soc-2013-dingto/source/blender/freestyle/intern/python/Interface0D/BPy_CurvePoint.cpp
    branches/soc-2013-dingto/source/blender/freestyle/intern/python/Interface0D/BPy_SVertex.cpp
    branches/soc-2013-dingto/source/blender/makesrna/intern/rna_meta.c
    branches/soc-2013-dingto/source/blender/modifiers/intern/MOD_weightvg_util.c
    branches/soc-2013-dingto/source/blender/nodes/shader/nodes/node_shader_subsurface_scattering.c
    branches/soc-2013-dingto/source/blender/render/intern/include/zbuf.h
    branches/soc-2013-dingto/source/blender/render/intern/source/pointdensity.c
    branches/soc-2013-dingto/source/blender/render/intern/source/zbuf.c

Property Changed:
----------------
    branches/soc-2013-dingto/


Property changes on: branches/soc-2013-dingto
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/ge_dev:58091-58422
/branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/branches/soc-2013-depsgraph_mt:57516
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57315-57365,57369-58448,58450,58452-58770,58779,58783-58855,58857,58859-58993
   + /branches/ge_dev:58091-58422
/branches/ge_harmony:42255,42279-42282,42286,42302,42338,42349,42616,42620,42698-42699,42739,42753,42773-42774,42832,44568,44597-44598,44793-44794
/branches/soc-2011-cucumber:37517,38166-38167,38177,38179-38180,38187,38242,38384,38387,38403-38404,38407,38968,38970,38973,39045,40845,42997-42998,43439
/branches/soc-2011-tomato:42376,42378-42379,42383,42385,42395,42397-42400,42407,42411,42418,42443-42444,42446,42467,42472,42486,42650-42652,42654-42655,42709-42710,42733-42734,42801,43872,44130,44141,44147-44149,44151-44152,44229-44230,45623-45625,46037,48089,48092,48551-48552,48679,48790,48792-48793,49076,49087,49292,49294,49466,49894,50052,50126,52854-52856,54573
/branches/soc-2013-depsgraph_mt:57516
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57315-57365,57369-58448,58450,58452-58770,58779,58783-58855,58857,58859-59032

Modified: branches/soc-2013-dingto/CMakeLists.txt
===================================================================
--- branches/soc-2013-dingto/CMakeLists.txt	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/CMakeLists.txt	2013-08-09 17:30:21 UTC (rev 59033)
@@ -416,6 +416,10 @@
 	set(WITH_HEADLESS ON)
 endif()
 
+if(NOT WITH_PYTHON)
+	set(WITH_CYCLES OFF)
+endif()
+
 # enable boost for cycles, booleans, audaspace or i18n
 # otherwise if the user disabled
 if(NOT WITH_BOOST)

Modified: branches/soc-2013-dingto/build_files/cmake/cmake_static_check_smatch.py
===================================================================
--- branches/soc-2013-dingto/build_files/cmake/cmake_static_check_smatch.py	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/build_files/cmake/cmake_static_check_smatch.py	2013-08-09 17:30:21 UTC (rev 59033)
@@ -44,6 +44,7 @@
 
 def main():
     source_info = project_source_info.build_info(use_cxx=False, ignore_prefix_list=CHECKER_IGNORE_PREFIX)
+    source_defines = project_source_info.build_defines_as_args()
 
     check_commands = []
     for c, inc_dirs, defs in source_info:
@@ -52,7 +53,8 @@
                CHECKER_ARGS +
                [c] +
                [("-I%s" % i) for i in inc_dirs] +
-               [("-D%s" % d) for d in defs]
+               [("-D%s" % d) for d in defs] +
+               source_defines
                )
 
         check_commands.append((c, cmd))

Modified: branches/soc-2013-dingto/build_files/cmake/cmake_static_check_sparse.py
===================================================================
--- branches/soc-2013-dingto/build_files/cmake/cmake_static_check_sparse.py	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/build_files/cmake/cmake_static_check_sparse.py	2013-08-09 17:30:21 UTC (rev 59033)
@@ -42,6 +42,7 @@
 
 def main():
     source_info = project_source_info.build_info(use_cxx=False, ignore_prefix_list=CHECKER_IGNORE_PREFIX)
+    source_defines = project_source_info.build_defines_as_args()
 
     check_commands = []
     for c, inc_dirs, defs in source_info:
@@ -50,7 +51,8 @@
                CHECKER_ARGS +
                [c] +
                [("-I%s" % i) for i in inc_dirs] +
-               [("-D%s" % d) for d in defs]
+               [("-D%s" % d) for d in defs] +
+               source_defines
                )
 
         check_commands.append((c, cmd))

Modified: branches/soc-2013-dingto/build_files/cmake/project_source_info.py
===================================================================
--- branches/soc-2013-dingto/build_files/cmake/project_source_info.py	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/build_files/cmake/project_source_info.py	2013-08-09 17:30:21 UTC (rev 59033)
@@ -171,6 +171,26 @@
     return source
 
 
+def build_defines_as_source():
+    """
+    Returns a string formatted as an include:
+        '#defines A=B\n#define....'
+    """
+    import subprocess
+    # works for both gcc and clang
+    cmd = (cmake_cache_var("CMAKE_C_COMPILER"), "-dM", "-E", "-")
+    return subprocess.Popen(cmd,
+                            stdout=subprocess.PIPE,
+                            stdin=subprocess.DEVNULL,
+                            ).stdout.read().strip().decode('ascii')
+
+
+def build_defines_as_args():
+    return [("-D" + "=".join(l.split(maxsplit=2)[1:]))
+            for l in build_defines_as_source().split("\n")
+            if l.startswith('#define')]
+
+
 # could be moved elsewhere!, this just happens to be used by scripts that also
 # use this module.
 def queue_processes(process_funcs, job_total=-1):

Modified: branches/soc-2013-dingto/intern/cycles/blender/blender_object.cpp
===================================================================
--- branches/soc-2013-dingto/intern/cycles/blender/blender_object.cpp	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/intern/cycles/blender/blender_object.cpp	2013-08-09 17:30:21 UTC (rev 59033)
@@ -348,32 +348,41 @@
 
 	bool hair_present = false;
 	bool show_emitter = false;
-	bool hide = false;
+	bool hide_as_dupli_parent = false;
+	bool hide_as_dupli_child_original = false;
 
 	for(b_ob.particle_systems.begin(b_psys); b_psys != b_ob.particle_systems.end(); ++b_psys) {
 		if((b_psys->settings().render_type() == BL::ParticleSettings::render_type_PATH) &&
 		   (b_psys->settings().type()==BL::ParticleSettings::type_HAIR))
 			hair_present = true;
 
-		if(b_psys->settings().use_render_emitter()) {
-			hide = false;
+		if(b_psys->settings().use_render_emitter())
 			show_emitter = true;
-		}
 	}
 
 	/* duplicators hidden by default, except dupliframes which duplicate self */
 	if(b_ob.is_duplicator())
 		if(top_level || b_ob.dupli_type() != BL::Object::dupli_type_FRAMES)
-			hide = true;
+			hide_as_dupli_parent = true;
 
 	/* hide original object for duplis */
 	BL::Object parent = b_ob.parent();
 	if(parent && object_render_hide_original(b_ob.type(), parent.dupli_type()))
 		if(parent_hide)
-			hide = true;
-
-	hide_triangles = (hair_present && !show_emitter);
-	return hide && !show_emitter;
+			hide_as_dupli_child_original = true;
+	
+	if(show_emitter) {
+		hide_triangles = false;
+		return (hide_as_dupli_parent || hide_as_dupli_child_original);
+	}
+	else if(hair_present) {
+		hide_triangles = true;
+		return hide_as_dupli_child_original;
+	}
+	else {
+		hide_triangles = false;
+		return (hide_as_dupli_parent || hide_as_dupli_child_original);
+	}
 }
 
 static bool object_render_hide_duplis(BL::Object b_ob)

Modified: branches/soc-2013-dingto/source/blender/blenkernel/BKE_image.h
===================================================================
--- branches/soc-2013-dingto/source/blender/blenkernel/BKE_image.h	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/source/blender/blenkernel/BKE_image.h	2013-08-09 17:30:21 UTC (rev 59033)
@@ -161,7 +161,7 @@
 struct Image *BKE_image_load_exists(const char *filepath);
 
 /* adds image, adds ibuf, generates color or pattern */
-struct Image *BKE_image_add_generated(struct Main *bmain, unsigned int width, unsigned int height, const char *name, int depth, int floatbuf, short gen_type, float color[4]);
+struct Image *BKE_image_add_generated(struct Main *bmain, unsigned int width, unsigned int height, const char *name, int depth, int floatbuf, short gen_type, const float color[4]);
 /* adds image from imbuf, owns imbuf */
 struct Image *BKE_image_add_from_imbuf(struct ImBuf *ibuf);
 

Modified: branches/soc-2013-dingto/source/blender/blenkernel/intern/curve.c
===================================================================
--- branches/soc-2013-dingto/source/blender/blenkernel/intern/curve.c	2013-08-09 17:23:54 UTC (rev 59032)
+++ branches/soc-2013-dingto/source/blender/blenkernel/intern/curve.c	2013-08-09 17:30:21 UTC (rev 59033)
@@ -1990,36 +1990,35 @@
 /* make_bevel_list_3D_* funcs, at a minimum these must
  * fill in the bezp->quat and bezp->dir values */
 
-/* correct non-cyclic cases by copying direction and rotation
- * values onto the first & last end-points */
-static void bevel_list_cyclic_fix_3D(BevList *bl)
-{
-	BevPoint *bevp, *bevp1;
-
-	bevp = (BevPoint *)(bl + 1);
-	bevp1 = bevp + 1;
-	copy_qt_qt(bevp->quat, bevp1->quat);
-	copy_v3_v3(bevp->dir, bevp1->dir);
-	copy_v3_v3(bevp->tan, bevp1->tan);
-	bevp = (BevPoint *)(bl + 1);
-	bevp += (bl->nr - 1);
-	bevp1 = bevp - 1;
-	copy_qt_qt(bevp->quat, bevp1->quat);
-	copy_v3_v3(bevp->dir, bevp1->dir);
-	copy_v3_v3(bevp->tan, bevp1->tan);
-}
-
 /* utility for make_bevel_list_3D_* funcs */
 static void bevel_list_calc_bisect(BevList *bl)
 {
 	BevPoint *bevp2, *bevp1, *bevp0;
 	int nr;
+	bool is_cyclic = bl->poly != -1;
 
-	bevp2 = (BevPoint *)(bl + 1);
-	bevp1 = bevp2 + (bl->nr - 1);
-	bevp0 = bevp1 - 1;
+	if (is_cyclic) {
+		bevp2 = (BevPoint *)(bl + 1);
+		bevp1 = bevp2 + (bl->nr - 1);
+		bevp0 = bevp1 - 1;
+		nr = bl->nr;
+	}
+	else {
+		/* If spline is not cyclic, direction of first and
+		 * last bevel points matches direction of CV handle.
+		 *
+		 * This is getting calculated earlier when we know
+		 * CV's handles and here we might simply skip evaluation
+		 * of direction for this guys.
+		 */
 
-	nr = bl->nr;
+		bevp0 = (BevPoint *)(bl + 1);
+		bevp1 = bevp0 + 1;
+		bevp2 = bevp1 + 1;
+
+		nr = bl->nr - 2;
+	}
+
 	while (nr--) {
 		/* totally simple */
 		bisect_v3_v3v3v3(bevp1->dir, bevp0->vec, bevp1->vec, bevp2->vec);
@@ -2125,23 +2124,31 @@
 
 static void make_bevel_list_3D_zup(BevList *bl)
 {
-	BevPoint *bevp2, *bevp1, *bevp0; /* standard for all make_bevel_list_3D_* funcs */
-	int nr;

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list