9# include <embree4/rtcore.h>
10# include <embree4/rtcore_scene.h>
23class BVHEmbree :
public BVH {
28 const bool rtc_device_is_sycl_ =
false);
31# if defined(WITH_EMBREE_GPU) && RTC_VERSION >= 40302
35 const char *get_error_string(RTCError error_code);
42 ~BVHEmbree()
override;
45 void add_object(
Object *ob,
const int i);
46 void add_instance(
Object *ob,
const int i);
48 void add_points(
const Object *ob,
const PointCloud *pointcloud,
const int i);
49 void add_triangles(
const Object *ob,
const Mesh *
mesh,
const int i);
52 void set_tri_vertex_buffer(RTCGeometry geom_id,
const Mesh *
mesh,
const bool update);
53 void set_curve_vertex_buffer(RTCGeometry geom_id,
const Hair *hair,
const bool update);
54 void set_point_vertex_buffer(RTCGeometry geom_id,
59 bool rtc_device_is_sycl;
60 enum RTCBuildQuality build_quality;
void refit(btStridingMeshInterface *triangles, const btVector3 &aabbMin, const btVector3 &aabbMax)
void build(btStridingMeshInterface *triangles, bool useQuantizedAabbCompression, const btVector3 &bvhAabbMin, const btVector3 &bvhAabbMax)
#define CCL_NAMESPACE_END
void add_curves(bke::CurvesGeometry &curves, const Span< int > new_sizes)
static void update(bNodeTree *ntree)