Cycles: change __device and similar qualifiers to ccl_device in kernel code.
This to avoids build conflicts with libc++ on FreeBSD, these __ prefixed values are reserved for compilers. I apologize to anyone who has patches or branches and has to go through the pain of merging this change, it may be easiest to do these same replacements in your code and then apply/merge the patch. Ref T37477.
This commit is contained in:
@@ -37,19 +37,19 @@ CCL_NAMESPACE_BEGIN
|
||||
/* return the probability distribution function in the direction I,
|
||||
* given the parameters and the light's surface normal. This MUST match
|
||||
* the PDF computed by sample(). */
|
||||
__device float emissive_pdf(const float3 Ng, const float3 I)
|
||||
ccl_device float emissive_pdf(const float3 Ng, const float3 I)
|
||||
{
|
||||
float cosNO = fabsf(dot(Ng, I));
|
||||
return (cosNO > 0.0f)? 1.0f: 0.0f;
|
||||
}
|
||||
|
||||
__device void emissive_sample(const float3 Ng, float randu, float randv,
|
||||
ccl_device void emissive_sample(const float3 Ng, float randu, float randv,
|
||||
float3 *omega_out, float *pdf)
|
||||
{
|
||||
/* todo: not implemented and used yet */
|
||||
}
|
||||
|
||||
__device float3 emissive_simple_eval(const float3 Ng, const float3 I)
|
||||
ccl_device float3 emissive_simple_eval(const float3 Ng, const float3 I)
|
||||
{
|
||||
float res = emissive_pdf(Ng, I);
|
||||
|
||||
|
Reference in New Issue
Block a user