From 90cd7675ea20251ced129ff05ad0ea22968be823 Mon Sep 17 00:00:00 2001 From: tatsy Date: Tue, 15 Mar 2016 14:38:43 +0900 Subject: [PATCH] Fix bug on QBVH. --- sources/accelerator/qbvh.cc | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/sources/accelerator/qbvh.cc b/sources/accelerator/qbvh.cc index df4bff4..39d8d2b 100644 --- a/sources/accelerator/qbvh.cc +++ b/sources/accelerator/qbvh.cc @@ -238,12 +238,14 @@ bool QBVHAccel::intersect(Ray& ray, SurfaceInteraction* isect) const { } } else { // Leaf - const auto& prim = primitives_[item.node.index]; - SurfaceInteraction temp; - if (primitives_[item.node.index]->intersect(ray, &temp)) { - *isect = temp; - isect->setPrimitive(prim.get()); - hit = true; + if (item.node.index >= 0) { + const auto& prim = primitives_[item.node.index]; + SurfaceInteraction temp; + if (primitives_[item.node.index]->intersect(ray, &temp)) { + *isect = temp; + isect->setPrimitive(prim.get()); + hit = true; + } } } }