v3f dir;
v3_sub( pb, pa, dir );
+ v3f dir_inv;
+ dir_inv[0] = 1.0f/dir[0];
+ dir_inv[1] = 1.0f/dir[1];
+ dir_inv[2] = 1.0f/dir[2];
+
int hit = -1;
float min_t = 1.0f;
v3_add( (v3f){ r, r, r}, box[1], box[1] );
v3_add( (v3f){-r,-r,-r}, box[0], box[0] );
- if( !ray_aabb( box, pa, dir, 1.0f ) )
+
+ if( !ray_aabb1( box, pa, dir_inv, 1.0f ) )
continue;
float t;