[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [45432] branches/soc-2008-mxcurioni: Merged changes in the trunk up to revision 45431.
Tamito Kajiyama
rd6t-kjym at asahi-net.or.jp
Fri Apr 6 05:37:27 CEST 2012
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. @@
More information about the Bf-blender-cvs
mailing list