GPU-friendly BVH node structure (Legacy AoS format) More...
Data Fields | |
float3 | aabb_min |
Minimum corner of AABB (12 bytes) | |
float3 | aabb_max |
Maximum corner of AABB (12 bytes) | |
unsigned int | left_child |
Index of left child (0xFFFFFFFF if leaf) (4 bytes) | |
unsigned int | right_child |
Index of right child (0xFFFFFFFF if leaf) (4 bytes) | |
unsigned int | primitive_start |
Starting index in primitive array (4 bytes) | |
unsigned int | primitive_count |
Number of primitives (0 for internal nodes) (4 bytes) | |
unsigned int | is_leaf |
1 if leaf, 0 if internal node (4 bytes) | |
unsigned int | padding |
Padding for alignment (4 bytes) | |
GPU-friendly BVH node structure (Legacy AoS format)
This structure is optimized for GPU memory access patterns and maintains 64-byte alignment for optimal performance.
Definition at line 30 of file CollisionDetection.cu.
float3 GPUBVHNode::aabb_max |
Maximum corner of AABB (12 bytes)
Definition at line 32 of file CollisionDetection.cu.
float3 GPUBVHNode::aabb_min |
Minimum corner of AABB (12 bytes)
Definition at line 31 of file CollisionDetection.cu.
unsigned int GPUBVHNode::is_leaf |
1 if leaf, 0 if internal node (4 bytes)
Definition at line 37 of file CollisionDetection.cu.
unsigned int GPUBVHNode::left_child |
Index of left child (0xFFFFFFFF if leaf) (4 bytes)
Definition at line 33 of file CollisionDetection.cu.
unsigned int GPUBVHNode::padding |
Padding for alignment (4 bytes)
Definition at line 38 of file CollisionDetection.cu.
unsigned int GPUBVHNode::primitive_count |
Number of primitives (0 for internal nodes) (4 bytes)
Definition at line 36 of file CollisionDetection.cu.
unsigned int GPUBVHNode::primitive_start |
Starting index in primitive array (4 bytes)
Definition at line 35 of file CollisionDetection.cu.
unsigned int GPUBVHNode::right_child |
Index of right child (0xFFFFFFFF if leaf) (4 bytes)
Definition at line 34 of file CollisionDetection.cu.