processCamera( camera ) {

    		const json = this.json;

    		if ( ! json.cameras ) json.cameras = [];

    		const isOrtho = camera.isOrthographicCamera;

    		const cameraDef = {
    			type: isOrtho ? 'orthographic' : 'perspective'
    		};

    		if ( isOrtho ) {

    			cameraDef.orthographic = {
    				xmag: camera.right * 2,
    				ymag: camera.top * 2,
    				zfar: camera.far <= 0 ? 0.001 : camera.far,
    				znear: camera.near < 0 ? 0 : camera.near
    			};

    		} else {

    			cameraDef.perspective = {
    				aspectRatio: camera.aspect,
    				yfov: MathUtils.degToRad( camera.fov ),
    				zfar: camera.far <= 0 ? 0.001 : camera.far,
    				znear: camera.near < 0 ? 0 : camera.near
    			};

    		}

    		// Question: Is saving "type" as name intentional?
    		if ( camera.name !== '' ) cameraDef.name = camera.type;

    		return json.cameras.push( cameraDef ) - 1;

    	}
Process camera
@param  {THREE.Camera} camera Camera to process
@return {Integer}      Index of the processed mesh in the "camera" array