glam
Version:
Experimental WebGL Engine
31 lines (20 loc) • 982 B
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = updateLight;
var _normalize = require('gl-vec3/normalize');
var _normalize2 = _interopRequireDefault(_normalize);
var _copy = require('gl-vec3/copy');
var _copy2 = _interopRequireDefault(_copy);
var _updateScaleless = require('../../transform/update-scaleless');
var _updateScaleless2 = _interopRequireDefault(_updateScaleless);
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
function updateLight(light, previous, shader) {
// TODO - Re-evaluate this approach
if (light.flags.autoNormalizeDirection && (previous.direction[0] !== light.direction[0] || previous.direction[1] !== light.direction[1] || previous.direction[2] !== light.direction[2])) {
(0, _normalize2.default)(light.direction, light.direction);
(0, _copy2.default)(previous.direction, light.direction);
}
(0, _updateScaleless2.default)(light.transform);
}