Blender V5.0
BVHObjectSplit Class Reference

#include <split.h>

Public Member Functions

 BVHObjectSplit ()=default
 BVHObjectSplit (BVHBuild *builder, BVHSpatialStorage *storage, const BVHRange &range, vector< BVHReference > &references, const float nodeSAH, const BVHUnaligned *unaligned_heuristic=nullptr, const Transform *aligned_space=nullptr)
void split (BVHRange &left, BVHRange &right, const BVHRange &range)

Public Attributes

float sah
int dim
int num_left
BoundBox left_bounds
BoundBox right_bounds

Protected Member Functions

__forceinline BoundBox get_prim_bounds (const BVHReference &prim) const

Protected Attributes

BVHSpatialStoragestorage_
vector< BVHReference > * references_
const BVHUnalignedunaligned_heuristic_
const Transformaligned_space_

Detailed Description

Definition at line 23 of file bvh/split.h.

Constructor & Destructor Documentation

◆ BVHObjectSplit() [1/2]

BVHObjectSplit::BVHObjectSplit ( )
default

References left.

◆ BVHObjectSplit() [2/2]

CCL_NAMESPACE_BEGIN BVHObjectSplit::BVHObjectSplit ( BVHBuild * builder,
BVHSpatialStorage * storage,
const BVHRange & range,
vector< BVHReference > & references,
const float nodeSAH,
const BVHUnaligned * unaligned_heuristic = nullptr,
const Transform * aligned_space = nullptr )

Member Function Documentation

◆ get_prim_bounds()

__forceinline BoundBox BVHObjectSplit::get_prim_bounds ( const BVHReference & prim) const
inlineprotected

Definition at line 48 of file bvh/split.h.

References __forceinline, aligned_space_, BVHReference::bounds(), and unaligned_heuristic_.

Referenced by BVHObjectSplit().

◆ split()

Member Data Documentation

◆ aligned_space_

const Transform* BVHObjectSplit::aligned_space_
protected

Definition at line 46 of file bvh/split.h.

Referenced by BVHObjectSplit(), get_prim_bounds(), and split().

◆ dim

int BVHObjectSplit::dim

Definition at line 26 of file bvh/split.h.

Referenced by BVHObjectSplit().

◆ left_bounds

BoundBox BVHObjectSplit::left_bounds

Definition at line 28 of file bvh/split.h.

Referenced by BVHObjectSplit(), and split().

◆ num_left

int BVHObjectSplit::num_left

Definition at line 27 of file bvh/split.h.

Referenced by BVHObjectSplit(), and split().

◆ references_

vector<BVHReference>* BVHObjectSplit::references_
protected

Definition at line 44 of file bvh/split.h.

Referenced by BVHObjectSplit(), and split().

◆ right_bounds

BoundBox BVHObjectSplit::right_bounds

Definition at line 29 of file bvh/split.h.

Referenced by BVHObjectSplit(), and split().

◆ sah

float BVHObjectSplit::sah

Definition at line 25 of file bvh/split.h.

Referenced by BVHObjectSplit().

◆ storage_

BVHSpatialStorage* BVHObjectSplit::storage_
protected

Definition at line 43 of file bvh/split.h.

Referenced by BVHObjectSplit().

◆ unaligned_heuristic_

const BVHUnaligned* BVHObjectSplit::unaligned_heuristic_
protected

Definition at line 45 of file bvh/split.h.

Referenced by BVHObjectSplit(), get_prim_bounds(), and split().


The documentation for this class was generated from the following files: