A PerspectiveCamera's frustum determines exactly what is visible and what is clipped in three.js
The viewing frustum is the truncated pyramid of space the camera sees, set by four parameters. fov is the vertical field-of-view in degrees (higher = wider, fishbowl effect); aspect is canvas width/height (must be updated on resize or the image distorts); near is the minimum render distance (objects closer are clipped); far is the maximum render distance (objects beyond are not drawn). Setting near too small relative to far wastes depth-buffer precision and causes z-fighting where two surfaces with nearly identical depth flicker. A typical starting configuration is fov=75, near=0.1, far=1000.
Examples
const camera = new THREE.PerspectiveCamera(75, width/height, 0.1, 1000);
// On resize:
camera.aspect = width / height;
camera.updateProjectionMatrix();
Assessment
Explain why an object at z=0.05 is invisible when near=0.1. Describe the z-fighting artefact and explain how tightening the near/far range reduces it.