This builder is only a wrapper around all the other builders, which selects the best builder depending on the desired BVH quality and whether a multi-threaded build is desired.
Definition at line 15 of file default_builder.h.
Classes | |
struct | Config |
Public Types | |
enum class | Quality { Low , Medium , High } |
Static Public Member Functions | |
static BVH_ALWAYS_INLINE Bvh< Node > | build (std::span< const BBox > bboxes, std::span< const Vec > centers, const Config &config={}) |
Build a BVH in a single-thread. | |
static BVH_ALWAYS_INLINE Bvh< Node > | build (ThreadPool &thread_pool, std::span< const BBox > bboxes, std::span< const Vec > centers, const Config &config={}) |
Build a BVH in parallel using the given thread pool. | |
Private Types | |
using | BBox = bvh::v2::BBox< Scalar, Node::dimension > |
using | Scalar = typename Node::Scalar |
using | Vec = bvh::v2::Vec< Scalar, Node::dimension > |
Static Private Member Functions | |
static BVH_ALWAYS_INLINE auto | make_mini_tree_config (const Config &config) |
#include <bvh/v2/default_builder.h>
|
private |
Definition at line 18 of file default_builder.h.
|
private |
Definition at line 16 of file default_builder.h.
|
private |
Definition at line 17 of file default_builder.h.
|
strong |
Enumerator | |
---|---|
Low | |
Medium | |
High |
Definition at line 21 of file default_builder.h.
|
inlinestatic |
Build a BVH in a single-thread.
Definition at line 49 of file default_builder.h.
|
inlinestatic |
Build a BVH in parallel using the given thread pool.
Definition at line 33 of file default_builder.h.
|
inlinestaticprivate |
Definition at line 65 of file default_builder.h.