diff options
author | Patrick Mours <pmours@nvidia.com> | 2022-09-12 19:46:20 +0300 |
---|---|---|
committer | Patrick Mours <pmours@nvidia.com> | 2022-09-13 11:59:28 +0300 |
commit | a45c36efae07f22dd1da1ebac728324aeafce85e (patch) | |
tree | 842f27474a4b011786da5ef07ed5c6630e8203a9 /intern/cycles/kernel/integrator/displacement_shader.h | |
parent | 8e03df9bbc22baaf9d538e01c44f6857a8c9b43a (diff) |
Cycles: Make OSL implementation independent from SVM
Cleans up the file structure to be more similar to that of the SVM
and also makes it possible to build kernels with OSL support, but
without having to include SVM support.
This patch was split from D15902.
Differential Revision: https://developer.blender.org/D15949
Diffstat (limited to 'intern/cycles/kernel/integrator/displacement_shader.h')
-rw-r--r-- | intern/cycles/kernel/integrator/displacement_shader.h | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/intern/cycles/kernel/integrator/displacement_shader.h b/intern/cycles/kernel/integrator/displacement_shader.h index 71a0f56fb3e..839dfe244ac 100644 --- a/intern/cycles/kernel/integrator/displacement_shader.h +++ b/intern/cycles/kernel/integrator/displacement_shader.h @@ -5,10 +5,11 @@ #pragma once -#include "kernel/svm/svm.h" - +#ifdef __SVM__ +# include "kernel/svm/svm.h" +#endif #ifdef __OSL__ -# include "kernel/osl/shader.h" +# include "kernel/osl/osl.h" #endif CCL_NAMESPACE_BEGIN @@ -22,17 +23,18 @@ ccl_device void displacement_shader_eval(KernelGlobals kg, sd->num_closure_left = 0; /* this will modify sd->P */ -#ifdef __SVM__ -# ifdef __OSL__ - if (kg->osl) +#ifdef __OSL__ + if (kg->osl) { OSLShader::eval_displacement(kg, state, sd); + } else -# endif +#endif { +#ifdef __SVM__ svm_eval_nodes<KERNEL_FEATURE_NODE_MASK_DISPLACEMENT, SHADER_TYPE_DISPLACEMENT>( kg, state, sd, NULL, 0); - } #endif + } } CCL_NAMESPACE_END |