File: CSMFrustum.md | Updated: 11/15/2025
Represents the frustum of a CSM instance.
CSMFrustum is an addon, and must be imported explicitly, see Installation#Addons.
import { CSMFrustum } from 'three/addons/csm/CSMFrustum.js';
Constructs a new CSM frustum.
data | The CSM data.
---|---
An object representing the vertices of the near and far plane in view space.
The zNear value. This value depends on whether the CSM is used with WebGL or WebGPU. Both API use different conventions for their projection matrices.
Setups this CSM frustum from the given projection matrix and max far value.
projectionMatrix | The projection matrix, usually of the scene's camera.
---|---
maxFar | The maximum far value.
Returns: An object representing the vertices of the near and far plane in view space.
Splits the CSM frustum by the given array. The new CSM frustum are pushed into the given target array.
breaks | An array of numbers in the range [0,1] the defines how the CSM frustum should be split up.
---|---
target | The target array that holds the new CSM frustums.
Transforms the given target CSM frustum into the different coordinate system defined by the given camera matrix.
cameraMatrix | The matrix that defines the new coordinate system.
---|---
target | The CSM to convert.
Constructor data of CSMFrustum.
webGL
boolean | Whether this CSM frustum is used with WebGL or WebGPU.
---|---
projectionMatrix
Matrix4 | A projection matrix usually of the scene's camera.
maxFar
number | The maximum far value.