Changeset View
Changeset View
Standalone View
Standalone View
intern/cycles/bvh/bvh_optix.cpp
| Show First 20 Lines • Show All 89 Lines • ▼ Show 20 Lines | if (hair->num_curves() > 0) { | ||||
| pack.prim_type.push_back_reserved(PRIMITIVE_PACK_SEGMENT(type, k)); | pack.prim_type.push_back_reserved(PRIMITIVE_PACK_SEGMENT(type, k)); | ||||
| // Each curve segment points back to its curve index | // Each curve segment points back to its curve index | ||||
| pack.prim_index.push_back_reserved(j); | pack.prim_index.push_back_reserved(j); | ||||
| pack.prim_object.push_back_reserved(0); | pack.prim_object.push_back_reserved(0); | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| } | } | ||||
| else if (geom->type == Geometry::MESH) { | else if (geom->type == Geometry::MESH || geom->type == Geometry::VOLUME) { | ||||
| Mesh *const mesh = static_cast<Mesh *const>(geom); | Mesh *const mesh = static_cast<Mesh *const>(geom); | ||||
| if (mesh->num_triangles() > 0) { | if (mesh->num_triangles() > 0) { | ||||
| const size_t num_triangles = mesh->num_triangles(); | const size_t num_triangles = mesh->num_triangles(); | ||||
| pack.prim_type.reserve(pack.prim_type.size() + num_triangles); | pack.prim_type.reserve(pack.prim_type.size() + num_triangles); | ||||
| pack.prim_index.reserve(pack.prim_index.size() + num_triangles); | pack.prim_index.reserve(pack.prim_index.size() + num_triangles); | ||||
| pack.prim_object.reserve(pack.prim_object.size() + num_triangles); | pack.prim_object.reserve(pack.prim_object.size() + num_triangles); | ||||
| uint type = PRIMITIVE_TRIANGLE; | uint type = PRIMITIVE_TRIANGLE; | ||||
| ▲ Show 20 Lines • Show All 124 Lines • Show Last 20 Lines | |||||