glam
Version:
Experimental WebGL Engine
52 lines (34 loc) • 1.16 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = createDirectionalLight;
var _meta = require('../../mesh/meta');
var _meta2 = _interopRequireDefault(_meta);
var _transform = require('../../transform');
var _transform2 = _interopRequireDefault(_transform);
var _update = require('./update');
var _update2 = _interopRequireDefault(_update);
var _objectAssign = require('object-assign');
var _objectAssign2 = _interopRequireDefault(_objectAssign);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function DirectionalLight(config) {
this.meta = (0, _meta2.default)();
this.transform = (0, _transform2.default)(this);
this.type = ["light", "light/directional"];
this.flags = {
autoNormalizeDirection: true
};
this.direction = config.direction;
this.color = config.color;
this.update = _update2.default.bind(null, this, {
direction: Array(3)
});
}
function createDirectionalLight(properties) {
var config = (0, _objectAssign2.default)({
direction: [0, 1, 0],
color: [1, 1, 1]
}, properties);
return new DirectionalLight(config);
}