UNPKG

infamous

Version:

A CSS3D/WebGL UI library.

33 lines (25 loc) 1.11 kB
"use strict"; 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;