|
Blender V5.0
|
#include <node.h>
Inherits BVHNode.
Public Member Functions | |
| InnerNode (const BoundBox &bounds, unique_ptr< BVHNode > &&child0, unique_ptr< BVHNode > &&child1) | |
| InnerNode (const BoundBox &bounds) | |
| bool | is_leaf () const override |
| int | num_children () const override |
| BVHNode * | get_child (const int i) const override |
| void | print (const int depth) const override |
| Public Member Functions inherited from BVHNode | |
| virtual | ~BVHNode ()=default |
| virtual int | num_triangles () const |
| void | set_aligned_space (const Transform &aligned_space) |
| Transform | get_aligned_space () const |
| bool | has_unaligned () const |
| int | getSubtreeSize (BVH_STAT stat=BVH_STAT_NODE_COUNT) const |
| float | computeSubtreeSAHCost (const BVHParams &p, const float probability=1.0f) const |
| uint | update_visibility () |
| void | update_time () |
| void | dump_graph (const char *filename) |
Public Attributes | |
| int | num_children_ |
| unique_ptr< BVHNode > | children [kNumMaxChildren] |
| Public Attributes inherited from BVHNode | |
| BVHNode ** | children |
| BVHNode * | parent |
| float * | bv |
| int | index |
| char | node_num |
| char | main_axis |
| BoundBox | bounds |
| uint | visibility = 0 |
| bool | is_unaligned = false |
| unique_ptr< Transform > | aligned_space |
| float | time_from = 0.0f |
| float | time_to = 1.0f |
Static Public Attributes | |
| static constexpr int | kNumMaxChildren = 8 |
Additional Inherited Members | |
| Protected Member Functions inherited from BVHNode | |
| BVHNode (const BoundBox &bounds) | |
| BVHNode (const BVHNode &other) | |
Definition at line 122 of file bvh/node.h.
|
inline |
Definition at line 126 of file bvh/node.h.
References BVHNode::bounds, BVHNode::BVHNode(), children, num_children_, and BVHNode::visibility.
|
inlineexplicit |
Definition at line 144 of file bvh/node.h.
References BVHNode::bounds, BVHNode::BVHNode(), num_children_, and BVHNode::visibility.
|
inlineoverridevirtual |
Implements BVHNode.
Definition at line 158 of file bvh/node.h.
References assert, BVHNode::BVHNode(), children, i, and num_children_.
|
inlineoverridevirtual |
Implements BVHNode.
Definition at line 150 of file bvh/node.h.
|
inlineoverridevirtual |
|
overridevirtual |
| unique_ptr<BVHNode> InnerNode::children[kNumMaxChildren] |
Definition at line 166 of file bvh/node.h.
Referenced by get_child(), InnerNode(), print(), BVHBuild::rotate(), BVHBuild::thread_build_node(), BVHBuild::thread_build_spatial_split_node(), BVHNode::update_time(), and BVHNode::update_visibility().
|
staticconstexpr |
Definition at line 124 of file bvh/node.h.
| int InnerNode::num_children_ |
Definition at line 165 of file bvh/node.h.
Referenced by get_child(), InnerNode(), InnerNode(), and num_children().