Revision: 45432
          
http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=45432
Author:   kjym3
Date:     2012-04-06 03:37:27 +0000 (Fri, 06 Apr 2012)
Log Message:
-----------
Merged changes in the trunk up to revision 45431.

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

Modified Paths:
--------------
    branches/soc-2008-mxcurioni/doc/manpage/blender.1
    branches/soc-2008-mxcurioni/intern/cycles/blender/addon/properties.py
    branches/soc-2008-mxcurioni/intern/cycles/blender/addon/ui.py
    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/device/device_opencl.cpp
    branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_accumulate.h
    branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_path.h
    branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_types.h
    branches/soc-2008-mxcurioni/intern/cycles/render/integrator.cpp
    branches/soc-2008-mxcurioni/intern/cycles/render/integrator.h
    branches/soc-2008-mxcurioni/intern/cycles/render/session.cpp
    branches/soc-2008-mxcurioni/intern/cycles/util/util_math.h
    branches/soc-2008-mxcurioni/release/datafiles/fonts/droidsans.ttf.gz
    
branches/soc-2008-mxcurioni/release/scripts/presets/interface_theme/back_to_black.xml
    
branches/soc-2008-mxcurioni/release/scripts/presets/interface_theme/blender_24x.xml
    
branches/soc-2008-mxcurioni/release/scripts/presets/interface_theme/elsyiun.xml
    
branches/soc-2008-mxcurioni/release/scripts/presets/interface_theme/hexagon.xml
    
branches/soc-2008-mxcurioni/release/scripts/presets/interface_theme/ubuntu_ambiance.xml
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_data_armature.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_data_curve.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_data_mesh.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_object.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_particle.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_cloth.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_dynamicpaint.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_field.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_smoke.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_softbody.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_texture.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_dopesheet.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_graph.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_image.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_info.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_nla.py
    branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/space_sequencer.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/release/text/readme.html
    branches/soc-2008-mxcurioni/source/blender/blenfont/intern/blf_lang.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/colortools.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/customdata.c
    branches/soc-2008-mxcurioni/source/blender/blenkernel/intern/key.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/intern/bmesh_core.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/intern/bmesh_core.h
    branches/soc-2008-mxcurioni/source/blender/bmesh/intern/bmesh_mesh_conv.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/intern/bmesh_mods.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/intern/bmesh_mods.h
    branches/soc-2008-mxcurioni/source/blender/bmesh/operators/bmo_dissolve.c
    
branches/soc-2008-mxcurioni/source/blender/bmesh/operators/bmo_join_triangles.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/operators/bmo_primitive.c
    branches/soc-2008-mxcurioni/source/blender/bmesh/tools/BME_bevel.c
    branches/soc-2008-mxcurioni/source/blender/editors/armature/poseobject.c
    
branches/soc-2008-mxcurioni/source/blender/editors/include/UI_interface_icons.h
    
branches/soc-2008-mxcurioni/source/blender/editors/interface/interface_icons.c
    
branches/soc-2008-mxcurioni/source/blender/editors/interface/interface_regions.c
    
branches/soc-2008-mxcurioni/source/blender/editors/interface/interface_templates.c
    
branches/soc-2008-mxcurioni/source/blender/editors/interface/interface_widgets.c
    branches/soc-2008-mxcurioni/source/blender/editors/mesh/editmesh_tools.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_intern.h
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_ops.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_shapekey.c
    branches/soc-2008-mxcurioni/source/blender/editors/object/object_vgroup.c
    branches/soc-2008-mxcurioni/source/blender/editors/physics/particle_edit.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_node/drawnode.c
    branches/soc-2008-mxcurioni/source/blender/editors/space_view3d/drawmesh.c
    
branches/soc-2008-mxcurioni/source/blender/gpu/intern/gpu_shader_material.glsl
    
branches/soc-2008-mxcurioni/source/blender/gpu/intern/gpu_shader_material.glsl.c
    branches/soc-2008-mxcurioni/source/blender/makesdna/DNA_key_types.h
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_key.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_mesh_utils.h
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_nodetree.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_object.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_texture.c
    branches/soc-2008-mxcurioni/source/blender/makesrna/intern/rna_userdef.c
    branches/soc-2008-mxcurioni/source/blender/python/bmesh/bmesh_py_utils.c
    
branches/soc-2008-mxcurioni/source/blender/windowmanager/intern/wm_operators.c
    
branches/soc-2008-mxcurioni/source/blenderplayer/bad_level_call_stubs/stubs.c
    
branches/soc-2008-mxcurioni/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    branches/soc-2008-mxcurioni/source/gameengine/Ketsji/KX_Dome.cpp
    branches/soc-2008-mxcurioni/source/gameengine/Ketsji/KX_KetsjiEngine.cpp
    branches/soc-2008-mxcurioni/source/gameengine/VideoTexture/VideoFFmpeg.cpp
    branches/soc-2008-mxcurioni/source/gameengine/VideoTexture/VideoFFmpeg.h

Added Paths:
-----------
    branches/soc-2008-mxcurioni/source/tools/update_themes.py

Property Changed:
----------------
    branches/soc-2008-mxcurioni/
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_data_armature.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_data_mesh.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_particle.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_field.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_physics_smoke.py
    
branches/soc-2008-mxcurioni/release/scripts/startup/bl_ui/properties_texture.py


Property changes on: branches/soc-2008-mxcurioni
___________________________________________________________________
Modified: svn:mergeinfo
   - 
/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
/trunk/blender:34011-39896,39898-40096,40098-44221,44223-44419,44421-45383
   + 
/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
/trunk/blender:34011-39896,39898-40096,40098-44221,44223-44419,44421-45431

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

Modified: branches/soc-2008-mxcurioni/intern/cycles/blender/addon/properties.py
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/blender/addon/properties.py       
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/blender/addon/properties.py       
2012-04-06 03:37:27 UTC (rev 45432)
@@ -174,6 +174,13 @@
                 default=0,
                 )
 
+        cls.sample_clamp = FloatProperty(
+                name="Clamp",
+                description="If non-zero, the maximum value for a sample, 
higher values will be scaled down to avoid too much noise and slow convergence 
at the cost of accuracy.",
+                min=0.0, max=1e8,
+                default=0.0,
+                )
+
         cls.debug_tile_size = IntProperty(
                 name="Tile Size",
                 description="",

Modified: branches/soc-2008-mxcurioni/intern/cycles/blender/addon/ui.py
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/blender/addon/ui.py       
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/blender/addon/ui.py       
2012-04-06 03:37:27 UTC (rev 45432)
@@ -67,6 +67,7 @@
         sub.prop(cscene, "samples", text="Render")
         sub.prop(cscene, "preview_samples", text="Preview")
         sub.prop(cscene, "seed")
+        sub.prop(cscene, "sample_clamp")
 
         sub = col.column(align=True)
         sub.label("Transparency:")
@@ -727,7 +728,7 @@
 
         row = layout.row()
 
-        row.column().prop(mapping, "location")
+        row.column().prop(mapping, "translation")
         row.column().prop(mapping, "rotation")
         row.column().prop(mapping, "scale")
 

Modified: branches/soc-2008-mxcurioni/intern/cycles/blender/blender_shader.cpp
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/blender/blender_shader.cpp        
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/blender/blender_shader.cpp        
2012-04-06 03:37:27 UTC (rev 45432)
@@ -80,7 +80,7 @@
        if(!b_mapping)
                return;
 
-       mapping->translation = get_float3(b_mapping.location());
+       mapping->translation = get_float3(b_mapping.translation());
        mapping->rotation = get_float3(b_mapping.rotation());
        mapping->scale = get_float3(b_mapping.scale());
 
@@ -94,7 +94,7 @@
        if(!b_mapping)
                return;
 
-       mapping->translation = get_float3(b_mapping.location());
+       mapping->translation = get_float3(b_mapping.translation());
        mapping->rotation = get_float3(b_mapping.rotation());
        mapping->scale = get_float3(b_mapping.scale());
 }

Modified: branches/soc-2008-mxcurioni/intern/cycles/blender/blender_sync.cpp
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/blender/blender_sync.cpp  
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/blender/blender_sync.cpp  
2012-04-06 03:37:27 UTC (rev 45432)
@@ -157,6 +157,8 @@
 
        integrator->layer_flag = render_layer.layer;
 
+       integrator->sample_clamp = get_float(cscene, "sample_clamp");
+
        if(integrator->modified(previntegrator))
                integrator->tag_update(scene);
 }

Modified: branches/soc-2008-mxcurioni/intern/cycles/device/device_opencl.cpp
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/device/device_opencl.cpp  
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/device/device_opencl.cpp  
2012-04-06 03:37:27 UTC (rev 45432)
@@ -300,7 +300,7 @@
                
                /* full shading only on NVIDIA cards at the moment */
                if(platform_name == "NVIDIA CUDA")
-                       build_options += "-D__KERNEL_SHADING__ 
-D__MULTI_CLOSURE__ -cl-nv-maxrregcount=24 -cl-nv-verbose ";
+                       build_options += "-D__MULTI_CLOSURE__ 
-cl-nv-maxrregcount=24 -cl-nv-verbose ";
                if(platform_name == "Apple" || platform_name == "AMD 
Accelerated Parallel Processing")
                        build_options += " -D__CL_NO_FLOAT3__ ";
 

Modified: branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_accumulate.h
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_accumulate.h        
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_accumulate.h        
2012-04-06 03:37:27 UTC (rev 45432)
@@ -294,5 +294,49 @@
 #endif
 }
 
+__device_inline void path_radiance_clamp(PathRadiance *L, float3 *L_sum, float 
clamp)
+{
+       float sum = fabsf(L_sum->x) + fabsf(L_sum->y) + fabsf(L_sum->z);
+
+       if(!isfinite(sum)) {
+               /* invalid value, reject */
+               *L_sum = make_float3(0.0f, 0.0f, 0.0f);
+
+#ifdef __PASSES__
+               if(L->use_light_pass) {
+                       L->direct_diffuse = make_float3(0.0f, 0.0f, 0.0f);
+                       L->direct_glossy = make_float3(0.0f, 0.0f, 0.0f);
+                       L->direct_transmission = make_float3(0.0f, 0.0f, 0.0f);
+
+                       L->indirect_diffuse = make_float3(0.0f, 0.0f, 0.0f);
+                       L->indirect_glossy = make_float3(0.0f, 0.0f, 0.0f);
+                       L->indirect_transmission = make_float3(0.0f, 0.0f, 
0.0f);
+
+                       L->emission = make_float3(0.0f, 0.0f, 0.0f);
+               }
+#endif
+       }
+       else if(sum > clamp) {
+               /* value to high, scale down */
+               float scale = clamp/sum;
+
+               *L_sum *= scale;
+
+#ifdef __PASSES__
+               if(L->use_light_pass) {
+                       L->direct_diffuse *= scale;
+                       L->direct_glossy *= scale;
+                       L->direct_transmission *= scale;
+
+                       L->indirect_diffuse *= scale;
+                       L->indirect_glossy *= scale;
+                       L->indirect_transmission *= scale;
+
+                       L->emission *= scale;
+               }
+#endif
+       }
+}
+
 CCL_NAMESPACE_END
 

Modified: branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_path.h
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_path.h      
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_path.h      
2012-04-06 03:37:27 UTC (rev 45432)
@@ -396,6 +396,10 @@
 
        float3 L_sum = path_radiance_sum(&L);
 
+#ifdef __CLAMP_SAMPLE__
+       path_radiance_clamp(&L, &L_sum, kernel_data.integrator.sample_clamp);
+#endif
+
        kernel_write_light_passes(kg, buffer, &L, sample);
 
        return make_float4(L_sum.x, L_sum.y, L_sum.z, 1.0f - L_transparent);

Modified: branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_types.h
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_types.h     
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/kernel/kernel_types.h     
2012-04-06 03:37:27 UTC (rev 45432)
@@ -45,7 +45,7 @@
 #endif
 
 #ifdef __KERNEL_OPENCL__
-//#define __KERNEL_SHADING__
+#define __KERNEL_SHADING__
 //#define __KERNEL_ADV_SHADING__
 #endif
 
@@ -60,6 +60,7 @@
 #define __RAY_DIFFERENTIALS__
 #define __CAMERA_CLIPPING__
 #define __INTERSECTION_REFINE__
+#define __CLAMP_SAMPLE__
 
 #ifdef __KERNEL_SHADING__
 #define __SVM__
@@ -521,7 +522,12 @@
 
        /* render layer */
        int layer_flag;
-       int pad1, pad2;
+
+       /* clamp */
+       float sample_clamp;
+
+       /* padding */
+       int pad;
 } KernelIntegrator;
 
 typedef struct KernelBVH {

Modified: branches/soc-2008-mxcurioni/intern/cycles/render/integrator.cpp
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/render/integrator.cpp     
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/render/integrator.cpp     
2012-04-06 03:37:27 UTC (rev 45432)
@@ -43,6 +43,7 @@
        no_caustics = false;
        seed = 0;
        layer_flag = ~0;
+       sample_clamp = 0.0f;
 
        need_update = true;
 }
@@ -85,6 +86,8 @@
 
        kintegrator->use_ambient_occlusion =
                ((dscene->data.film.pass_flag & PASS_AO) || 
dscene->data.background.ao_factor != 0.0f);
+       
+       kintegrator->sample_clamp = (sample_clamp == 0.0f)? FLT_MAX: 
sample_clamp*3.0f;
 
        /* sobol directions table */
        int dimensions = PRNG_BASE_NUM + (max_bounce + transparent_max_bounce + 
2)*PRNG_BOUNCE_NUM;
@@ -117,7 +120,8 @@
                transparent_shadows == integrator.transparent_shadows &&
                no_caustics == integrator.no_caustics &&
                layer_flag == integrator.layer_flag &&
-               seed == integrator.seed);
+               seed == integrator.seed &&
+               sample_clamp == integrator.sample_clamp);
 }
 
 void Integrator::tag_update(Scene *scene)

Modified: branches/soc-2008-mxcurioni/intern/cycles/render/integrator.h
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/render/integrator.h       
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/render/integrator.h       
2012-04-06 03:37:27 UTC (rev 45432)
@@ -45,6 +45,8 @@
        int seed;
        int layer_flag;
 
+       float sample_clamp;
+
        bool need_update;
 
        Integrator();

Modified: branches/soc-2008-mxcurioni/intern/cycles/render/session.cpp
===================================================================
--- branches/soc-2008-mxcurioni/intern/cycles/render/session.cpp        
2012-04-05 22:06:45 UTC (rev 45431)
+++ branches/soc-2008-mxcurioni/intern/cycles/render/session.cpp        
2012-04-06 03:37:27 UTC (rev 45432)
@@ -164,7 +164,7 @@
        paused_time = 0.0;
 
        if(!params.background)
-               progress.set_start_time(start_time - paused_time);

@@ 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