Cycles: disable anisotropic BSDF on CUDA sm 1.x, to try to get it building again.
This commit is contained in:
@@ -111,6 +111,7 @@ CCL_NAMESPACE_BEGIN
|
||||
#define __BACKGROUND_MIS__
|
||||
#define __AO__
|
||||
#define __CAMERA_MOTION__
|
||||
#define __ANISOTROPIC__
|
||||
|
||||
#ifndef __KERNEL_CUDA__
|
||||
#define __OBJECT_MOTION__
|
||||
@@ -375,7 +376,9 @@ typedef struct ShaderClosure {
|
||||
float data1;
|
||||
|
||||
float3 N;
|
||||
#ifdef __ANISOTROPIC__
|
||||
float3 T;
|
||||
#endif
|
||||
|
||||
} ShaderClosure;
|
||||
|
||||
|
@@ -24,7 +24,7 @@
|
||||
#include "../closure/bsdf_reflection.h"
|
||||
#include "../closure/bsdf_refraction.h"
|
||||
#include "../closure/bsdf_transparent.h"
|
||||
#ifdef __DPDU__
|
||||
#ifdef __ANISOTROPIC__
|
||||
#include "../closure/bsdf_ward.h"
|
||||
#endif
|
||||
#include "../closure/bsdf_westin.h"
|
||||
@@ -75,7 +75,7 @@ __device int svm_bsdf_sample(const ShaderData *sd, const ShaderClosure *sc, floa
|
||||
label = bsdf_microfacet_beckmann_sample(sc, sd->Ng, sd->I, sd->dI.dx, sd->dI.dy, randu, randv,
|
||||
eval, omega_in, &domega_in->dx, &domega_in->dy, pdf);
|
||||
break;
|
||||
#ifdef __DPDU__
|
||||
#ifdef __ANISOTROPIC__
|
||||
case CLOSURE_BSDF_WARD_ID:
|
||||
label = bsdf_ward_sample(sc, sd->Ng, sd->I, sd->dI.dx, sd->dI.dy, randu, randv,
|
||||
eval, omega_in, &domega_in->dx, &domega_in->dy, pdf);
|
||||
@@ -138,7 +138,7 @@ __device float3 svm_bsdf_eval(const ShaderData *sd, const ShaderClosure *sc, con
|
||||
case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
|
||||
eval = bsdf_microfacet_beckmann_eval_reflect(sc, sd->I, omega_in, pdf);
|
||||
break;
|
||||
#ifdef __DPDU__
|
||||
#ifdef __ANISOTROPIC__
|
||||
case CLOSURE_BSDF_WARD_ID:
|
||||
eval = bsdf_ward_eval_reflect(sc, sd->I, omega_in, pdf);
|
||||
break;
|
||||
@@ -187,7 +187,7 @@ __device float3 svm_bsdf_eval(const ShaderData *sd, const ShaderClosure *sc, con
|
||||
case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
|
||||
eval = bsdf_microfacet_beckmann_eval_transmit(sc, sd->I, omega_in, pdf);
|
||||
break;
|
||||
#ifdef __DPDU__
|
||||
#ifdef __ANISOTROPIC__
|
||||
case CLOSURE_BSDF_WARD_ID:
|
||||
eval = bsdf_ward_eval_transmit(sc, sd->I, omega_in, pdf);
|
||||
break;
|
||||
@@ -244,7 +244,7 @@ __device void svm_bsdf_blur(ShaderClosure *sc, float roughness)
|
||||
case CLOSURE_BSDF_MICROFACET_BECKMANN_REFRACTION_ID:
|
||||
bsdf_microfacet_beckmann_blur(sc, roughness);
|
||||
break;
|
||||
#ifdef __DPDU__
|
||||
#ifdef __ANISOTROPIC__
|
||||
case CLOSURE_BSDF_WARD_ID:
|
||||
bsdf_ward_blur(sc, roughness);
|
||||
break;
|
||||
|
@@ -225,7 +225,6 @@ __device void svm_node_closure_bsdf(KernelGlobals *kg, ShaderData *sd, float *st
|
||||
|
||||
break;
|
||||
}
|
||||
#ifdef __DPDU__
|
||||
case CLOSURE_BSDF_WARD_ID: {
|
||||
#ifdef __CAUSTICS_TRICKS__
|
||||
if(kernel_data.integrator.no_caustics && (path_flag & PATH_RAY_DIFFUSE))
|
||||
@@ -233,9 +232,11 @@ __device void svm_node_closure_bsdf(KernelGlobals *kg, ShaderData *sd, float *st
|
||||
#endif
|
||||
ShaderClosure *sc = svm_node_closure_get(sd);
|
||||
sc->N = N;
|
||||
sc->T = stack_load_float3(stack, data_node.z);
|
||||
svm_node_closure_set_mix_weight(sc, mix_weight);
|
||||
|
||||
#ifdef __ANISOTROPIC__
|
||||
sc->T = stack_load_float3(stack, data_node.z);
|
||||
|
||||
/* rotate tangent */
|
||||
float rotation = stack_load_float(stack, data_node.w);
|
||||
|
||||
@@ -256,9 +257,11 @@ __device void svm_node_closure_bsdf(KernelGlobals *kg, ShaderData *sd, float *st
|
||||
}
|
||||
|
||||
sd->flag |= bsdf_ward_setup(sc);
|
||||
#else
|
||||
sd->flag |= bsdf_diffuse_setup(sc);
|
||||
#endif
|
||||
break;
|
||||
}
|
||||
#endif
|
||||
case CLOSURE_BSDF_ASHIKHMIN_VELVET_ID: {
|
||||
ShaderClosure *sc = svm_node_closure_get(sd);
|
||||
sc->N = N;
|
||||
|
@@ -283,7 +283,7 @@ __device void svm_node_normal_map(KernelGlobals *kg, ShaderData *sd, float *stac
|
||||
N = normalize(sd->N + (N - sd->N)*strength);
|
||||
}
|
||||
|
||||
stack_store_float3(stack, normal_offset, normalize(N));
|
||||
stack_store_float3(stack, normal_offset, N);
|
||||
}
|
||||
|
||||
__device void svm_node_tangent(KernelGlobals *kg, ShaderData *sd, float *stack, uint4 node)
|
||||
|
Reference in New Issue
Block a user