diff options
author | Jeroen Bakker <j.bakker@atmind.nl> | 2019-03-15 18:28:33 +0300 |
---|---|---|
committer | Jeroen Bakker <j.bakker@atmind.nl> | 2019-03-15 18:28:33 +0300 |
commit | 5051e580e4028e0a741e6519e469321a7e1f2a71 (patch) | |
tree | 83d1195eb21106155c0c949ae1453a9ce8665333 /intern/cycles/kernel | |
parent | 86ea76254d3f625bf3d9e15dade5d5b3544c06a3 (diff) | |
parent | 2f6257fd7fe305e3b226a8b505eb614bbeaf762a (diff) |
Merge branch 'blender2.7'
Diffstat (limited to 'intern/cycles/kernel')
-rw-r--r-- | intern/cycles/kernel/kernel_types.h | 90 |
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 */ |