[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [42562] branches/soc-2008-mxcurioni: Merged changes in the trunk up to revision 42556.

Tamito Kajiyama rd6t-kjym at asahi-net.or.jp
Sat Dec 10 21:54:51 CET 2011


Revision: 42562
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42562
Author:   kjym3
Date:     2011-12-10 20:54:43 +0000 (Sat, 10 Dec 2011)
Log Message:
-----------
Merged changes in the trunk up to revision 42556.

Conflicts resolved:
source/blender/editors/space_view3d/drawobject.c

Revision Links:
--------------
    http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=42556

Modified Paths:
--------------
    branches/soc-2008-mxcurioni/SConstruct
    branches/soc-2008-mxcurioni/build_files/cmake/cmake_qtcreator_project.py
    branches/soc-2008-mxcurioni/build_files/scons/tools/Blender.py
    branches/soc-2008-mxcurioni/build_files/scons/tools/btools.py
    branches/soc-2008-mxcurioni/doc/manpage/blender.1
    branches/soc-2008-mxcurioni/extern/libmv/libmv/numeric/numeric.h
    branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/brute_region_tracker.cc
    branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.cc
    branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.h
    branches/soc-2008-mxcurioni/extern/libmv/libmv-capi.cpp
    branches/soc-2008-mxcurioni/extern/libmv/libmv-capi.h
    branches/soc-2008-mxcurioni/extern/libmv/third_party/glog/src/config.h
    branches/soc-2008-mxcurioni/intern/cycles/blender/addon/ui.py
    branches/soc-2008-mxcurioni/intern/cycles/blender/blender_mesh.cpp
    branches/soc-2008-mxcurioni/intern/cycles/blender/blender_object.cpp
    branches/soc-2008-mxcurioni/intern/cycles/blender/blender_shader.cpp
    branches/soc-2008-mxcurioni/intern/cycles/blender/blender_sync.cpp
    branches/soc-2008-mxcurioni/intern/cycles/blender/blender_sync.h
    branches/soc-2008-mxcurioni/intern/cycles/kernel/CMakeLists.txt
    branches/soc-2008-mxcurioni/intern/cycles/kernel/SConscript
    branches/soc-2008-mxcurioni/intern/cycles/render/mesh.cpp
    branches/soc-2008-mxcurioni/intern/cycles/render/sobol.cpp
    branches/soc-2008-mxcurioni/intern/cycles/render/sobol.h
    branches/soc-2008-mxcurioni/intern/cycles/util/util_md5.cpp
    branches/soc-2008-mxcurioni/release/scripts/modules/bpy_extras/image_utils.py
    branches/soc-2008-mxcurioni/release/scripts/modules/bpy_extras/io_utils.py
    branches/soc-2008-mxcurioni/release/scripts/presets/tracking_settings/default.py
    branches/soc-2008-mxcurioni/release/scripts/presets/tracking_settings/fast_motion.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_operators/object_randomize_transform.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_operators/wm.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_render.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_texture.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_clip.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_userpref.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_view3d.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_view3d_toolbar.py
    branches/soc-2008-mxcurioni/source/blender/blenkernel/BKE_DerivedMesh.h
    branches/soc-2008-mxcurioni/source/blender/blenkernel/BKE_blender.h
    branches/soc-2008-mxcurioni/source/blender/blenkernel/BKE_deform.h
    branches/soc-2008-mxcurioni/source/blender/blenkernel/BKE_mesh.h
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/DerivedMesh.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/armature.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/brush.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/cdderivedmesh.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/deform.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/dynamicpaint.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/editderivedmesh.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/mesh_validate.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/particle.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/seqeffects.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/tracking.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/unit.c
    branches/soc-2008-mxcurioni/source/blender/blenloader/intern/readfile.c
    branches/soc-2008-mxcurioni/source/blender/editors/animation/anim_ipo_utils.c
    branches/soc-2008-mxcurioni/source/blender/editors/animation/keyframing.c
    branches/soc-2008-mxcurioni/source/blender/editors/armature/editarmature.c
    branches/soc-2008-mxcurioni/source/blender/editors/armature/poseobject.c
    branches/soc-2008-mxcurioni/source/blender/editors/interface/interface_handlers.c
    branches/soc-2008-mxcurioni/source/blender/editors/interface/resources.c
    branches/soc-2008-mxcurioni/source/blender/editors/mesh/editmesh.c
    branches/soc-2008-mxcurioni/source/blender/editors/mesh/editmesh_mods.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_add.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_ops.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_select.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_vgroup.c
    branches/soc-2008-mxcurioni/source/blender/editors/render/render_internal.c
    branches/soc-2008-mxcurioni/source/blender/editors/screen/screendump.c
    branches/soc-2008-mxcurioni/source/blender/editors/sculpt_paint/paint_vertex.c
    branches/soc-2008-mxcurioni/source/blender/editors/sculpt_paint/sculpt.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_clip/clip_graph_draw.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_node/node_draw.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_node/node_edit.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_outliner/outliner_select.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_outliner/outliner_tree.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_view3d/drawmesh.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_view3d/drawobject.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_view3d/view3d_snap.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_view3d/view3d_view.c
    branches/soc-2008-mxcurioni/source/blender/gpu/GPU_draw.h
    branches/soc-2008-mxcurioni/source/blender/gpu/GPU_material.h
    branches/soc-2008-mxcurioni/source/blender/gpu/intern/gpu_codegen.c
    branches/soc-2008-mxcurioni/source/blender/gpu/intern/gpu_draw.c
    branches/soc-2008-mxcurioni/source/blender/gpu/intern/gpu_material.c
    branches/soc-2008-mxcurioni/source/blender/makesdna/DNA_object_types.h
    branches/soc-2008-mxcurioni/source/blender/makesdna/DNA_userdef_types.h
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_access.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_curve.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_main_api.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_nodetree.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_object_api.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_tracking.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_userdef.c
    branches/soc-2008-mxcurioni/source/blender/modifiers/intern/MOD_hook.c
    branches/soc-2008-mxcurioni/source/blender/modifiers/intern/MOD_mask.c
    branches/soc-2008-mxcurioni/source/blender/modifiers/intern/MOD_weightvg_util.c
    branches/soc-2008-mxcurioni/source/blender/python/intern/bpy_driver.c
    branches/soc-2008-mxcurioni/source/blender/python/intern/gpu.c
    branches/soc-2008-mxcurioni/source/blender/render/intern/source/pipeline.c
    branches/soc-2008-mxcurioni/source/blender/render/intern/source/render_texture.c
    branches/soc-2008-mxcurioni/source/blender/windowmanager/WM_api.h
    branches/soc-2008-mxcurioni/source/blender/windowmanager/intern/wm_draw.c
    branches/soc-2008-mxcurioni/source/blender/windowmanager/intern/wm_gesture.c
    branches/soc-2008-mxcurioni/source/gameengine/Converter/BL_SkinDeformer.cpp
    branches/soc-2008-mxcurioni/source/gameengine/Ketsji/BL_BlenderShader.cpp

Added Paths:
-----------
    branches/soc-2008-mxcurioni/extern/libmv/third_party/glog/src/config_freebsd.h
    branches/soc-2008-mxcurioni/release/scripts/presets/tracking_settings/blurry_footage.py

Removed Paths:
-------------
    branches/soc-2008-mxcurioni/release/scripts/presets/tracking_settings/blurry_movie.py

Property Changed:
----------------
    branches/soc-2008-mxcurioni/
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_texture.py
    branches/soc-2008-mxcurioni/source/blender/editors/space_outliner/


Property changes on: branches/soc-2008-mxcurioni
___________________________________________________________________
Modified: svn:mergeinfo
   - /branches/soc-2011-cucumber:37517
/branches/soc-2011-tomato:42376,42378-42379
/trunk/blender:34011-39896,39898-40096,40098-42425
   + /branches/soc-2011-cucumber:37517
/branches/soc-2011-tomato:42376,42378-42379,42397,42400
/trunk/blender:34011-39896,39898-40096,40098-42556

Modified: branches/soc-2008-mxcurioni/SConstruct
===================================================================
--- branches/soc-2008-mxcurioni/SConstruct	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/SConstruct	2011-12-10 20:54:43 UTC (rev 42562)
@@ -119,6 +119,12 @@
 if tempbitness in (32, 64): # only set if 32 or 64 has been given
     bitness = int(tempbitness)
 
+if bitness:
+    B.bitness = bitness
+else: 
+    B.bitness = tempbitness
+    
+
 # first check cmdline for toolset and we create env to work on
 quickie = B.arguments.get('BF_QUICK', None)
 quickdebug = B.arguments.get('BF_QUICKDEBUG', None)

Modified: branches/soc-2008-mxcurioni/build_files/cmake/cmake_qtcreator_project.py
===================================================================
--- branches/soc-2008-mxcurioni/build_files/cmake/cmake_qtcreator_project.py	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/build_files/cmake/cmake_qtcreator_project.py	2011-12-10 20:54:43 UTC (rev 42562)
@@ -47,6 +47,13 @@
 import sys
 
 
+def quote_define(define):
+    if " " in define.strip():
+        return '"%s"' % define
+    else:
+        return define
+
+
 def create_qtc_project_main():
     files = list(source_list(SOURCE_DIR, filename_check=is_project_file))
     files_rel = [os.path.relpath(f, start=PROJECT_DIR) for f in files]
@@ -99,7 +106,7 @@
         qtc_cfg = os.path.join(PROJECT_DIR, "%s.config" % FILE_NAME)
         f = open(qtc_cfg, 'w')
         f.write("// ADD PREDEFINED MACROS HERE!\n")
-        defines_final = [("#define %s %s" % item) for item in defines]
+        defines_final = [("#define %s %s" % (item[0], quote_define(item[1]))) for item in defines]
         if sys.platform != "win32":
             defines_final += cmake_compiler_defines()
         f.write("\n".join(defines_final))

Modified: branches/soc-2008-mxcurioni/build_files/scons/tools/Blender.py
===================================================================
--- branches/soc-2008-mxcurioni/build_files/scons/tools/Blender.py	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/build_files/scons/tools/Blender.py	2011-12-10 20:54:43 UTC (rev 42562)
@@ -50,6 +50,7 @@
 arguments = None
 targets = None
 resources = []
+bitness = 0
 
 #some internals
 blenderdeps = [] # don't manipulate this one outside this module!

Modified: branches/soc-2008-mxcurioni/build_files/scons/tools/btools.py
===================================================================
--- branches/soc-2008-mxcurioni/build_files/scons/tools/btools.py	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/build_files/scons/tools/btools.py	2011-12-10 20:54:43 UTC (rev 42562)
@@ -157,7 +157,7 @@
             'WITH_BF_JEMALLOC', 'WITH_BF_STATICJEMALLOC', 'BF_JEMALLOC', 'BF_JEMALLOC_INC', 'BF_JEMALLOC_LIBPATH', 'BF_JEMALLOC_LIB', 'BF_JEMALLOC_LIB_STATIC',
             'BUILDBOT_BRANCH',
             'WITH_BF_3DMOUSE', 'WITH_BF_STATIC3DMOUSE', 'BF_3DMOUSE', 'BF_3DMOUSE_INC', 'BF_3DMOUSE_LIB', 'BF_3DMOUSE_LIBPATH', 'BF_3DMOUSE_LIB_STATIC',
-            'WITH_BF_CYCLES', 'WITH_BF_CYCLES_CUDA_BINARIES' 'BF_CYCLES_CUDA_NVCC', 'BF_CYCLES_CUDA_NVCC',
+            'WITH_BF_CYCLES', 'WITH_BF_CYCLES_CUDA_BINARIES' 'BF_CYCLES_CUDA_NVCC', 'BF_CYCLES_CUDA_NVCC', 'WITH_BF_CYCLES_CUDA_THREADED_COMPILE',
             'WITH_BF_OIIO', 'WITH_BF_STATICOIIO', 'BF_OIIO', 'BF_OIIO_INC', 'BF_OIIO_LIB', 'BF_OIIO_LIB_STATIC', 'BF_OIIO_LIBPATH',
             'WITH_BF_BOOST', 'WITH_BF_STATICBOOST', 'BF_BOOST', 'BF_BOOST_INC', 'BF_BOOST_LIB', 'BF_BOOST_LIB_STATIC', 'BF_BOOST_LIBPATH'
             ]
@@ -545,6 +545,7 @@
     localopts.AddVariables(
         (BoolVariable('WITH_BF_CYCLES', 'Build with the Cycles engine', True)),
         (BoolVariable('WITH_BF_CYCLES_CUDA_BINARIES', 'Build with precompiled CUDA binaries', False)),
+        (BoolVariable('WITH_BF_CYCLES_CUDA_THREADED_COMPILE', 'Build several render kernels at once (using BF_NUMJOBS)', False)),
         ('BF_CYCLES_CUDA_NVCC', 'CUDA nvcc compiler path', ''),
         ('BF_CYCLES_CUDA_BINARIES_ARCH', 'CUDA architectures to compile binaries for', []),
 

Modified: branches/soc-2008-mxcurioni/doc/manpage/blender.1
===================================================================
(Binary files differ)

Modified: branches/soc-2008-mxcurioni/extern/libmv/libmv/numeric/numeric.h
===================================================================
--- branches/soc-2008-mxcurioni/extern/libmv/libmv/numeric/numeric.h	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/extern/libmv/libmv/numeric/numeric.h	2011-12-10 20:54:43 UTC (rev 42562)
@@ -33,7 +33,7 @@
 #include <Eigen/QR>
 #include <Eigen/SVD>
 
-#if _WIN32 || __APPLE__
+#if _WIN32 || __APPLE__ || __FreeBSD__
   void static sincos (double x, double *sinx, double *cosx) {
     *sinx = sin(x);
     *cosx = cos(x);

Modified: branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/brute_region_tracker.cc
===================================================================
--- branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/brute_region_tracker.cc	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/brute_region_tracker.cc	2011-12-10 20:54:43 UTC (rev 42562)
@@ -24,7 +24,7 @@
 #include <emmintrin.h>
 #endif
 
-#ifndef __APPLE__
+#if !defined(__APPLE__) && !defined(__FreeBSD__)
 // Needed for memalign on Linux and _aligned_alloc on Windows.
 #ifdef FREE_WINDOWS
 /* make sure _aligned_malloc is included */
@@ -59,6 +59,15 @@
   // they work natively with SSE types with no further work.
   CHECK_EQ(alignment, 16);
   return malloc(size);
+#elif __FreeBSD__
+  void *result;
+
+  if(posix_memalign(&result, alignment, size)) {
+    // non-zero means allocation error
+    // either no allocation or bad alignment value
+    return NULL;
+  }
+  return result;
 #else // This is for Linux.
   return memalign(alignment, size);
 #endif

Modified: branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.cc
===================================================================
--- branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.cc	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.cc	2011-12-10 20:54:43 UTC (rev 42562)
@@ -273,11 +273,31 @@
 
     // If the step was accepted, then check for termination.
     if (d.squaredNorm() < min_update_squared_distance) {
-      if (new_error > reasonable_error) {
-        LG << "Update size shrank but reasonable error ("
-           << reasonable_error << ") not achieved; failing.";
-        return true; // XXX
+      // Compute the Pearson product-moment correlation coefficient to check
+      // for sanity.
+      // TODO(keir): Put this somewhere smarter.
+      double sX=0,sY=0,sXX=0,sYY=0,sXY=0;
+      for (int r = 0; r < width; ++r) {
+        for (int c = 0; c < width; ++c) {
+          double x = image_and_gradient1_sampled(r, c, 0);
+          double y = image_and_gradient2_sampled[new_image](r, c, 0);
+          sX += x;
+          sY += y;
+          sXX += x*x;
+          sYY += y*y;
+          sXY += x*y;
+        }
       }
+      double N = width*width;
+      sX /= N, sY /= N, sXX /= N, sYY /= N, sXY /= N;
+      double correlation = (sXY-sX*sY)/sqrt(double((sXX-sX*sX)*(sYY-sY*sY)));
+      LG << "Final correlation: " << correlation;
+
+      if (correlation < minimum_correlation) {
+        LG << "Correlation " << correlation << " greater than "
+           << minimum_correlation << "; bailing.";
+        return false;
+      }
       LG << "Successful track in " << (i + 1) << " iterations.";
       return true;
     }

Modified: branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.h
===================================================================
--- branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.h	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/extern/libmv/libmv/tracking/esm_region_tracker.h	2011-12-10 20:54:43 UTC (rev 42562)
@@ -38,7 +38,8 @@
         max_iterations(16),
         min_determinant(1e-6),
         min_update_squared_distance(1e-4),
-        sigma(0.9) {}
+        sigma(0.9),
+        minimum_correlation(0.78) {}
   
   virtual ~EsmRegionTracker() {}
 
@@ -54,6 +55,7 @@
   double min_determinant;
   double min_update_squared_distance;
   double sigma;
+  double minimum_correlation;
 };
 
 }  // namespace libmv

Modified: branches/soc-2008-mxcurioni/extern/libmv/libmv-capi.cpp
===================================================================
--- branches/soc-2008-mxcurioni/extern/libmv/libmv-capi.cpp	2011-12-10 20:10:28 UTC (rev 42561)
+++ branches/soc-2008-mxcurioni/extern/libmv/libmv-capi.cpp	2011-12-10 20:54:43 UTC (rev 42562)
@@ -111,12 +111,13 @@
 
 /* ************ RegionTracker ************ */
 
-libmv_RegionTracker *libmv_pyramidRegionTrackerNew(int max_iterations, int pyramid_level, int half_window_size)
+libmv_RegionTracker *libmv_pyramidRegionTrackerNew(int max_iterations, int pyramid_level, int half_window_size, double minimum_correlation)
 {
 	libmv::EsmRegionTracker *esm_region_tracker = new libmv::EsmRegionTracker;
 	esm_region_tracker->half_window_size = half_window_size;
 	esm_region_tracker->max_iterations = max_iterations;
 	esm_region_tracker->min_determinant = 1e-4;
+	esm_region_tracker->minimum_correlation = minimum_correlation;
 
 	libmv::PyramidRegionTracker *pyramid_region_tracker =
 		new libmv::PyramidRegionTracker(esm_region_tracker, pyramid_level);
@@ -124,15 +125,16 @@
 	return (libmv_RegionTracker *)pyramid_region_tracker;
 }
 
-libmv_RegionTracker *libmv_hybridRegionTrackerNew(int max_iterations, int half_window_size)
+libmv_RegionTracker *libmv_hybridRegionTrackerNew(int max_iterations, int half_window_size, double minimum_correlation)
 {
 	libmv::EsmRegionTracker *esm_region_tracker = new libmv::EsmRegionTracker;

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list