camera

fishereye, perspective, photograph

viewSize = 900;
aspectRatio = canvasWidth/canvasHeight;
camera = new THREE.OrthographicCamera(
	-aspectRatio*viewSize/ 2, aspectRatio*viewSize/2,
	viewSize / 2, -viewSize / 2,
	-1000, 1000);
camera.position.set( -890, 600, -480 );
cameraControls = new THREE.OrbitAndPanControls(camera, renderer.domElement);
cameraControls.target.set(0, 310, 0);
cameraControls.target.set(-2800, 360, -1600);
camera = new THREE.PerspectiveCamera( 30, aspectRAtio, 1, 10000);
camera.position.set( -170, 170, 40);
cameraControls = new THREE.OrbitAndPanControls(camera, renderer.domElement);
cameraControls.target.set(00, 50, 0);
effectController = {
	fov: 40
};
var gui = new dat.GUI();
var element = gui.add( effectController, "fov", 1.0, 179.0 );
element.name("field of view");

function render(){
	var delta = clock.getDelta();
	cameraControls.update(delta);

	camera.fov = effectController.fov;
	camera.updateProjectionMatrix();
	renderer.render(scene, camera);
}
var canvasWidth = window.innerWidth;
var canvasHeight = window.innerHeight;
renderer.setViewport(
	0.25 * canvasWidth, 0,
	0.5 * canvasWidth, 0.5 * canvasHeight );
frontCam = new THREE.OrthographicCamera(
	-aspectRatio*viewSize / 2, aspectRatio*viewSize / 2,
	viewSize / 2, -viewSize / 2,
	-1000, 1000);
frontCam.up.set( 0, 1, 0);
sideCam = new THREE.OrthographicCamera(
	-aspectRatio*viewSize / 2, aspectRatio*viewSize,
	viewSize / 2, -viewSize / 2,
	-1000, 1000);
sideCam.up.set( 0, 1, 0);

frontCam.position.copy( cameraControls.target);
frontCam.position.x -= 1;
frontCam.lookAt( cameraControls.target );
renderer.setViewport(0, 0.5*canvasHeight, 0.5*canvasWidth, 0.5*canvasHeight);
renderer.render( scene, frontCam );

sideCam.position.copy( cameraControls.target);
sideCam.position.z += 1;
sideCam.lookAt(cameraControls.target);
renderer.setViewport(0.5*canvasWidth, 0.5*canvasWidth, 0.5*canvasHeight);
renderer.render( scene, sideCam );
rearCam.position.copy(camera.position);
rearTarget.copy(camera.position);
rearTarget.sub(cameraControls.target);
rearTarget.add(camera.position);
rearCam.lookAt(rearTarget);