[Bf-blender-cvs] [560c842] experimental-build: Revert "Another compile fix for the experimental Cycles build"

Lukas Stockner noreply at git.blender.org
Thu Oct 22 22:23:41 CEST 2015


Commit: 560c842838010be4f76985019debdda0272fd51e
Author: Lukas Stockner
Date:   Thu Oct 22 22:23:10 2015 +0200
Branches: experimental-build
https://developer.blender.org/rB560c842838010be4f76985019debdda0272fd51e

Revert "Another compile fix for the experimental Cycles build"

This reverts commit 489b85302959da2525058e37c7e49e4cc34226a6.

===================================================================

M	intern/cycles/app/cycles_xml.cpp
M	intern/cycles/blender/addon/properties.py
M	intern/cycles/blender/blender_object.cpp
M	intern/cycles/blender/blender_session.cpp
M	intern/cycles/blender/blender_shader.cpp
M	intern/cycles/blender/blender_util.h
M	intern/cycles/kernel/CMakeLists.txt
M	intern/cycles/kernel/kernel_bake.h
M	intern/cycles/kernel/kernel_emission.h
M	intern/cycles/kernel/kernel_light.h
M	intern/cycles/kernel/kernel_path.h
M	intern/cycles/kernel/kernel_path_branched.h
M	intern/cycles/kernel/kernel_path_surface.h
M	intern/cycles/kernel/kernel_shader.h
M	intern/cycles/kernel/kernel_textures.h
M	intern/cycles/kernel/kernel_types.h
M	intern/cycles/kernel/osl/background.cpp
M	intern/cycles/kernel/osl/osl_closures.cpp
M	intern/cycles/kernel/osl/osl_closures.h
M	intern/cycles/kernel/osl/osl_services.cpp
M	intern/cycles/kernel/osl/osl_shader.cpp
M	intern/cycles/kernel/shaders/CMakeLists.txt
D	intern/cycles/kernel/shaders/node_ies_light.osl
M	intern/cycles/kernel/shaders/stdosl.h
M	intern/cycles/kernel/svm/svm.h
M	intern/cycles/kernel/svm/svm_closure.h
D	intern/cycles/kernel/svm/svm_ies.h
M	intern/cycles/kernel/svm/svm_image.h
M	intern/cycles/kernel/svm/svm_types.h
M	intern/cycles/render/buffers.cpp
M	intern/cycles/render/film.cpp
M	intern/cycles/render/film.h
M	intern/cycles/render/image.cpp
M	intern/cycles/render/image.h
M	intern/cycles/render/light.cpp
M	intern/cycles/render/light.h
M	intern/cycles/render/nodes.cpp
M	intern/cycles/render/nodes.h
M	intern/cycles/render/scene.h
M	intern/cycles/render/tile.cpp
M	intern/cycles/render/tile.h
M	intern/cycles/util/CMakeLists.txt
D	intern/cycles/util/util_hilbert.h
M	intern/cycles/util/util_math.h
M	intern/opencolorio/fallback_impl.cc
M	intern/opencolorio/gpu_shader_display_transform.glsl
M	intern/opencolorio/ocio_capi.cc
M	intern/opencolorio/ocio_capi.h
M	intern/opencolorio/ocio_impl.h
M	intern/opencolorio/ocio_impl_glsl.cc
M	release/scripts/startup/nodeitems_builtins.py
M	source/blender/blenkernel/BKE_node.h
M	source/blender/blenkernel/intern/colortools.c
M	source/blender/blenkernel/intern/node.c
M	source/blender/blenkernel/intern/text.c
M	source/blender/editors/interface/interface_templates.c
M	source/blender/editors/space_node/drawnode.c
M	source/blender/imbuf/intern/colormanagement.c
M	source/blender/makesdna/DNA_color_types.h
M	source/blender/makesdna/DNA_node_types.h
M	source/blender/makesrna/RNA_access.h
M	source/blender/makesrna/intern/rna_color.c
M	source/blender/makesrna/intern/rna_nodetree.c
M	source/blender/nodes/CMakeLists.txt
M	source/blender/nodes/NOD_shader.h
M	source/blender/nodes/NOD_static_types.h
D	source/blender/nodes/shader/nodes/node_shader_ies_light.c
D	source/blender/nodes/shader/nodes/node_shader_shadow_catcher.c

===================================================================

diff --git a/intern/cycles/app/cycles_xml.cpp b/intern/cycles/app/cycles_xml.cpp
index 457b10a..edea8cd 100644
--- a/intern/cycles/app/cycles_xml.cpp
+++ b/intern/cycles/app/cycles_xml.cpp
@@ -515,9 +515,6 @@ static void xml_read_shader_graph(const XMLReadState& state, Shader *shader, pug
 			xml_read_enum(&wave->type, WaveTextureNode::type_enum, node, "type");
 			snode = wave;
 		}
-		else if(string_iequals(node.name(), "ies_light")) {
-			snode = new IESLightNode();
-		}
 		else if(string_iequals(node.name(), "normal")) {
 			NormalNode *normal = new NormalNode();
 			xml_read_float3(&normal->direction, node, "direction");
diff --git a/intern/cycles/blender/addon/properties.py b/intern/cycles/blender/addon/properties.py
index e9bbd90..c313983 100644
--- a/intern/cycles/blender/addon/properties.py
+++ b/intern/cycles/blender/addon/properties.py
@@ -54,7 +54,6 @@ enum_bvh_types = (
 enum_filter_types = (
     ('BOX', "Box", "Box filter"),
     ('GAUSSIAN', "Gaussian", "Gaussian filter"),
-    ('BLACKMAN_HARRIS', "Blackman-Harris", "Blackman-Harris filter"),
     )
 
 enum_aperture_types = (
@@ -92,7 +91,6 @@ enum_tile_order = (
     ('LEFT_TO_RIGHT', "Left to Right", "Render from left to right"),
     ('TOP_TO_BOTTOM', "Top to Bottom", "Render from top to bottom"),
     ('BOTTOM_TO_TOP', "Bottom to Top", "Render from bottom to top"),
-    ('HILBERT', "Hilbert Curve", "Render along a hilbert curve"),
     )
 
 enum_use_layer_samples = (
diff --git a/intern/cycles/blender/blender_object.cpp b/intern/cycles/blender/blender_object.cpp
index 596f414..1159380 100644
--- a/intern/cycles/blender/blender_object.cpp
+++ b/intern/cycles/blender/blender_object.cpp
@@ -150,8 +150,6 @@ void BlenderSync::sync_light(BL::Object b_parent, int persistent_id[OBJECT_PERSI
 	light->co = transform_get_column(&tfm, 3);
 	light->dir = -transform_get_column(&tfm, 2);
 
-	light->tfm = tfm;
-
 	/* shader */
 	vector<uint> used_shaders;
 
diff --git a/intern/cycles/blender/blender_session.cpp b/intern/cycles/blender/blender_session.cpp
index c729fb4..088748c 100644
--- a/intern/cycles/blender/blender_session.cpp
+++ b/intern/cycles/blender/blender_session.cpp
@@ -447,7 +447,6 @@ void BlenderSession::render()
 		/* add passes */
 		vector<Pass> passes;
 		Pass::add(PASS_COMBINED, passes);
-		Pass::add(PASS_SHADOWCATCHER, passes);
 
 		if(session_params.device.advanced_shading) {
 
diff --git a/intern/cycles/blender/blender_shader.cpp b/intern/cycles/blender/blender_shader.cpp
index cfb1f8a..2beeaa5 100644
--- a/intern/cycles/blender/blender_shader.cpp
+++ b/intern/cycles/blender/blender_shader.cpp
@@ -328,9 +328,6 @@ static ShaderNode *add_node(Scene *scene,
 	else if(b_node.is_a(&RNA_ShaderNodeHoldout)) {
 		node = new HoldoutNode();
 	}
-	else if(b_node.is_a(&RNA_ShaderNodeShadowCatcher)) {
-		node = new ShadowCatcherNode();
-	}
 	else if(b_node.is_a(&RNA_ShaderNodeBsdfAnisotropic)) {
 		BL::ShaderNodeBsdfAnisotropic b_aniso_node(b_node);
 		AnisotropicBsdfNode *aniso = new AnisotropicBsdfNode();
@@ -722,13 +719,6 @@ static ShaderNode *add_node(Scene *scene,
 		get_tex_mapping(&sky->tex_mapping, b_sky_node.texture_mapping());
 		node = sky;
 	}
-	else if(b_node.is_a(&RNA_ShaderNodeIESLight)) {
-		BL::ShaderNodeIESLight b_ies_node(b_node);
-		IESLightNode *ies = new IESLightNode();
-		ies->filename = blender_absolute_path(b_data, b_ntree, b_ies_node.filepath());
-		ies->ies = get_text_content(b_ies_node.ies().ptr);
-		node = ies;
-	}
 	else if(b_node.is_a(&RNA_ShaderNodeNormalMap)) {
 		BL::ShaderNodeNormalMap b_normal_map_node(b_node);
 		NormalMapNode *nmap = new NormalMapNode();
diff --git a/intern/cycles/blender/blender_util.h b/intern/cycles/blender/blender_util.h
index 6f80efd..bd1c37a 100644
--- a/intern/cycles/blender/blender_util.h
+++ b/intern/cycles/blender/blender_util.h
@@ -347,19 +347,6 @@ static inline string blender_absolute_path(BL::BlendData b_data, BL::ID b_id, co
 	return path;
 }
 
-static inline string get_text_content(PointerRNA ptr)
-{
-	if(ptr.data == NULL)
-		return "";
-
-	string content;
-	BL::Text::lines_iterator iter;
-	iter.begin(ptr);
-	for(iter.begin(ptr); iter; ++iter)
-		content += iter->body() + "\n";
-	return content;
-}
-
 /* Texture Space */
 
 static inline void mesh_texture_space(BL::Mesh b_mesh, float3& loc, float3& size)
diff --git a/intern/cycles/kernel/CMakeLists.txt b/intern/cycles/kernel/CMakeLists.txt
index 82a3592..b44e917 100644
--- a/intern/cycles/kernel/CMakeLists.txt
+++ b/intern/cycles/kernel/CMakeLists.txt
@@ -103,7 +103,6 @@ set(SRC_SVM_HEADERS
 	svm/svm_geometry.h
 	svm/svm_gradient.h
 	svm/svm_hsv.h
-	svm/svm_ies.h
 	svm/svm_image.h
 	svm/svm_invert.h
 	svm/svm_light_path.h
diff --git a/intern/cycles/kernel/kernel_bake.h b/intern/cycles/kernel/kernel_bake.h
index 49bf97f..0cb5646 100644
--- a/intern/cycles/kernel/kernel_bake.h
+++ b/intern/cycles/kernel/kernel_bake.h
@@ -241,7 +241,7 @@ ccl_device void kernel_bake_evaluate(KernelGlobals *kg, ccl_global uint4 *input,
 	/* light passes */
 	PathRadiance L;
 
-	shader_setup_from_sample(kg, &sd, P, Ng, I, shader, object, prim, u, v, t, time, bounce, transparent_bounce, LAMP_NONE);
+	shader_setup_from_sample(kg, &sd, P, Ng, I, shader, object, prim, u, v, t, time, bounce, transparent_bounce);
 	sd.I = sd.N;
 
 	/* update differentials */
@@ -449,9 +449,11 @@ ccl_device void kernel_shader_evaluate(KernelGlobals *kg, ccl_global uint4 *inpu
 	else { // SHADER_EVAL_BACKGROUND
 		/* setup ray */
 		Ray ray;
+		float u = __uint_as_float(in.x);
+		float v = __uint_as_float(in.y);
 
 		ray.P = make_float3(0.0f, 0.0f, 0.0f);
-		ray.D = make_float3(__uint_as_float(in.x), __uint_as_float(in.y), __uint_as_float(in.z));
+		ray.D = equirectangular_to_direction(u, v);
 		ray.t = 0.0f;
 #ifdef __CAMERA_MOTION__
 		ray.time = 0.5f;
diff --git a/intern/cycles/kernel/kernel_emission.h b/intern/cycles/kernel/kernel_emission.h
index 717a3be..de9e8d7 100644
--- a/intern/cycles/kernel/kernel_emission.h
+++ b/intern/cycles/kernel/kernel_emission.h
@@ -51,7 +51,7 @@ ccl_device_noinline float3 direct_emissive_eval(KernelGlobals *kg,
 	else
 #endif
 	{
-		shader_setup_from_sample(kg, sd, ls->P, ls->Ng, I, ls->shader, ls->object, ls->prim, ls->u, ls->v, t, time, bounce+1, transparent_bounce, ls->lamp);
+		shader_setup_from_sample(kg, sd, ls->P, ls->Ng, I, ls->shader, ls->object, ls->prim, ls->u, ls->v, t, time, bounce+1, transparent_bounce);
 
 		ls->Ng = ccl_fetch(sd, Ng);
 
@@ -71,58 +71,6 @@ ccl_device_noinline float3 direct_emissive_eval(KernelGlobals *kg,
 	return eval;
 }
 
-ccl_device_noinline bool direct_emission_shaderless(KernelGlobals *kg,
-	ShaderData *sd, LightSample *ls, Ray *ray, float3 *light_eval
-#ifdef __SPLIT_KERNEL__
-	, ShaderData *sd_DL
-#endif
-	)
-{
-	if(ls->pdf == 0.0f)
-		return false;
-
-	/* todo: implement */
-	differential3 dD = differential3_zero();
-
-	/* evaluate closure */
-	*light_eval = direct_emissive_eval(kg, ls, -ls->D, dD, ls->t, ccl_fetch(sd, time), 0, 0
-#ifdef __SPLIT_KERNEL__
-	                                         ,sd_DL
-#endif
-	                                  )
-	            * fmaxf(dot(ls->D, ccl_fetch(sd, N)), 0.0f) / ls->pdf;
-
-	if(is_zero(*light_eval))
-		return false;
-
-	if(ls->shader & SHADER_CAST_SHADOW) {
-		/* setup ray */
-		bool transmit = (dot(ccl_fetch(sd, Ng), ls->D) < 0.0f);
-		ray->P = ray_offset(sd->P, (transmit)? -ccl_fetch(sd, Ng): ccl_fetch(sd, Ng));
-
-		if(ls->t == FLT_MAX) {
-			/* distant light */
-			ray->D = ls->D;
-			ray->t = ls->t;
-		}
-		else {
-			/* other lights, avoid self-intersection */
-			ray->D = ray_offset(ls->P, ls->Ng) - ray->P;
-			ray->D = normalize_len(ray->D, &ray->t);
-		}
-
-		ray->dP = ccl_fetch(sd, dP);
-		ray->dD = differential3_zero();
-	}
-	else {
-		/* signal to not cast shadow ray */
-		ray->t = 0.0f;
-	}
-
-	return true;
-}
-
-/* The argument sd_DL is meaningful only for split kernel. Other uses can just pass NULL */
 ccl_device_noinline bool direct_emission(KernelGlobals *kg, ShaderData *sd,
 	LightSample *ls, Ray *ray, BsdfEval *eval, bool *is_lamp,
 	int bounce, int transparent_bounce
@@ -342,7 +290,7 @@ ccl_device_noinline float3 indirect_background(KernelGlobals *kg, ccl_addr_space
 	/* check if background light exists or if we should skip pdf */
 	int res = kernel_data.integrator.pdf_background_res;
 
-	if(!(state->flag & PATH_RAY_MIS_SKIP) && (res || kernel_data.integrator.num_portals)) {
+	if(!(state->flag & PATH_RAY_MIS_SKIP) && res) {
 		/* multiple importance sampling, get background light pdf for ray
 		 * direction, and compute weight with respect to BSDF pdf */
 		float pdf = background_light_pdf(kg, ray->P, ray->D);
diff --git a/intern/cycles/kernel/kernel_light.h b/intern/cycles/kernel/kernel_light.h
index 12fec80..7590ec2 100644
--- a/intern/cycles/kernel/kernel_light.h
+++ b/intern/cycles/kernel/kernel_light.h
@@ -371,266 +371,97 @@ ccl_device float3 background_portal_sample(KernelGlobals *kg,
 	return make_float3(0.0f, 0.0f, 0.0f);
 }
 
-ccl_device_inline float2 direction_to_rectified(float3 D, float3 ex, float3 ey, float3 N)
-{
-	float d = 1.0f / dot(D, N);
-	float x = dot(D, ex) * d;
-	float y = dot(D, ey) * d;
-	return make_float2((atanf(x) + M_PI_2_F)*M_1_PI_F, (atanf(y) + M_PI_2_F)*M_1_PI_F);
-}
-
-ccl_device_inline float3 rectified_to_direction(float u, float v)
-{
-	float lx = tanf(M_PI_F*u - M_PI_2_F);
-	float ly = tanf(M_PI_F*v - M_PI_2_F);
-	return make_float3(lx, ly, 1.0f) / sqrtf(lx*lx + ly*ly + 1.0f);
-}
-
-/* Returns the sum of the rectanble [0, 0]*[xi, yi] */
-#define SUM_LOOKUP(xi, yi) (((xi) > 0 && (yi) > 0)? kernel_tex_fetch(__light_background_conditional_cdf, (portal*res + (yi) - 1)*res + (xi) - 1).y : 0.0f)
-#define BI_LERP(xi, xf, yi, yf) ((1.0f - (xf)) * ((1.0f - (yf)) * SUM_LOOKUP((xi)  , (yi)) + (yf) * SUM_LOOKUP((xi)  , (yi)+1)) \
-                                       + (xf)  * ((1.0f - (yf)) * SUM_LOOKUP((xi)+1, (yi)) + (yf) * SUM_LOOKUP((xi)+1, (yi)+1)))
-#define Y_LERP(xi, yi, yf) ((1.0f - (yf)) * SUM_LOOKUP((xi), (yi)) + (yf) * SUM_LOOKUP((xi), (yi)+1))
-/* Returns the sum of the rectangle [lx, ly]*[hx, hy] */
-ccl_device_inline float rectified_area(KernelGlobals *kg, int portal, float lx, float ly, float hx, float hy)
-{
-	int res = kernel

@@ Diff output truncated at 10240 characters. @@




More information about the Bf-blender-cvs mailing list