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 48 of file CollisionDetection.cu.
| float3 GPUBVHNode::aabb_max |
Maximum corner of AABB (12 bytes)
Definition at line 50 of file CollisionDetection.cu.
| float3 GPUBVHNode::aabb_min |
Minimum corner of AABB (12 bytes)
Definition at line 49 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::is_leaf |
1 if leaf, 0 if internal node (4 bytes)
Definition at line 55 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::left_child |
Index of left child (0xFFFFFFFF if leaf) (4 bytes)
Definition at line 51 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::padding |
Padding for alignment (4 bytes)
Definition at line 56 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::primitive_count |
Number of primitives (0 for internal nodes) (4 bytes)
Definition at line 54 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::primitive_start |
Starting index in primitive array (4 bytes)
Definition at line 53 of file CollisionDetection.cu.
| unsigned int GPUBVHNode::right_child |
Index of right child (0xFFFFFFFF if leaf) (4 bytes)
Definition at line 52 of file CollisionDetection.cu.