@pmndrs/bvh
    Preparing search index...

    Variable BVH_INSTANCE_BOX_WGSLConst

    BVH_INSTANCE_BOX_WGSL: "\nstruct BvhWorldBox {\n lower: vec3f,\n upper: vec3f,\n}\n\n// Relative padding: 2^-20 of each axis's summed term magnitude (see gpu-instance-box.ts).\nconst BVH_INSTANCE_BOX_PADDING: f32 = 9.5367431640625e-7;\n\nfn bvhInstanceWorldBox(row0: vec4f, row1: vec4f, row2: vec4f, objectLower: vec3f, objectUpper: vec3f) -> BvhWorldBox {\n let center = (objectLower + objectUpper) * 0.5;\n let halfExtent = (objectUpper - objectLower) * 0.5;\n let reach = max(abs(objectLower), abs(objectUpper));\n let worldCenter = vec3f(\n dot(row0.xyz, center) + row0.w,\n dot(row1.xyz, center) + row1.w,\n dot(row2.xyz, center) + row2.w,\n );\n let worldHalfExtent = vec3f(\n dot(abs(row0.xyz), halfExtent),\n dot(abs(row1.xyz), halfExtent),\n dot(abs(row2.xyz), halfExtent),\n );\n let magnitude = vec3f(\n dot(abs(row0.xyz), reach) + abs(row0.w),\n dot(abs(row1.xyz), reach) + abs(row1.w),\n dot(abs(row2.xyz), reach) + abs(row2.w),\n );\n let padding = magnitude * BVH_INSTANCE_BOX_PADDING;\n return BvhWorldBox(worldCenter - worldHalfExtent - padding, worldCenter + worldHalfExtent + padding);\n}\n" = ...

    Declares BvhWorldBox and bvhInstanceWorldBox(row0, row1, row2, lower, upper): rows of the object-to-world 3x4 matrix (xyz linear part, w translation) and the object-space box.