BVH node for GPU traversal (48 bytes, flat array) More...
#include <BVHBuilder.h>
Data Fields | |
| float | aabb_min [3] |
| AABB min corner (12 bytes) | |
| float | aabb_max [3] |
| AABB max corner (12 bytes) | |
| uint32_t | left_child |
| Left child index (or first_prim if leaf) | |
| uint32_t | right_child |
| Right child index (UINT32_MAX if leaf) | |
| uint32_t | prim_count |
| Primitive count (0 = internal node, >0 = leaf) | |
| uint32_t | prim_type |
| Primitive type (0-5) for leaf nodes. | |
| uint32_t | first_prim |
| Index of first primitive in leaf. | |
| uint32_t | split_axis |
| Split axis for internal nodes (0=x, 1=y, 2=z) | |
BVH node for GPU traversal (48 bytes, flat array)
Flat array representation for efficient GPU traversal. Nodes reference children via array indices (not pointers). Leaf nodes contain homogeneous primitive types.
Definition at line 33 of file BVHBuilder.h.
| float helios::BVHNode::aabb_max[3] |
AABB max corner (12 bytes)
Definition at line 35 of file BVHBuilder.h.
| float helios::BVHNode::aabb_min[3] |
AABB min corner (12 bytes)
Definition at line 34 of file BVHBuilder.h.
| uint32_t helios::BVHNode::first_prim |
Index of first primitive in leaf.
Definition at line 40 of file BVHBuilder.h.
| uint32_t helios::BVHNode::left_child |
Left child index (or first_prim if leaf)
Definition at line 36 of file BVHBuilder.h.
| uint32_t helios::BVHNode::prim_count |
Primitive count (0 = internal node, >0 = leaf)
Definition at line 38 of file BVHBuilder.h.
| uint32_t helios::BVHNode::prim_type |
Primitive type (0-5) for leaf nodes.
Definition at line 39 of file BVHBuilder.h.
| uint32_t helios::BVHNode::right_child |
Right child index (UINT32_MAX if leaf)
Definition at line 37 of file BVHBuilder.h.
| uint32_t helios::BVHNode::split_axis |
Split axis for internal nodes (0=x, 1=y, 2=z)
Definition at line 41 of file BVHBuilder.h.