UNPKG

glam

Version:

Experimental WebGL Engine

69 lines (43 loc) 2.12 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = perspective; var _transform = require('../../transform'); var _transform2 = _interopRequireDefault(_transform); var _create = require('gl-mat3/create'); var _create2 = _interopRequireDefault(_create); var _create3 = require('gl-mat4/create'); var _create4 = _interopRequireDefault(_create3); var _update = require('./update'); var _update2 = _interopRequireDefault(_update); var _updateProjection = require('./update-projection'); var _updateProjection2 = _interopRequireDefault(_updateProjection); var _updateView = require('./update-view'); var _updateView2 = _interopRequireDefault(_updateView); var _updateNormal = require('./update-normal'); var _updateNormal2 = _interopRequireDefault(_updateNormal); var _updateModelView = require('./update-model-view'); var _updateModelView2 = _interopRequireDefault(_updateModelView); var _objectAssign = require('object-assign'); var _objectAssign2 = _interopRequireDefault(_objectAssign); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } function PerspectiveCamera(fieldOfView, aspectRatio, clipping) { this.type = ["camera", "camera/perspective"]; this.transform = (0, _transform2.default)(this); this.aspectRatio = aspectRatio === undefined ? 1 : aspectRatio; this.clipping = clipping === undefined ? [0.01, 100] : clipping; this.fieldOfView = fieldOfView === undefined ? Math.PI / 4 : fov; this.projection = (0, _create4.default)(); this.view = (0, _create4.default)(); this.normal = (0, _create2.default)(); this.modelView = (0, _create4.default)(); this.update = _update2.default.bind(null, this, {}); this.updateProjection = _updateProjection2.default.bind(null, this); this.updateNormal = _updateNormal2.default.bind(null, this); this.updateView = _updateView2.default.bind(null, this); this.updateModelView = _updateModelView2.default.bind(null, this); } function perspective(fieldOfView, aspectRatio, clipping) { return new PerspectiveCamera(fieldOfView, aspectRatio, clipping); }