Quick way to avoid intersections: bound complex object with a simple volume

对于一个复杂的物体,可以用一个相对简单的形状包起来。

我们可以把长方体理解为三个不同的对面形成的交集:前面和后面、左面和右面、上面和下面,每个面都是无限大的平面。

我们通常用的包围盒都是轴对齐包围盒(AABB),轴对齐指的是每个面对的要么是 xy平面、yz平面和 xz 平面。

<aside> 💡 光线怎么和包围盒求交

</aside>

对于二维如何求交

对两个线段求交集,得到光线进入盒子的时间。对于 3D 的情况:

iff:当且仅当