[Bf-blender-cvs] SVN commit: /data/svn/bf-blender [58939] branches/soc-2013-paint: Merge trunk -r58931 into soc-2013-paint

Antony Riakiotakis kalast at gmail.com
Mon Aug 5 19:59:53 CEST 2013


Revision: 58939
          http://projects.blender.org/scm/viewvc.php?view=rev&root=bf-blender&revision=58939
Author:   psy-fi
Date:     2013-08-05 17:59:52 +0000 (Mon, 05 Aug 2013)
Log Message:
-----------
Merge trunk -r58931 into soc-2013-paint

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

Modified Paths:
--------------
    branches/soc-2013-paint/intern/cycles/CMakeLists.txt
    branches/soc-2013-paint/intern/cycles/kernel/osl/osl_globals.h
    branches/soc-2013-paint/intern/cycles/kernel/osl/osl_services.cpp
    branches/soc-2013-paint/intern/cycles/kernel/osl/osl_shader.cpp
    branches/soc-2013-paint/intern/cycles/kernel/svm/svm_fresnel.h
    branches/soc-2013-paint/intern/cycles/render/light.cpp
    branches/soc-2013-paint/intern/cycles/render/nodes.cpp
    branches/soc-2013-paint/intern/dualcon/dualcon.h
    branches/soc-2013-paint/intern/dualcon/intern/GeoCommon.h
    branches/soc-2013-paint/intern/dualcon/intern/MemoryAllocator.h
    branches/soc-2013-paint/intern/dualcon/intern/ModelReader.h
    branches/soc-2013-paint/intern/dualcon/intern/Projections.cpp
    branches/soc-2013-paint/intern/dualcon/intern/Projections.h
    branches/soc-2013-paint/intern/dualcon/intern/Queue.h
    branches/soc-2013-paint/intern/dualcon/intern/cubes.h
    branches/soc-2013-paint/intern/dualcon/intern/dualcon_c_api.cpp
    branches/soc-2013-paint/intern/dualcon/intern/manifold_table.h
    branches/soc-2013-paint/intern/dualcon/intern/marching_cubes_table.h
    branches/soc-2013-paint/intern/dualcon/intern/octree.cpp
    branches/soc-2013-paint/intern/dualcon/intern/octree.h
    branches/soc-2013-paint/source/blender/blenkernel/intern/blender.c
    branches/soc-2013-paint/source/blender/blenkernel/intern/constraint.c
    branches/soc-2013-paint/source/blender/blenkernel/intern/image.c
    branches/soc-2013-paint/source/blender/blenkernel/intern/movieclip.c
    branches/soc-2013-paint/source/blender/blenkernel/intern/packedFile.c
    branches/soc-2013-paint/source/blender/blenkernel/intern/sketch.c
    branches/soc-2013-paint/source/blender/blenlib/BLI_math_vector.h
    branches/soc-2013-paint/source/blender/blenlib/BLI_mempool.h
    branches/soc-2013-paint/source/blender/blenlib/intern/BLI_mempool.c
    branches/soc-2013-paint/source/blender/blenloader/intern/runtime.c
    branches/soc-2013-paint/source/blender/blenloader/intern/writefile.c
    branches/soc-2013-paint/source/blender/bmesh/intern/bmesh_core.c
    branches/soc-2013-paint/source/blender/bmesh/operators/bmo_wireframe.c
    branches/soc-2013-paint/source/blender/editors/interface/resources.c
    branches/soc-2013-paint/source/blender/editors/render/render_internal.c
    branches/soc-2013-paint/source/blender/editors/screen/area.c
    branches/soc-2013-paint/source/blender/editors/space_view3d/view3d_draw.c
    branches/soc-2013-paint/source/blender/freestyle/intern/application/AppView.h
    branches/soc-2013-paint/source/blender/freestyle/intern/application/Controller.h
    branches/soc-2013-paint/source/blender/freestyle/intern/blender_interface/BlenderFileLoader.h
    branches/soc-2013-paint/source/blender/freestyle/intern/blender_interface/BlenderStrokeRenderer.h
    branches/soc-2013-paint/source/blender/freestyle/intern/blender_interface/BlenderStyleModule.h
    branches/soc-2013-paint/source/blender/freestyle/intern/blender_interface/BlenderTextureManager.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/BBox.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/FastGrid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/Grid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/Noise.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/Polygon.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/SweepLine.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/VecMat.h
    branches/soc-2013-paint/source/blender/freestyle/intern/geometry/normal_cycle.h
    branches/soc-2013-paint/source/blender/freestyle/intern/image/GaussianFilter.h
    branches/soc-2013-paint/source/blender/freestyle/intern/image/Image.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/DrawingStyle.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/FrsMaterial.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/IndexedFaceSet.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/LineRep.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/Node.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/NodeCamera.h
    branches/soc-2013-paint/source/blender/freestyle/intern/scene_graph/NodeDrawingStyle.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/Module.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/Operators.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/Predicates0D.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/Stroke.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/StrokeRenderer.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/StrokeRep.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/StrokeTesselator.h
    branches/soc-2013-paint/source/blender/freestyle/intern/stroke/StyleModule.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/BaseIterator.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/BaseObject.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/Exception.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/Id.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/Interpreter.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/ProgressBar.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/PseudoNoise.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/RandGen.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/RenderMonitor.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/TimeStamp.h
    branches/soc-2013-paint/source/blender/freestyle/intern/system/TimeUtils.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/BoxGrid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/FEdgeXDetector.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/Functions1D.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/GridDensityProvider.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/Interface1D.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/OccluderSource.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/SphericalGrid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/SteerableViewMap.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/ViewEdgeXBuilder.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/ViewMap.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/ViewMapBuilder.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/ViewMapIterators.h
    branches/soc-2013-paint/source/blender/freestyle/intern/view_map/ViewMapTesselator.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WEdge.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WFillGrid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WSFillGrid.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WXEdge.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WXEdgeBuilder.h
    branches/soc-2013-paint/source/blender/freestyle/intern/winged_edge/WingedEdgeBuilder.h
    branches/soc-2013-paint/source/blender/imbuf/intern/colormanagement.c
    branches/soc-2013-paint/source/blender/modifiers/intern/MOD_skin.c
    branches/soc-2013-paint/source/blender/render/intern/source/initrender.c
    branches/soc-2013-paint/source/blender/windowmanager/WM_api.h
    branches/soc-2013-paint/source/blender/windowmanager/intern/wm_draw.c
    branches/soc-2013-paint/source/blender/windowmanager/intern/wm_subwindow.c
    branches/soc-2013-paint/source/gameengine/BlenderRoutines/BL_KetsjiEmbedStart.cpp
    branches/soc-2013-paint/source/gameengine/Converter/BL_ArmatureConstraint.cpp
    branches/soc-2013-paint/source/gameengine/Converter/KX_ConvertActuators.cpp
    branches/soc-2013-paint/source/gameengine/Converter/KX_ConvertSensors.cpp
    branches/soc-2013-paint/source/gameengine/Ketsji/KX_ObstacleSimulation.cpp

Modified: branches/soc-2013-paint/intern/cycles/CMakeLists.txt
===================================================================
--- branches/soc-2013-paint/intern/cycles/CMakeLists.txt	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/CMakeLists.txt	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/kernel/osl/osl_globals.h
===================================================================
--- branches/soc-2013-paint/intern/cycles/kernel/osl/osl_globals.h	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/kernel/osl/osl_globals.h	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/kernel/osl/osl_services.cpp
===================================================================
--- branches/soc-2013-paint/intern/cycles/kernel/osl/osl_services.cpp	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/kernel/osl/osl_services.cpp	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/kernel/osl/osl_shader.cpp
===================================================================
--- branches/soc-2013-paint/intern/cycles/kernel/osl/osl_shader.cpp	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/kernel/osl/osl_shader.cpp	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/kernel/svm/svm_fresnel.h
===================================================================
--- branches/soc-2013-paint/intern/cycles/kernel/svm/svm_fresnel.h	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/kernel/svm/svm_fresnel.h	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/render/light.cpp
===================================================================
--- branches/soc-2013-paint/intern/cycles/render/light.cpp	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/render/light.cpp	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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-paint/intern/cycles/render/nodes.cpp
===================================================================
--- branches/soc-2013-paint/intern/cycles/render/nodes.cpp	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/cycles/render/nodes.cpp	2013-08-05 17:59:52 UTC (rev 58939)
@@ -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")
 {
 	add_input("Color", SHADER_SOCKET_COLOR);
 	add_output("H", SHADER_SOCKET_FLOAT);
@@ -2944,7 +2944,7 @@
 /* Fresnel */
 
 FresnelNode::FresnelNode()
-: ShaderNode("Fresnel")
+: ShaderNode("fresnel")
 {
 	add_input("Normal", SHADER_SOCKET_NORMAL, ShaderInput::NORMAL, ShaderInput::USE_OSL);
 	add_input("IOR", SHADER_SOCKET_FLOAT, 1.45f);
@@ -2966,10 +2966,10 @@
 	compiler.add(this, "node_fresnel");
 }
 
-/* Blend Weight */
+/* Layer Weight */
 
 LayerWeightNode::LayerWeightNode()
-: ShaderNode("LayerWeight")
+: ShaderNode("layer_weight")
 {
 	add_input("Normal", SHADER_SOCKET_NORMAL, ShaderInput::NORMAL, ShaderInput::USE_OSL);
 	add_input("Blend", SHADER_SOCKET_FLOAT, 0.5f);
@@ -3008,7 +3008,7 @@
 /* Wireframe */
 
 WireframeNode::WireframeNode()
-: ShaderNode("Wireframe")
+: ShaderNode("wireframe")
 {
 	add_input("Size", SHADER_SOCKET_FLOAT, 0.01f);
 	add_output("Fac", SHADER_SOCKET_FLOAT);
@@ -3035,7 +3035,7 @@
 /* Wavelength */
 
 WavelengthNode::WavelengthNode()
-: ShaderNode("Wavelength")
+: ShaderNode("wavelength")
 {
 	add_input("Wavelength", SHADER_SOCKET_FLOAT, 500.0f);
 	add_output("Color", SHADER_SOCKET_COLOR);
@@ -3059,7 +3059,7 @@
 /* Blackbody */
 
 BlackbodyNode::BlackbodyNode()
-: ShaderNode("Blackbody")
+: ShaderNode("blackbody")
 {
 	add_input("Temperature", SHADER_SOCKET_FLOAT, 1200.0f);
 	add_output("Color", SHADER_SOCKET_COLOR);
@@ -3387,7 +3387,7 @@
 /* VectorCurvesNode */
 
 VectorCurvesNode::VectorCurvesNode()
-: ShaderNode("rgb_curves")
+: ShaderNode("vector_curves")
 {
 	add_input("Fac", SHADER_SOCKET_FLOAT);
 	add_input("Vector", SHADER_SOCKET_VECTOR);
@@ -3645,7 +3645,7 @@
 ShaderEnum TangentNode::axis_enum = tangent_axis_init();
 
 TangentNode::TangentNode()
-: ShaderNode("normal_map")
+: ShaderNode("tangent")
 {
 	direction_type = ustring("Radial");
 	axis = ustring("X");

Modified: branches/soc-2013-paint/intern/dualcon/dualcon.h
===================================================================
--- branches/soc-2013-paint/intern/dualcon/dualcon.h	2013-08-05 17:11:35 UTC (rev 58938)
+++ branches/soc-2013-paint/intern/dualcon/dualcon.h	2013-08-05 17:59:52 UTC (rev 58939)
@@ -23,6 +23,10 @@
 #ifndef __DUALCON_H__
 #define __DUALCON_H__
 
+#ifdef WITH_CXX_GUARDEDALLOC

@@ Diff output truncated at 10240 characters. @@



More information about the Bf-blender-cvs mailing list