Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/device/multi/device.cpp
| Show First 20 Lines • Show All 176 Lines • ▼ Show 20 Lines | foreach (SubDevice &sub, devices) { | ||||
| if (!bvh_multi->sub_bvhs[i]) { | if (!bvh_multi->sub_bvhs[i]) { | ||||
| BVHParams params = bvh->params; | BVHParams params = bvh->params; | ||||
| if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_OPTIX) | if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_OPTIX) | ||||
| params.bvh_layout = BVH_LAYOUT_OPTIX; | params.bvh_layout = BVH_LAYOUT_OPTIX; | ||||
| else if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_OPTIX_EMBREE) | else if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_OPTIX_EMBREE) | ||||
| params.bvh_layout = sub.device->info.type == DEVICE_OPTIX ? BVH_LAYOUT_OPTIX : | params.bvh_layout = sub.device->info.type == DEVICE_OPTIX ? BVH_LAYOUT_OPTIX : | ||||
| BVH_LAYOUT_EMBREE; | BVH_LAYOUT_EMBREE; | ||||
| else if (bvh->params.bvh_layout == BVH_LAYOUT_MULTI_METAL_EMBREE) | |||||
| params.bvh_layout = sub.device->info.type == DEVICE_METAL ? BVH_LAYOUT_METAL : | |||||
| BVH_LAYOUT_EMBREE; | |||||
| /* Skip building a bottom level acceleration structure for non-instanced geometry on Embree | /* Skip building a bottom level acceleration structure for non-instanced geometry on Embree | ||||
| * (since they are put into the top level directly, see bvh_embree.cpp) */ | * (since they are put into the top level directly, see bvh_embree.cpp) */ | ||||
| if (!params.top_level && params.bvh_layout == BVH_LAYOUT_EMBREE && | if (!params.top_level && params.bvh_layout == BVH_LAYOUT_EMBREE && | ||||
| !bvh->geometry[0]->is_instanced()) { | !bvh->geometry[0]->is_instanced()) { | ||||
| i++; | i++; | ||||
| continue; | continue; | ||||
| } | } | ||||
| ▲ Show 20 Lines • Show All 227 Lines • Show Last 20 Lines | |||||