Revision: 49144
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=49144
Author:   campbellbarton
Date:     2012-07-23 15:03:54 +0000 (Mon, 23 Jul 2012)
Log Message:
-----------
svn merge ^/trunk/blender -r49118:49143

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

Modified Paths:
--------------
    branches/soc-2011-tomato/doc/python_api/rst/bge.logic.rst
    branches/soc-2011-tomato/intern/cycles/blender/blender_object.cpp
    branches/soc-2011-tomato/intern/cycles/blender/blender_sync.cpp
    branches/soc-2011-tomato/intern/cycles/blender/blender_sync.h
    branches/soc-2011-tomato/intern/cycles/kernel/kernel_types.h
    branches/soc-2011-tomato/intern/itasc/Armature.cpp
    
branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_data_mesh.py
    branches/soc-2011-tomato/source/blender/blenfont/intern/blf_lang.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/anim.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/depsgraph.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/material.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/object.c
    branches/soc-2011-tomato/source/blender/blenkernel/intern/scene.c
    branches/soc-2011-tomato/source/blender/blenlib/BLI_math_rotation.h
    branches/soc-2011-tomato/source/blender/blenlib/intern/math_geom.c
    branches/soc-2011-tomato/source/blender/blenlib/intern/math_rotation.c
    branches/soc-2011-tomato/source/blender/blenloader/intern/readfile.c
    
branches/soc-2011-tomato/source/blender/editors/animation/anim_channels_defines.c
    branches/soc-2011-tomato/source/blender/editors/mesh/editmesh_tools.c
    branches/soc-2011-tomato/source/blender/editors/space_view3d/view3d_edit.c
    branches/soc-2011-tomato/source/blender/editors/space_view3d/view3d_view.c
    branches/soc-2011-tomato/source/blender/makesrna/intern/rna_userdef.c
    branches/soc-2011-tomato/source/blender/python/bmesh/bmesh_py_types.c
    branches/soc-2011-tomato/source/blender/python/generic/bpy_internal_import.c
    
branches/soc-2011-tomato/source/gameengine/Converter/KX_BlenderSceneConverter.cpp
    
branches/soc-2011-tomato/source/gameengine/Converter/KX_BlenderSceneConverter.h
    branches/soc-2011-tomato/source/gameengine/Ketsji/KX_CameraActuator.cpp
    branches/soc-2011-tomato/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
    branches/soc-2011-tomato/source/gameengine/Ketsji/KX_PythonInit.cpp

Property Changed:
----------------
    branches/soc-2011-tomato/
    branches/soc-2011-tomato/source/blender/editors/interface/interface.c
    branches/soc-2011-tomato/source/blender/editors/space_outliner/


Property changes on: branches/soc-2011-tomato
___________________________________________________________________
Modified: svn:mergeinfo
   - 
/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/vgroup_modifiers:38694-39989
/trunk/blender:36831-49118
   + 
/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/vgroup_modifiers:38694-39989
/trunk/blender:36831-49143

Modified: branches/soc-2011-tomato/doc/python_api/rst/bge.logic.rst
===================================================================
--- branches/soc-2011-tomato/doc/python_api/rst/bge.logic.rst   2012-07-23 
14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/doc/python_api/rst/bge.logic.rst   2012-07-23 
15:03:54 UTC (rev 49144)
@@ -172,7 +172,7 @@
 
    Restarts the current game by reloading the .blend file (the last saved 
version, not what is currently running).
    
-.. function:: LibLoad(blend, type, data, load_actions=False, verbose=False)
+.. function:: LibLoad(blend, type, data, load_actions=False, verbose=False, 
load_scripts=True)
    
    Converts the all of the datablocks of the given type from the given blend.
    
@@ -186,6 +186,8 @@
    :type load_actions: bool
    :arg verbose: Whether or not to print debugging information (e.g., 
"SceneName: Scene")
    :type verbose: bool
+   :arg load_scripts: Whether or not to load text datablocks as well (can be 
disabled for some extra security)
+   :type load_scripts: bool
    
 .. function:: LibNew(name, type, data)
 

Modified: branches/soc-2011-tomato/intern/cycles/blender/blender_object.cpp
===================================================================
--- branches/soc-2011-tomato/intern/cycles/blender/blender_object.cpp   
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/intern/cycles/blender/blender_object.cpp   
2012-07-23 15:03:54 UTC (rev 49144)
@@ -306,6 +306,7 @@
                for(b_sce.objects.begin(b_ob); b_ob != b_sce.objects.end(); 
++b_ob) {
                        bool hide = (render_layer.use_viewport_visibility)? 
b_ob->hide(): b_ob->hide_render();
                        uint ob_layer = get_layer(b_ob->layers(), 
b_ob->layers_local_view(), object_is_light(*b_ob));
+                       CYCLES_LOCAL_LAYER_HACK(render_layer.use_localview, 
ob_layer);
                        hide = hide || !(ob_layer & scene_layer);
 
                        if(!hide) {

Modified: branches/soc-2011-tomato/intern/cycles/blender/blender_sync.cpp
===================================================================
--- branches/soc-2011-tomato/intern/cycles/blender/blender_sync.cpp     
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/intern/cycles/blender/blender_sync.cpp     
2012-07-23 15:03:54 UTC (rev 49144)
@@ -220,7 +220,9 @@
                        layer = layername.c_str();
                }
                else {
+                       render_layer.use_localview = (b_v3d.local_view() ? true 
: false);
                        render_layer.scene_layer = get_layer(b_v3d.layers(), 
b_v3d.layers_local_view());
+                       CYCLES_LOCAL_LAYER_HACK(render_layer.use_localview, 
render_layer.scene_layer);
                        render_layer.layer = render_layer.scene_layer;
                        render_layer.holdout_layer = 0;
                        render_layer.material_override = PointerRNA_NULL;
@@ -246,6 +248,7 @@
                        render_layer.material_override = 
b_rlay->material_override();
                        render_layer.use_background = b_rlay->use_sky();
                        render_layer.use_viewport_visibility = false;
+                       render_layer.use_localview = false;
                        render_layer.samples = b_rlay->samples();
                }
 

Modified: branches/soc-2011-tomato/intern/cycles/blender/blender_sync.h
===================================================================
--- branches/soc-2011-tomato/intern/cycles/blender/blender_sync.h       
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/intern/cycles/blender/blender_sync.h       
2012-07-23 15:03:54 UTC (rev 49144)
@@ -128,10 +128,25 @@
                BL::Material material_override;
                bool use_background;
                bool use_viewport_visibility;
+               bool use_localview;
                int samples;
        } render_layer;
 };
 
+/* we don't have spare bits for localview (normally 20-28)
+ * because PATH_RAY_LAYER_SHIFT uses 20-32.
+ * So - check if we have localview and if so, shift local
+ * view bits down to 1-8, since this is done for the view
+ * port only - it should be OK and not conflict with
+ * render layers. - Campbell.
+ *
+ * ... as an alternative we could use uint64_t
+ */
+#define CYCLES_LOCAL_LAYER_HACK(use_localview, layer)   \
+       if (use_localview) {                                \
+               layer >>= 20;                                   \
+       } (void)0
+
 CCL_NAMESPACE_END
 
 #endif /* __BLENDER_SYNC_H__ */

Modified: branches/soc-2011-tomato/intern/cycles/kernel/kernel_types.h
===================================================================
--- branches/soc-2011-tomato/intern/cycles/kernel/kernel_types.h        
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/intern/cycles/kernel/kernel_types.h        
2012-07-23 15:03:54 UTC (rev 49144)
@@ -172,6 +172,8 @@
 
        PATH_RAY_ALL = (1|2|4|8|16|32|64|128|256|512),
 
+       /* this gives collisions with localview bits
+        * see: CYCLES_LOCAL_LAYER_HACK(), grr - Campbell */
        PATH_RAY_LAYER_SHIFT = (32-20)
 };
 

Modified: branches/soc-2011-tomato/intern/itasc/Armature.cpp
===================================================================
--- branches/soc-2011-tomato/intern/itasc/Armature.cpp  2012-07-23 14:48:19 UTC 
(rev 49143)
+++ branches/soc-2011-tomato/intern/itasc/Armature.cpp  2012-07-23 15:03:54 UTC 
(rev 49144)
@@ -319,7 +319,7 @@
                        return iConstraint;
                }
        }
-       if (m_finalized)  {
+       if (m_finalized) {
                if (_freeParam && _param)
                        free(_param);
                return -1;

Modified: 
branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_data_mesh.py
===================================================================
--- 
branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_data_mesh.py  
    2012-07-23 14:48:19 UTC (rev 49143)
+++ 
branches/soc-2011-tomato/release/scripts/startup/bl_ui/properties_data_mesh.py  
    2012-07-23 15:03:54 UTC (rev 49144)
@@ -148,7 +148,7 @@
 
         col = row.column(align=True)
         col.operator("object.vertex_group_add", icon='ZOOMIN', text="")
-        col.operator("object.vertex_group_remove", icon='ZOOMOUT', text="")
+        col.operator("object.vertex_group_remove", icon='ZOOMOUT', 
text="").all = False
         col.menu("MESH_MT_vertex_group_specials", icon='DOWNARROW_HLT', 
text="")
         if group:
             col.separator()

Modified: branches/soc-2011-tomato/source/blender/blenfont/intern/blf_lang.c
===================================================================
--- branches/soc-2011-tomato/source/blender/blenfont/intern/blf_lang.c  
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/source/blender/blenfont/intern/blf_lang.c  
2012-07-23 15:03:54 UTC (rev 49144)
@@ -82,7 +82,7 @@
        "spanish", "es",
        "catalan", "ca_AD",
        "czech", "cs_CZ",
-       "ptb", "pt",
+       "portuguese", "pt",
 #if defined(_WIN32) && !defined(FREE_WINDOWS)
        "Chinese (Simplified)_China.1252", "zh_CN",
        "Chinese (Traditional)_China.1252", "zh_TW",

Modified: branches/soc-2011-tomato/source/blender/blenkernel/intern/anim.c
===================================================================
--- branches/soc-2011-tomato/source/blender/blenkernel/intern/anim.c    
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/source/blender/blenkernel/intern/anim.c    
2012-07-23 15:03:54 UTC (rev 49144)
@@ -1458,12 +1458,18 @@
 
                                /* particle rotation uses x-axis as the aligned 
axis, so pre-rotate the object accordingly */
                                if ((part->draw & PART_DRAW_ROTATE_OB) == 0) {
-                                       float xvec[3], q[4];
+                                       float xvec[3], q[4], size_mat[4][4], 
original_size[3];
+
+                                       mat4_to_size(original_size, obmat);
+                                       size_to_mat4(size_mat, original_size);
+
                                        xvec[0] = -1.f;
                                        xvec[1] = xvec[2] = 0;
                                        vec_to_quat(q, xvec, ob->trackflag, 
ob->upflag);
                                        quat_to_mat4(obmat, q);
                                        obmat[3][3] = 1.0f;
+                                       
+                                       mult_m4_m4m4(obmat, obmat, size_mat);
                                }
                                
                                /* Normal particles and cached hair live in 
global space so we need to

Modified: branches/soc-2011-tomato/source/blender/blenkernel/intern/depsgraph.c
===================================================================
--- branches/soc-2011-tomato/source/blender/blenkernel/intern/depsgraph.c       
2012-07-23 14:48:19 UTC (rev 49143)
+++ branches/soc-2011-tomato/source/blender/blenkernel/intern/depsgraph.c       
2012-07-23 15:03:54 UTC (rev 49144)
@@ -352,10 +352,9 @@
 static void dag_add_material_driver_relations(DagForest *dag, DagNode *node, 
Material *ma);
 
 /* recursive handling for material nodetree drivers */
-static void dag_add_material_nodetree_driver_relations(DagForest *dag, DagNode 
*node, bNodeTree *ntree, Material *rootma)
+static void dag_add_material_nodetree_driver_relations(DagForest *dag, DagNode 
*node, bNodeTree *ntree)
 {
        bNode *n;
-       Material *ma;
 
        /* nodetree itself */
        if (ntree->adt) {
@@ -364,21 +363,29 @@
        
        /* nodetree's nodes... */
        for (n = ntree->nodes.first; n; n = n->next) {
-               if (n->id && GS(n->id->name) == ID_MA) {
-                       ma = (Material *)n->id;
-                       if (ma != rootma) {
-                               dag_add_material_driver_relations(dag, node, 
ma);
+               if (n->id) {
+                       if (GS(n->id->name) == ID_MA) {
+                               dag_add_material_driver_relations(dag, node, 
(Material *)n->id);
                        }
+                       else if (n->type == NODE_GROUP) {
+                               dag_add_material_nodetree_driver_relations(dag, 
node, (bNodeTree *)n->id);
+                       }
                }
-               else if (n->type == NODE_GROUP && n->id) {
-                       dag_add_material_nodetree_driver_relations(dag, node, 
(bNodeTree *)n->id, rootma);
-               }
        }
 }
 
 /* recursive handling for material drivers */
 static void dag_add_material_driver_relations(DagForest *dag, DagNode *node, 
Material *ma)
 {
+       /* Prevent infinite recursion by checking (and tagging the material) as 
having been visited 
+        * already (see build_dag()). This assumes ma->id.flag & LIB_DOIT isn't 
set by anything else
+        * in the meantime... [#32017]
+        */
+       if (ma->id.flag & LIB_DOIT)
+               return;
+       else
+               ma->id.flag |= LIB_DOIT;
+       
        /* material itself */
        if (ma->adt) {
                dag_add_driver_relation(ma->adt, dag, node, 1);

@@ Diff output truncated at 10240 characters. @@
_______________________________________________
Bf-blender-cvs mailing list
[email protected]
http://lists.blender.org/mailman/listinfo/bf-blender-cvs

Reply via email to