API Reference

Class List

Frustum

A frustum is a shape that defines the viewing space of a camera. It can be used to determine visibility of points and bounding spheres. Typically, you would not create a Frustum shape directly, but instead query CameraComponent#frustum.

const frustum = new pc.Frustum();

Summary

Methods

containsPoint

Tests whether a point is inside the frustum.

containsSphere

Tests whether a bounding sphere intersects the frustum.

setFromMat4

Updates the frustum shape based on the supplied 4x4 matrix.

Details

Constructor

Frustum()

Create a new Frustum instance.

const frustum = new pc.Frustum();

Methods

containsPoint(point)

Tests whether a point is inside the frustum. Note that points lying in a frustum plane are considered to be outside the frustum.

Parameters

pointVec3

The point to test.

Returns

boolean

True if the point is inside the frustum, false otherwise.

containsSphere(sphere)

Tests whether a bounding sphere intersects the frustum. If the sphere is outside the frustum, zero is returned. If the sphere intersects the frustum, 1 is returned. If the sphere is completely inside the frustum, 2 is returned. Note that a sphere touching a frustum plane from the outside is considered to be outside the frustum.

Parameters

sphereBoundingSphere

The sphere to test.

Returns

number

0 if the bounding sphere is outside the frustum, 1 if it intersects the frustum and 2 if it is contained by the frustum.

setFromMat4(matrix)

Updates the frustum shape based on the supplied 4x4 matrix.

// Create a perspective projection matrix
const projMat = pc.Mat4();
projMat.setPerspective(45, 16 / 9, 1, 1000);

// Create a frustum shape that is represented by the matrix
const frustum = new pc.Frustum();
frustum.setFromMat4(projMat);

Parameters

matrixMat4

The matrix describing the shape of the frustum.