Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJeroen Bakker <j.bakker@atmind.nl>2019-03-15 18:28:33 +0300
committerJeroen Bakker <j.bakker@atmind.nl>2019-03-15 18:28:33 +0300
commit5051e580e4028e0a741e6519e469321a7e1f2a71 (patch)
tree83d1195eb21106155c0c949ae1453a9ce8665333 /intern/cycles/kernel
parent86ea76254d3f625bf3d9e15dade5d5b3544c06a3 (diff)
parent2f6257fd7fe305e3b226a8b505eb614bbeaf762a (diff)
Merge branch 'blender2.7'
Diffstat (limited to 'intern/cycles/kernel')
-rw-r--r--intern/cycles/kernel/kernel_types.h90
1 files changed, 50 insertions, 40 deletions
diff --git a/intern/cycles/kernel/kernel_types.h b/intern/cycles/kernel/kernel_types.h
index caa0057d997..281d9a25047 100644
--- a/intern/cycles/kernel/kernel_types.h
+++ b/intern/cycles/kernel/kernel_types.h
@@ -121,52 +121,62 @@ CCL_NAMESPACE_BEGIN
#ifdef __KERNEL_OPENCL__
-/* keep __KERNEL_ADV_SHADING__ in sync with opencl_kernel_use_advanced_shading! */
+# if defined(__KERNEL_OPENCL_AMD__) || defined(__KERNEL_OPENCL_INTEL_CPU__)
+# define __CL_USE_NATIVE__
+# endif
-# ifdef __KERNEL_OPENCL_NVIDIA__
-# define __KERNEL_SHADING__
-# define __KERNEL_ADV_SHADING__
-# define __SUBSURFACE__
-# define __PRINCIPLED__
-# define __VOLUME__
-# define __VOLUME_SCATTER__
-# define __SHADOW_RECORD_ALL__
-# define __CMJ__
-# define __BRANCHED_PATH__
-# endif /* __KERNEL_OPENCL_NVIDIA__ */
+/* Preview kernel is used as a small kernel when the optimized kernel is still being compiled. */
+# ifdef __KERNEL_OPENCL_PREVIEW__
+# define __AO__
+# define __PASSES__
+# define __HAIR__
+# else
+
+/* keep __KERNEL_ADV_SHADING__ in sync with opencl_kernel_use_advanced_shading! */
-# ifdef __KERNEL_OPENCL_APPLE__
-# define __KERNEL_SHADING__
-# define __KERNEL_ADV_SHADING__
-# define __PRINCIPLED__
-# define __CMJ__
+# ifdef __KERNEL_OPENCL_NVIDIA__
+# define __KERNEL_SHADING__
+# define __KERNEL_ADV_SHADING__
+# define __SUBSURFACE__
+# define __PRINCIPLED__
+# define __VOLUME__
+# define __VOLUME_SCATTER__
+# define __SHADOW_RECORD_ALL__
+# define __CMJ__
+# define __BRANCHED_PATH__
+# endif /* __KERNEL_OPENCL_NVIDIA__ */
+
+# ifdef __KERNEL_OPENCL_APPLE__
+# define __KERNEL_SHADING__
+# define __KERNEL_ADV_SHADING__
+# define __PRINCIPLED__
+# define __CMJ__
/* TODO(sergey): Currently experimental section is ignored here,
* this is because megakernel in device_opencl does not support
* custom cflags depending on the scene features.
*/
-# endif /* __KERNEL_OPENCL_APPLE__ */
-
-# ifdef __KERNEL_OPENCL_AMD__
-# define __CL_USE_NATIVE__
-# define __KERNEL_SHADING__
-# define __KERNEL_ADV_SHADING__
-# define __SUBSURFACE__
-# define __PRINCIPLED__
-# define __VOLUME__
-# define __VOLUME_SCATTER__
-# define __SHADOW_RECORD_ALL__
-# define __CMJ__
-# define __BRANCHED_PATH__
-# endif /* __KERNEL_OPENCL_AMD__ */
-
-# ifdef __KERNEL_OPENCL_INTEL_CPU__
-# define __CL_USE_NATIVE__
-# define __KERNEL_SHADING__
-# define __KERNEL_ADV_SHADING__
-# define __PRINCIPLED__
-# define __CMJ__
-# endif /* __KERNEL_OPENCL_INTEL_CPU__ */
-
+# endif /* __KERNEL_OPENCL_APPLE__ */
+
+# ifdef __KERNEL_OPENCL_AMD__
+# define __KERNEL_SHADING__
+# define __KERNEL_ADV_SHADING__
+# define __SUBSURFACE__
+# define __PRINCIPLED__
+# define __VOLUME__
+# define __VOLUME_SCATTER__
+# define __SHADOW_RECORD_ALL__
+# define __CMJ__
+# define __BRANCHED_PATH__
+# endif /* __KERNEL_OPENCL_AMD__ */
+
+# ifdef __KERNEL_OPENCL_INTEL_CPU__
+# define __KERNEL_SHADING__
+# define __KERNEL_ADV_SHADING__
+# define __PRINCIPLED__
+# define __CMJ__
+# endif /* __KERNEL_OPENCL_INTEL_CPU__ */
+
+# endif /* KERNEL_OPENCL_PREVIEW__ */
#endif /* __KERNEL_OPENCL__ */
/* Kernel features */