node package manager
Share your code. npm Orgs help your team discover, share, and reuse code. Create a free org ยป



A function to test if an axis aligned bounding box interesects the camera frustum.


First, pull this in via npm:

npm install box-frustum

Then you can do a frustum test like this:

  [1, 0, 0, 0,
   0, 1, 0, 0,
   0, 0, 1, 0,
   0, 0, 0, 1],
  [[-1,-1,-1], [1,1,1]])

Which will check if axis-aligned bounding box from (-1,-1,-1) to (1,1,1) intersects the frustum for the unit matrix.

require("box-frustum")(m, box)

module.exports implements the frustum test. It takes two arguments:

  • m is an array of 16 float values representing the homogeneous clip coordinate matrix for the camera in row major order.
  • box = [lo, hi] is an array of two length 3 arrays giving the bounds for the axis aligned bounding.

Results: true if the box intersects the camera frustum, flase otherwise.


(c) 2013 Mikola Lysenko. BSD