[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58941] branches/soc-2013-cycles_mblur: Merged trunk into branch.

Gavin Howard gavin.d.howard at gmail.com
Mon Aug 5 20:58:20 CEST 2013


Revision: 58941
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58941
Author:   gdh
Date:     2013-08-05 18:58:19 +0000 (Mon, 05 Aug 2013)
Log Message:
-----------
Merged trunk into branch. Includes r58914 to r58940.

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

Modified Paths:
--------------
    branches/soc-2013-cycles_mblur/intern/cycles/CMakeLists.txt
    branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_globals.h
    branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_services.cpp
    branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_shader.cpp
    branches/soc-2013-cycles_mblur/intern/cycles/kernel/svm/svm_fresnel.h
    branches/soc-2013-cycles_mblur/intern/cycles/render/light.cpp
    branches/soc-2013-cycles_mblur/intern/cycles/render/nodes.cpp
    branches/soc-2013-cycles_mblur/source/blender/avi/intern/avi_mjpeg.c
    branches/soc-2013-cycles_mblur/source/blender/blenlib/BLI_math_vector.h
    branches/soc-2013-cycles_mblur/source/blender/bmesh/intern/bmesh_core.c
    branches/soc-2013-cycles_mblur/source/blender/editors/render/render_internal.c
    branches/soc-2013-cycles_mblur/source/blender/editors/screen/area.c
    branches/soc-2013-cycles_mblur/source/blender/editors/space_view3d/view3d_draw.c
    branches/soc-2013-cycles_mblur/source/blender/render/intern/source/initrender.c
    branches/soc-2013-cycles_mblur/source/blender/windowmanager/WM_api.h
    branches/soc-2013-cycles_mblur/source/blender/windowmanager/intern/wm_draw.c
    branches/soc-2013-cycles_mblur/source/blender/windowmanager/intern/wm_subwindow.c

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


Property changes on: branches/soc-2013-cycles_mblur
___________________________________________________________________
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
/branches/soc-2013-dingto:57424,57487,57507,57525,57599,57670,57918-57919,57981,58091,58245,58253,58587,58772,58774-58775,58828,58835
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57388-58913
   + /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
/branches/soc-2013-dingto:57424,57487,57507,57525,57599,57670,57918-57919,57981,58091,58245,58253,58587,58772,58774-58775,58828,58835
/tags/blender-2.67b-release/blender:57122
/trunk/blender:57388-58940

Modified: branches/soc-2013-cycles_mblur/intern/cycles/CMakeLists.txt
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/CMakeLists.txt	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/CMakeLists.txt	2013-08-05 18:58:19 UTC (rev 58941)
@@ -19,8 +19,8 @@
 
 	set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} /fp:fast -D_CRT_SECURE_NO_WARNINGS /Gs-")
 	set(CMAKE_CXX_FLAGS_RELEASE "${CMAKE_CXX_FLAGS_RELEASE} /Ox")
-	set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELEASE} /Ox")
-	set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_RELEASE} /Ox")
+	set(CMAKE_CXX_FLAGS_RELWITHDEBINFO "${CMAKE_CXX_FLAGS_RELWITHDEBINFO} /Ox")
+	set(CMAKE_CXX_FLAGS_MINSIZEREL "${CMAKE_CXX_FLAGS_MINSIZEREL} /Ox")
 elseif(CMAKE_COMPILER_IS_GNUCC)
 	set(CYCLES_SSE2_KERNEL_FLAGS "-ffast-math -msse -msse2 -mfpmath=sse")
 	set(CYCLES_SSE3_KERNEL_FLAGS "-ffast-math -msse -msse2 -msse3 -mssse3 -mfpmath=sse")

Modified: branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_globals.h
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_globals.h	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_globals.h	2013-08-05 18:58:19 UTC (rev 58941)
@@ -87,9 +87,10 @@
 /* thread key for thread specific data lookup */
 struct OSLThreadData {
 	OSL::ShaderGlobals globals;
-	OSL::PerThreadInfo *thread_info;
+	OSL::PerThreadInfo *osl_thread_info;
 	OSLTraceData tracedata;
 	OSL::ShadingContext *context[SHADER_CONTEXT_NUM];
+	OIIO::TextureSystem::Perthread *oiio_thread_info;
 };
 
 CCL_NAMESPACE_END

Modified: branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_services.cpp
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_services.cpp	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_services.cpp	2013-08-05 18:58:19 UTC (rev 58941)
@@ -775,8 +775,16 @@
                                 float dsdy, float dtdy, float *result)
 {
 	OSL::TextureSystem *ts = osl_ts;
-	bool status = ts->texture(filename, options, s, t, dsdx, dtdx, dsdy, dtdy, result);
+	ShaderData *sd = (ShaderData *)(sg->renderstate);
+	KernelGlobals *kg = sd->osl_globals;
+	OSLThreadData *tdata = kg->osl_tdata;
+	OIIO::TextureSystem::Perthread *thread_info = tdata->oiio_thread_info;
 
+	OIIO::TextureSystem::TextureHandle *th = ts->get_texture_handle(filename, thread_info);
+
+	bool status = ts->texture(th, thread_info,
+	                          options, s, t, dsdx, dtdx, dsdy, dtdy, result);
+
 	if(!status) {
 		if(options.nchannels == 3 || options.nchannels == 4) {
 			result[0] = 1.0f;
@@ -797,8 +805,16 @@
                                   const OSL::Vec3 &dPdz, float *result)
 {
 	OSL::TextureSystem *ts = osl_ts;
-	bool status = ts->texture3d(filename, options, P, dPdx, dPdy, dPdz, result);
+	ShaderData *sd = (ShaderData *)(sg->renderstate);
+	KernelGlobals *kg = sd->osl_globals;
+	OSLThreadData *tdata = kg->osl_tdata;
+	OIIO::TextureSystem::Perthread *thread_info = tdata->oiio_thread_info;
 
+	OIIO::TextureSystem::TextureHandle *th =  ts->get_texture_handle(filename, thread_info);
+
+	bool status = ts->texture3d(th, thread_info,
+	                            options, P, dPdx, dPdy, dPdz, result);
+
 	if(!status) {
 		if(options.nchannels == 3 || options.nchannels == 4) {
 			result[0] = 1.0f;
@@ -819,8 +835,15 @@
                                     const OSL::Vec3 &dRdx, const OSL::Vec3 &dRdy, float *result)
 {
 	OSL::TextureSystem *ts = osl_ts;
-	bool status = ts->environment(filename, options, R, dRdx, dRdy, result);
+	ShaderData *sd = (ShaderData *)(sg->renderstate);
+	KernelGlobals *kg = sd->osl_globals;
+	OSLThreadData *tdata = kg->osl_tdata;
+	OIIO::TextureSystem::Perthread *thread_info = tdata->oiio_thread_info;
 
+	OIIO::TextureSystem::TextureHandle *th =  ts->get_texture_handle(filename, thread_info);
+	bool status = ts->environment(th, thread_info,
+	                              options, R, dRdx, dRdy, result);
+
 	if(!status) {
 		if(options.nchannels == 3 || options.nchannels == 4) {
 			result[0] = 1.0f;

Modified: branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_shader.cpp
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_shader.cpp	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/kernel/osl/osl_shader.cpp	2013-08-05 18:58:19 UTC (rev 58941)
@@ -55,11 +55,13 @@
 	memset(&tdata->globals, 0, sizeof(OSL::ShaderGlobals));
 	tdata->globals.tracedata = &tdata->tracedata;
 	tdata->globals.flipHandedness = false;
-	tdata->thread_info = ss->create_thread_info();
+	tdata->osl_thread_info = ss->create_thread_info();
 
 	for(int i = 0; i < SHADER_CONTEXT_NUM; i++)
-		tdata->context[i] = ss->get_context(tdata->thread_info);
+		tdata->context[i] = ss->get_context(tdata->osl_thread_info);
 
+	tdata->oiio_thread_info = osl_globals->ts->get_perthread_info();
+
 	kg->osl_ss = (OSLShadingSystem*)ss;
 	kg->osl_tdata = tdata;
 }
@@ -75,7 +77,7 @@
 	for(int i = 0; i < SHADER_CONTEXT_NUM; i++)
 		ss->release_context(tdata->context[i]);
 
-	ss->destroy_thread_info(tdata->thread_info);
+	ss->destroy_thread_info(tdata->osl_thread_info);
 
 	delete tdata;
 

Modified: branches/soc-2013-cycles_mblur/intern/cycles/kernel/svm/svm_fresnel.h
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/kernel/svm/svm_fresnel.h	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/kernel/svm/svm_fresnel.h	2013-08-05 18:58:19 UTC (rev 58941)
@@ -31,7 +31,7 @@
 	stack_store_float(stack, out_offset, f);
 }
 
-/* Blend Weight Node */
+/* Layer Weight Node */
 
 __device void svm_node_layer_weight(ShaderData *sd, float *stack, uint4 node)
 {

Modified: branches/soc-2013-cycles_mblur/intern/cycles/render/light.cpp
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/render/light.cpp	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/render/light.cpp	2013-08-05 18:58:19 UTC (rev 58941)
@@ -517,7 +517,6 @@
 	for(size_t i = 0; i < scene->lights.size(); i++) {
 		Light *light = scene->lights[i];
 		float3 co = light->co;
-		float3 dir = normalize(light->dir);
 		int shader_id = scene->shader_manager->get_shader_id(scene->lights[i]->shader);
 		float samples = __int_as_float(light->samples);
 
@@ -559,6 +558,10 @@
 			float cosangle = cosf(angle);
 			float area = M_PI_F*radius*radius;
 			float invarea = (area > 0.0f)? 1.0f/area: 1.0f;
+			float3 dir = light->dir;
+			
+			if(len(dir) > 0.0f)
+				dir = normalize(dir);
 
 			if(light->use_mis && area > 0.0f)
 				shader_id |= SHADER_USE_MIS;
@@ -597,6 +600,10 @@
 			float3 axisv = light->axisv*(light->sizev*light->size);
 			float area = len(axisu)*len(axisv);
 			float invarea = (area > 0.0f)? 1.0f/area: 1.0f;
+			float3 dir = light->dir;
+			
+			if(len(dir) > 0.0f)
+				dir = normalize(dir);
 
 			if(light->use_mis && area > 0.0f)
 				shader_id |= SHADER_USE_MIS;
@@ -613,6 +620,10 @@
 			float invarea = (radius > 0.0f)? 1.0f/(M_PI_F*radius*radius): 1.0f;
 			float spot_angle = cosf(light->spot_angle*0.5f);
 			float spot_smooth = (1.0f - spot_angle)*light->spot_smooth;
+			float3 dir = light->dir;
+			
+			if(len(dir) > 0.0f)
+				dir = normalize(dir);
 
 			if(light->use_mis && radius > 0.0f)
 				shader_id |= SHADER_USE_MIS;

Modified: branches/soc-2013-cycles_mblur/intern/cycles/render/nodes.cpp
===================================================================
--- branches/soc-2013-cycles_mblur/intern/cycles/render/nodes.cpp	2013-08-05 18:02:21 UTC (rev 58940)
+++ branches/soc-2013-cycles_mblur/intern/cycles/render/nodes.cpp	2013-08-05 18:58:19 UTC (rev 58941)
@@ -2136,7 +2136,7 @@
 /* Light Falloff */
 
 LightFalloffNode::LightFalloffNode()
-: ShaderNode("light_path")
+: ShaderNode("light_fallof")
 {
 	add_input("Strength", SHADER_SOCKET_FLOAT, 100.0f);
 	add_input("Smooth", SHADER_SOCKET_FLOAT, 0.0f);
@@ -2777,7 +2777,7 @@
 
 /* Separate HSV */
 SeparateHSVNode::SeparateHSVNode()
-: ShaderNode("separate_rgb")
+: ShaderNode("separate_hsv")
 {

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list