[Bf-blender-cvs] [0ccae52] master: Fix OpenCL kernel build errors after recent 3D texture changes.
Brecht Van Lommel
noreply at git.blender.org
Wed Feb 17 01:39:25 CET 2016
Commit: 0ccae52394771fed6d50b7a0142a0f1d259da1d5
Author: Brecht Van Lommel
Date: Wed Feb 17 01:20:46 2016 +0100
Branches: master
https://developer.blender.org/rB0ccae52394771fed6d50b7a0142a0f1d259da1d5
Fix OpenCL kernel build errors after recent 3D texture changes.
===================================================================
M intern/cycles/kernel/kernels/opencl/kernel.cl
M intern/cycles/kernel/svm/svm_voxel.h
===================================================================
diff --git a/intern/cycles/kernel/kernels/opencl/kernel.cl b/intern/cycles/kernel/kernels/opencl/kernel.cl
index 77cb312..5f35def 100644
--- a/intern/cycles/kernel/kernels/opencl/kernel.cl
+++ b/intern/cycles/kernel/kernels/opencl/kernel.cl
@@ -23,7 +23,7 @@
#include "../../kernel_film.h"
-#ifdef __COMPILE_ONLY_MEGAKERNEL__
+#if defined(__COMPILE_ONLY_MEGAKERNEL__) || !defined(__NO_BAKING__)
#include "../../kernel_path.h"
#include "../../kernel_path_branched.h"
#else /* __COMPILE_ONLY_MEGAKERNEL__ */
@@ -38,7 +38,7 @@
#include "../../kernel_accumulate.h"
#include "../../kernel_camera.h"
#include "../../kernel_shader.h"
-#endif /* __COMPILE_ONLY_MEGAKERNEL__ */
+#endif /* defined(__COMPILE_ONLY_MEGAKERNEL__) || !defined(__NO_BAKING__) */
#include "../../kernel_bake.h"
diff --git a/intern/cycles/kernel/svm/svm_voxel.h b/intern/cycles/kernel/svm/svm_voxel.h
index af03ce3..a086d32 100644
--- a/intern/cycles/kernel/svm/svm_voxel.h
+++ b/intern/cycles/kernel/svm/svm_voxel.h
@@ -27,6 +27,7 @@ ccl_device void svm_node_tex_voxel(KernelGlobals *kg,
{
uint co_offset, density_out_offset, color_out_offset, space;
decode_node_uchar4(node.z, &co_offset, &density_out_offset, &color_out_offset, &space);
+#ifdef __VOLUME__
int id = node.y;
float3 co = stack_load_float3(stack, co_offset);
if(space == NODE_TEX_VOXEL_SPACE_OBJECT) {
@@ -41,10 +42,13 @@ ccl_device void svm_node_tex_voxel(KernelGlobals *kg,
tfm.w = read_node_float(kg, offset);
co = transform_point(&tfm, co);
}
-#if defined(__KERNEL_GPU__)
+# if defined(__KERNEL_GPU__)
float4 r = volume_image_texture_3d(id, co.x, co.y, co.z);
-#else
+# else
float4 r = kernel_tex_image_interp_3d(id, co.x, co.y, co.z);
+# endif
+#else
+ float4 r = make_float4(0.0f, 0.0f, 0.0f, 0.0f);
#endif
if (stack_valid(density_out_offset))
stack_store_float(stack, density_out_offset, r.w);
More information about the Bf-blender-cvs
mailing list