camera.position.set( 0, 0, 5 );
const renderer = new THREE.WebGLRenderer();
renderer.setSize( width, height );
document.body.appendChild( renderer.domElement );

let offsetUpdated = false;
const viewOffset = new THREE.Vector2();
const cameraControls = new CameraControls( camera, renderer.domElement );
cameraControls._truckInternal = ( deltaX, deltaY ) => {

	viewOffset.x += deltaX;
	viewOffset.y += deltaY;

	camera.setViewOffset(
		width,
		height,
		viewOffset.x,
		viewOffset.y,
		width,
		height,
	);
	cam