infamous
Version:
A CSS3D/WebGL UI library.
33 lines (25 loc) • 1.11 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
require("element-behaviors");
var _three = require("three");
var _BaseGeometryBehavior = _interopRequireDefault(require("./BaseGeometryBehavior"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
const DOMNodeGeometryBehavior = _BaseGeometryBehavior.default.subclass('DOMNodeGeometryBehavior', Public => ({
protected: {
createComponent() {
// We have to use a BoxGeometry instead of a
// PlaneGeometry because Three.js is not capable of
// casting shadows from Planes, at least until we find
// another way. Unfortunately, this increases polygon
// count by a factor of 6. See issue
// https://github.com/mrdoob/three.js/issues/9315
return new _three.BoxGeometry(Public(this).element.calculatedSize.x, Public(this).element.calculatedSize.y, 1);
}
}
}));
elementBehaviors.define('domnode-geometry', DOMNodeGeometryBehavior);
var _default = DOMNodeGeometryBehavior;
exports.default = _default;
;