diff options
-rw-r--r-- | intern/cycles/bvh/bvh_embree.cpp | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/intern/cycles/bvh/bvh_embree.cpp b/intern/cycles/bvh/bvh_embree.cpp index 4b5c7152594..fa9993d8ac3 100644 --- a/intern/cycles/bvh/bvh_embree.cpp +++ b/intern/cycles/bvh/bvh_embree.cpp @@ -149,6 +149,13 @@ static void rtc_filter_occluded_func(const RTCFilterFunctionNArguments* args) break; } + /* Ignore curves. */ + if(hit->geomID & 1) { + /* This tells Embree to continue tracing. */ + *args->valid = 0; + break; + } + /* See triangle_intersect_subsurface() for the native equivalent. */ for(int i = min(ctx->max_hits, ctx->ss_isect->num_hits) - 1; i >= 0; --i) { if(ctx->ss_isect->hits[i].t == ray->tfar) { |