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);