|
@@ -33887,7 +33887,10 @@ var NumericInputComponent = /** @class */ (function (_super) {
|
|
|
return (react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "numeric" },
|
|
|
this.props.label &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "numeric-label" }, this.props.label + ": "),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("input", { type: "number", step: "1", className: "numeric-input", value: this.state.value, onChange: function (evt) { return _this.updateValue(evt); } })));
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("input", { type: "number", step: this.props.step, className: "numeric-input", value: this.state.value, onChange: function (evt) { return _this.updateValue(evt); } })));
|
|
|
+ };
|
|
|
+ NumericInputComponent.defaultProps = {
|
|
|
+ step: 1,
|
|
|
};
|
|
|
return NumericInputComponent;
|
|
|
}(react__WEBPACK_IMPORTED_MODULE_1__["Component"]));
|
|
@@ -34818,29 +34821,26 @@ var Vector3LineComponent = /** @class */ (function (_super) {
|
|
|
initialValue: previousValue
|
|
|
});
|
|
|
};
|
|
|
+ Vector3LineComponent.prototype.updateVector3 = function () {
|
|
|
+ var store = this.props.target[this.props.propertyName].clone();
|
|
|
+ this.props.target[this.props.propertyName] = this.state.value;
|
|
|
+ this.setState({ value: store });
|
|
|
+ this.raiseOnPropertyChanged(store);
|
|
|
+ };
|
|
|
Vector3LineComponent.prototype.updateStateX = function (value) {
|
|
|
this._localChange = true;
|
|
|
- var store = this.state.value.clone();
|
|
|
- this.props.target[this.props.propertyName].x = value;
|
|
|
this.state.value.x = value;
|
|
|
- this.setState({ value: this.state.value });
|
|
|
- this.raiseOnPropertyChanged(store);
|
|
|
+ this.updateVector3();
|
|
|
};
|
|
|
Vector3LineComponent.prototype.updateStateY = function (value) {
|
|
|
this._localChange = true;
|
|
|
- var store = this.state.value.clone();
|
|
|
- this.props.target[this.props.propertyName].y = value;
|
|
|
this.state.value.y = value;
|
|
|
- this.setState({ value: this.state.value });
|
|
|
- this.raiseOnPropertyChanged(store);
|
|
|
+ this.updateVector3();
|
|
|
};
|
|
|
Vector3LineComponent.prototype.updateStateZ = function (value) {
|
|
|
this._localChange = true;
|
|
|
- var store = this.state.value.clone();
|
|
|
- this.props.target[this.props.propertyName].z = value;
|
|
|
this.state.value.z = value;
|
|
|
- this.setState({ value: this.state.value });
|
|
|
- this.raiseOnPropertyChanged(store);
|
|
|
+ this.updateVector3();
|
|
|
};
|
|
|
Vector3LineComponent.prototype.render = function () {
|
|
|
var _this = this;
|
|
@@ -34852,9 +34852,12 @@ var Vector3LineComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "expand hoverIcon", onClick: function () { return _this.switchExpandState(); }, title: "Expand" }, chevron)),
|
|
|
this.state.isExpanded &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "secondLine" },
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "x", value: this.state.value.x, onChange: function (value) { return _this.updateStateX(value); } }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "y", value: this.state.value.y, onChange: function (value) { return _this.updateStateY(value); } }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "z", value: this.state.value.z, onChange: function (value) { return _this.updateStateZ(value); } }))));
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "x", step: this.props.step, value: this.state.value.x, onChange: function (value) { return _this.updateStateX(value); } }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "y", step: this.props.step, value: this.state.value.y, onChange: function (value) { return _this.updateStateY(value); } }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_numericInputComponent__WEBPACK_IMPORTED_MODULE_2__["NumericInputComponent"], { label: "z", step: this.props.step, value: this.state.value.z, onChange: function (value) { return _this.updateStateZ(value); } }))));
|
|
|
+ };
|
|
|
+ Vector3LineComponent.defaultProps = {
|
|
|
+ step: 1,
|
|
|
};
|
|
|
return Vector3LineComponent;
|
|
|
}(react__WEBPACK_IMPORTED_MODULE_1__["Component"]));
|
|
@@ -35482,7 +35485,9 @@ var AnimationGridComponent = /** @class */ (function (_super) {
|
|
|
_this._animations = new Array();
|
|
|
animatables.forEach(function (animatable) {
|
|
|
var _a;
|
|
|
- (_a = _this._animations).push.apply(_a, animatable.animations);
|
|
|
+ if (animatable.animations) {
|
|
|
+ (_a = _this._animations).push.apply(_a, animatable.animations);
|
|
|
+ }
|
|
|
});
|
|
|
// Extract from and to
|
|
|
if (_this._animations && _this._animations.length) {
|
|
@@ -37880,85 +37885,6 @@ var TexturePropertyGridComponent = /** @class */ (function (_super) {
|
|
|
|
|
|
/***/ }),
|
|
|
|
|
|
-/***/ "./components/actionTabs/tabs/propertyGrids/meshes/axesViewerComponent.tsx":
|
|
|
-/*!*********************************************************************************!*\
|
|
|
- !*** ./components/actionTabs/tabs/propertyGrids/meshes/axesViewerComponent.tsx ***!
|
|
|
- \*********************************************************************************/
|
|
|
-/*! exports provided: AxesViewerComponent */
|
|
|
-/***/ (function(module, __webpack_exports__, __webpack_require__) {
|
|
|
-
|
|
|
-"use strict";
|
|
|
-__webpack_require__.r(__webpack_exports__);
|
|
|
-/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AxesViewerComponent", function() { return AxesViewerComponent; });
|
|
|
-/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
|
|
|
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
|
|
|
-/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
|
|
|
-/* harmony import */ var babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! babylonjs/Maths/math */ "babylonjs/Misc/observable");
|
|
|
-/* harmony import */ var babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__);
|
|
|
-/* harmony import */ var _lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../../lines/checkBoxLineComponent */ "./components/actionTabs/lines/checkBoxLineComponent.tsx");
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-var AxesViewerComponent = /** @class */ (function (_super) {
|
|
|
- tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](AxesViewerComponent, _super);
|
|
|
- function AxesViewerComponent(props) {
|
|
|
- var _this = _super.call(this, props) || this;
|
|
|
- var node = _this.props.node;
|
|
|
- if (!node.reservedDataStore) {
|
|
|
- node.reservedDataStore = {};
|
|
|
- }
|
|
|
- _this.state = { displayAxis: (node.reservedDataStore && node.reservedDataStore.axisViewer) ? true : false };
|
|
|
- return _this;
|
|
|
- }
|
|
|
- AxesViewerComponent.prototype.shouldComponentUpdate = function (nextProps, nextState) {
|
|
|
- if (nextProps.node !== this.props.node) {
|
|
|
- nextState.displayAxis = (nextProps.node.reservedDataStore && nextProps.node.reservedDataStore.axisViewer) ? true : false;
|
|
|
- }
|
|
|
- return true;
|
|
|
- };
|
|
|
- AxesViewerComponent.prototype.displayAxes = function () {
|
|
|
- var node = this.props.node;
|
|
|
- var scene = babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["UtilityLayerRenderer"].DefaultUtilityLayer.utilityLayerScene;
|
|
|
- if (node.reservedDataStore.axisViewer) {
|
|
|
- node.reservedDataStore.axisViewer.dispose();
|
|
|
- node.reservedDataStore.axisViewer = null;
|
|
|
- scene.onBeforeRenderObservable.remove(node.reservedDataStore.onBeforeRenderObserver);
|
|
|
- node.reservedDataStore.onBeforeRenderObserver = null;
|
|
|
- this.setState({ displayAxis: false });
|
|
|
- return;
|
|
|
- }
|
|
|
- var viewer = new babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["AxesViewer"](scene);
|
|
|
- node.reservedDataStore.axisViewer = viewer;
|
|
|
- var x = new babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"](1, 0, 0);
|
|
|
- var y = new babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"](0, 1, 0);
|
|
|
- var z = new babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"](0, 0, 1);
|
|
|
- viewer.xAxis.reservedDataStore = { hidden: true };
|
|
|
- viewer.yAxis.reservedDataStore = { hidden: true };
|
|
|
- viewer.zAxis.reservedDataStore = { hidden: true };
|
|
|
- node.reservedDataStore.onBeforeRenderObserver = scene.onBeforeRenderObservable.add(function () {
|
|
|
- var cameraMatrix = scene.activeCamera.getWorldMatrix();
|
|
|
- var matrix = node.getWorldMatrix();
|
|
|
- var extend = babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Tmp"].Vector3[0];
|
|
|
- babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"].TransformCoordinatesFromFloatsToRef(0, 0, 1, cameraMatrix, extend);
|
|
|
- viewer.scaleLines = extend.length() / 10;
|
|
|
- viewer.update(node.getAbsolutePosition(), babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"].TransformNormal(x, matrix), babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"].TransformNormal(y, matrix), babylonjs_Maths_math__WEBPACK_IMPORTED_MODULE_2__["Vector3"].TransformNormal(z, matrix));
|
|
|
- });
|
|
|
- this.setState({ displayAxis: true });
|
|
|
- };
|
|
|
- AxesViewerComponent.prototype.render = function () {
|
|
|
- var _this = this;
|
|
|
- return (react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_3__["CheckBoxLineComponent"], { label: "Display axes", isSelected: function () { return _this.state.displayAxis; }, onSelect: function () { return _this.displayAxes(); } }));
|
|
|
- };
|
|
|
- return AxesViewerComponent;
|
|
|
-}(react__WEBPACK_IMPORTED_MODULE_1__["Component"]));
|
|
|
-
|
|
|
-
|
|
|
-
|
|
|
-/***/ }),
|
|
|
-
|
|
|
/***/ "./components/actionTabs/tabs/propertyGrids/meshes/bonePropertyGridComponent.tsx":
|
|
|
/*!***************************************************************************************!*\
|
|
|
!*** ./components/actionTabs/tabs/propertyGrids/meshes/bonePropertyGridComponent.tsx ***!
|
|
@@ -37996,7 +37922,7 @@ var BonePropertyGridComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__["LineContainerComponent"], { globalState: this.props.globalState, title: "TRANSFORMATIONS" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Position", target: bone, propertyName: "position", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
!bone.rotationQuaternion &&
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Rotation", target: bone, propertyName: "rotation", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Rotation", target: bone, propertyName: "rotation", step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
bone.rotationQuaternion &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_quaternionLineComponent__WEBPACK_IMPORTED_MODULE_5__["QuaternionLineComponent"], { label: "Rotation", target: bone, propertyName: "rotationQuaternion", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Scaling", target: bone, propertyName: "scaling", onPropertyChangedObservable: this.props.onPropertyChangedObservable }))));
|
|
@@ -38029,10 +37955,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
/* harmony import */ var _lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../lines/vector3LineComponent */ "./components/actionTabs/lines/vector3LineComponent.tsx");
|
|
|
/* harmony import */ var _lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../../../lines/sliderLineComponent */ "./components/actionTabs/lines/sliderLineComponent.tsx");
|
|
|
/* harmony import */ var _lines_quaternionLineComponent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../../lines/quaternionLineComponent */ "./components/actionTabs/lines/quaternionLineComponent.tsx");
|
|
|
-/* harmony import */ var _axesViewerComponent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./axesViewerComponent */ "./components/actionTabs/tabs/propertyGrids/meshes/axesViewerComponent.tsx");
|
|
|
-/* harmony import */ var _lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../../../lines/floatLineComponent */ "./components/actionTabs/lines/floatLineComponent.tsx");
|
|
|
-/* harmony import */ var _customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! ../customPropertyGridComponent */ "./components/actionTabs/tabs/propertyGrids/customPropertyGridComponent.tsx");
|
|
|
-
|
|
|
+/* harmony import */ var _lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ../../../lines/floatLineComponent */ "./components/actionTabs/lines/floatLineComponent.tsx");
|
|
|
+/* harmony import */ var _customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! ../customPropertyGridComponent */ "./components/actionTabs/tabs/propertyGrids/customPropertyGridComponent.tsx");
|
|
|
|
|
|
|
|
|
|
|
@@ -38190,7 +38114,7 @@ var MeshPropertyGridComponent = /** @class */ (function (_super) {
|
|
|
var renderNormalVectors = (mesh.reservedDataStore && mesh.reservedDataStore.normalLines) ? true : false;
|
|
|
var renderWireframeOver = (mesh.reservedDataStore && mesh.reservedDataStore.wireframeOver) ? true : false;
|
|
|
return (react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "pane" },
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_11__["CustomPropertyGridComponent"], { globalState: this.props.globalState, target: mesh, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_10__["CustomPropertyGridComponent"], { globalState: this.props.globalState, target: mesh, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "GENERAL" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_4__["TextLineComponent"], { label: "ID", value: mesh.id }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_4__["TextLineComponent"], { label: "Unique ID", value: mesh.uniqueId.toString() }),
|
|
@@ -38206,13 +38130,13 @@ var MeshPropertyGridComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "TRANSFORMS" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_6__["Vector3LineComponent"], { label: "Position", target: mesh, propertyName: "position", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
!mesh.rotationQuaternion &&
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_6__["Vector3LineComponent"], { label: "Rotation", target: mesh, propertyName: "rotation", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_6__["Vector3LineComponent"], { label: "Rotation", target: mesh, propertyName: "rotation", step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
mesh.rotationQuaternion &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_quaternionLineComponent__WEBPACK_IMPORTED_MODULE_8__["QuaternionLineComponent"], { label: "Rotation", target: mesh, propertyName: "rotationQuaternion", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_6__["Vector3LineComponent"], { label: "Scaling", target: mesh, propertyName: "scaling", onPropertyChangedObservable: this.props.onPropertyChangedObservable })),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "DISPLAY", closed: true },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_7__["SliderLineComponent"], { label: "Visibility", target: mesh, propertyName: "visibility", minimum: 0, maximum: 1, step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Alpha index", target: mesh, propertyName: "alphaIndex", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Alpha index", target: mesh, propertyName: "alphaIndex", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__["CheckBoxLineComponent"], { label: "Receive shadows", target: mesh, propertyName: "receiveShadows", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
mesh.isVerticesDataPresent(babylonjs_Misc_tools__WEBPACK_IMPORTED_MODULE_2__["VertexBuffer"].ColorKind) &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__["CheckBoxLineComponent"], { label: "Use vertex colors", target: mesh, propertyName: "useVertexColors", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
@@ -38235,16 +38159,15 @@ var MeshPropertyGridComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_4__["TextLineComponent"], { label: "has matrix indices", value: mesh.isVerticesDataPresent(babylonjs_Misc_tools__WEBPACK_IMPORTED_MODULE_2__["VertexBuffer"].MatricesIndicesKind) ? "Yes" : "No" })),
|
|
|
mesh.physicsImpostor != null &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "PHYSICS", closed: true },
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Mass", target: mesh.physicsImpostor, propertyName: "mass", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Friction", target: mesh.physicsImpostor, propertyName: "friction", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Restitution", target: mesh.physicsImpostor, propertyName: "restitution", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Mass", target: mesh.physicsImpostor, propertyName: "mass", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Friction", target: mesh.physicsImpostor, propertyName: "friction", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_9__["FloatLineComponent"], { lockObject: this.props.lockObject, label: "Restitution", target: mesh.physicsImpostor, propertyName: "restitution", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_4__["TextLineComponent"], { label: "Type", value: this.convertPhysicsTypeToString() })),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "DEBUG", closed: true },
|
|
|
mesh.material &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__["CheckBoxLineComponent"], { label: "Display normals", isSelected: function () { return displayNormals; }, onSelect: function () { return _this.displayNormals(); } }),
|
|
|
mesh.isVerticesDataPresent(babylonjs_Misc_tools__WEBPACK_IMPORTED_MODULE_2__["VertexBuffer"].NormalKind) &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__["CheckBoxLineComponent"], { label: "Render vertex normals", isSelected: function () { return renderNormalVectors; }, onSelect: function () { return _this.renderNormalVectors(); } }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_axesViewerComponent__WEBPACK_IMPORTED_MODULE_9__["AxesViewerComponent"], { globalState: this.props.globalState, node: mesh }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_5__["CheckBoxLineComponent"], { label: "Render wireframe over mesh", isSelected: function () { return renderWireframeOver; }, onSelect: function () { return _this.renderWireframeOver(); } }))));
|
|
|
};
|
|
|
return MeshPropertyGridComponent;
|
|
@@ -38385,9 +38308,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
/* harmony import */ var _lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../../lines/vector3LineComponent */ "./components/actionTabs/lines/vector3LineComponent.tsx");
|
|
|
/* harmony import */ var _lines_textLineComponent__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../../lines/textLineComponent */ "./components/actionTabs/lines/textLineComponent.tsx");
|
|
|
/* harmony import */ var _lines_quaternionLineComponent__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../lines/quaternionLineComponent */ "./components/actionTabs/lines/quaternionLineComponent.tsx");
|
|
|
-/* harmony import */ var _axesViewerComponent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./axesViewerComponent */ "./components/actionTabs/tabs/propertyGrids/meshes/axesViewerComponent.tsx");
|
|
|
-/* harmony import */ var _customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../customPropertyGridComponent */ "./components/actionTabs/tabs/propertyGrids/customPropertyGridComponent.tsx");
|
|
|
-
|
|
|
+/* harmony import */ var _customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../customPropertyGridComponent */ "./components/actionTabs/tabs/propertyGrids/customPropertyGridComponent.tsx");
|
|
|
|
|
|
|
|
|
|
|
@@ -38404,7 +38325,7 @@ var TransformNodePropertyGridComponent = /** @class */ (function (_super) {
|
|
|
TransformNodePropertyGridComponent.prototype.render = function () {
|
|
|
var transformNode = this.props.transformNode;
|
|
|
return (react__WEBPACK_IMPORTED_MODULE_1__["createElement"]("div", { className: "pane" },
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_8__["CustomPropertyGridComponent"], { globalState: this.props.globalState, target: transformNode, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_customPropertyGridComponent__WEBPACK_IMPORTED_MODULE_7__["CustomPropertyGridComponent"], { globalState: this.props.globalState, target: transformNode, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__["LineContainerComponent"], { globalState: this.props.globalState, title: "GENERAL" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_5__["TextLineComponent"], { label: "ID", value: transformNode.id }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_5__["TextLineComponent"], { label: "Unique ID", value: transformNode.uniqueId.toString() }),
|
|
@@ -38413,12 +38334,10 @@ var TransformNodePropertyGridComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__["LineContainerComponent"], { globalState: this.props.globalState, title: "TRANSFORMATIONS" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Position", target: transformNode, propertyName: "position", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
!transformNode.rotationQuaternion &&
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Rotation", target: transformNode, propertyName: "rotation", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Rotation", target: transformNode, propertyName: "rotation", step: 0.01, onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
transformNode.rotationQuaternion &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_quaternionLineComponent__WEBPACK_IMPORTED_MODULE_6__["QuaternionLineComponent"], { label: "Rotation", target: transformNode, propertyName: "rotationQuaternion", onPropertyChangedObservable: this.props.onPropertyChangedObservable }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Scaling", target: transformNode, propertyName: "scaling", onPropertyChangedObservable: this.props.onPropertyChangedObservable })),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__["LineContainerComponent"], { globalState: this.props.globalState, title: "DEBUG", closed: true },
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_axesViewerComponent__WEBPACK_IMPORTED_MODULE_7__["AxesViewerComponent"], { globalState: this.props.globalState, node: transformNode }))));
|
|
|
+ react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_vector3LineComponent__WEBPACK_IMPORTED_MODULE_4__["Vector3LineComponent"], { label: "Scaling", target: transformNode, propertyName: "scaling", onPropertyChangedObservable: this.props.onPropertyChangedObservable }))));
|
|
|
};
|
|
|
return TransformNodePropertyGridComponent;
|
|
|
}(react__WEBPACK_IMPORTED_MODULE_1__["Component"]));
|
|
@@ -39188,7 +39107,6 @@ var StatisticsTabComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Active bones", value: scene.getActiveBones().toString() }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Active particles", value: scene.getActiveParticles().toString() }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Draw calls", value: sceneInstrumentation.drawCallsCounter.current.toString() }),
|
|
|
- react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Texture collisions", value: sceneInstrumentation.textureCollisionsCounter.current.toString() }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Total lights", value: scene.lights.length.toString() }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Total vertices", value: scene.getTotalVertices().toString() }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_3__["TextLineComponent"], { label: "Total materials", value: scene.materials.length.toString() }),
|
|
@@ -39516,7 +39434,7 @@ var ToolsTabComponent = /** @class */ (function (_super) {
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lineContainerComponent__WEBPACK_IMPORTED_MODULE_3__["LineContainerComponent"], { globalState: this.props.globalState, title: "SCENE EXPORT" },
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_4__["ButtonLineComponent"], { label: "Export to GLB", onClick: function () { return _this.exportGLTF(); } }),
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_4__["ButtonLineComponent"], { label: "Export to Babylon", onClick: function () { return _this.exportBabylon(); } }),
|
|
|
- !scene.getEngine().premultipliedAlpha && scene.environmentTexture && scene.activeCamera &&
|
|
|
+ !scene.getEngine().premultipliedAlpha && scene.environmentTexture && scene.environmentTexture.isPrefiltered && scene.activeCamera &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_4__["ButtonLineComponent"], { label: "Generate .env texture", onClick: function () { return _this.createEnvTexture(); } })),
|
|
|
BABYLON.GLTFFileLoader &&
|
|
|
react__WEBPACK_IMPORTED_MODULE_1__["createElement"](_tools_gltfComponent__WEBPACK_IMPORTED_MODULE_6__["GLTFComponent"], { scene: scene, globalState: this.props.globalState })));
|
|
@@ -39893,43 +39811,43 @@ var ReplayRecorder = /** @class */ (function () {
|
|
|
this._recordedCodeLines.pop();
|
|
|
}
|
|
|
var value = event.value;
|
|
|
- if (value.w) { // Quaternion
|
|
|
+ if (value.w !== undefined) { // Quaternion
|
|
|
value = "new BABYLON.Quaternion(" + value.x + ", " + value.y + ", " + value.z + ", " + value.w + ")";
|
|
|
}
|
|
|
- else if (value.z) { // Vector3
|
|
|
+ else if (value.z !== undefined) { // Vector3
|
|
|
value = "new BABYLON.Vector3(" + value.x + ", " + value.y + ", " + value.z + ")";
|
|
|
}
|
|
|
- else if (value.y) { // Vector2
|
|
|
+ else if (value.y !== undefined) { // Vector2
|
|
|
value = "new BABYLON.Vector2(" + value.x + ", " + value.y + ")";
|
|
|
}
|
|
|
- else if (value.a) { // Color4
|
|
|
+ else if (value.a !== undefined) { // Color4
|
|
|
value = "new BABYLON.Color4(" + value.r + ", " + value.g + ", " + value.b + ", " + value.a + ")";
|
|
|
}
|
|
|
- else if (value.b) { // Color3
|
|
|
+ else if (value.b !== undefined) { // Color3
|
|
|
value = "new BABYLON.Color3(" + value.r + ", " + value.g + ", " + value.b + ")";
|
|
|
}
|
|
|
var target = event.object.getClassName().toLowerCase();
|
|
|
- if (event.object.uniqueId) {
|
|
|
+ if (event.object.id) {
|
|
|
if (target === "Scene") {
|
|
|
target = "scene";
|
|
|
}
|
|
|
- else if (target.indexOf("camera")) {
|
|
|
- target = "scene.getCameraByUniqueID(" + event.object.uniqueId + ")";
|
|
|
+ else if (target.indexOf("camera") > -1) {
|
|
|
+ target = "scene.getCameraByID(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
- else if (target.indexOf("mesh")) {
|
|
|
- target = "scene.getMeshByUniqueID(" + event.object.uniqueId + ")";
|
|
|
+ else if (target.indexOf("mesh") > -1) {
|
|
|
+ target = "scene.getMeshByID(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
- else if (target.indexOf("light")) {
|
|
|
- target = "scene.getLightByUniqueID(" + event.object.uniqueId + ")";
|
|
|
+ else if (target.indexOf("light") > -1) {
|
|
|
+ target = "scene.getLightByID(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
else if (target === "transformnode") {
|
|
|
- target = "scene.getTransformNodeByUniqueID(" + event.object.uniqueId + ")";
|
|
|
+ target = "scene.getTransformNodeByID(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
else if (target === "skeleton") {
|
|
|
- target = "scene.getSkeletonByUniqueId(" + event.object.uniqueId + ")";
|
|
|
+ target = "scene.getSkeletonById(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
- else if (target.indexOf("material")) {
|
|
|
- target = "scene.getMaterialByUniqueID(" + event.object.uniqueId + ")";
|
|
|
+ else if (target.indexOf("material") > -1) {
|
|
|
+ target = "scene.getMaterialByID(\"" + event.object.id + "\")";
|
|
|
}
|
|
|
}
|
|
|
this._recordedCodeLines.push(target + "." + event.property + " = " + value + ";");
|
|
@@ -40673,6 +40591,9 @@ var SceneTreeItemComponent = /** @class */ (function (_super) {
|
|
|
break;
|
|
|
case 4:
|
|
|
manager.boundingBoxGizmoEnabled = true;
|
|
|
+ if (manager.gizmos.boundingBoxGizmo) {
|
|
|
+ manager.gizmos.boundingBoxGizmo.fixedDragMeshScreenSize = true;
|
|
|
+ }
|
|
|
break;
|
|
|
}
|
|
|
if (this._selectedEntity && this._selectedEntity.getClassName) {
|
|
@@ -40985,6 +40906,7 @@ var SceneExplorerComponent = /** @class */ (function (_super) {
|
|
|
function SceneExplorerComponent(props) {
|
|
|
var _this = _super.call(this, props) || this;
|
|
|
_this._once = true;
|
|
|
+ _this._hooked = false;
|
|
|
_this.state = { filter: null, selectedEntity: null, scene: _this.props.scene };
|
|
|
_this.sceneMutationFunc = _this.processMutation.bind(_this);
|
|
|
return _this;
|
|
@@ -41011,12 +40933,14 @@ var SceneExplorerComponent = /** @class */ (function (_super) {
|
|
|
babylonjs_Engines_engineStore__WEBPACK_IMPORTED_MODULE_2__["EngineStore"].LastCreatedEngine.onNewSceneAddedObservable.remove(this._onNewSceneAddedObserver);
|
|
|
}
|
|
|
var scene = this.state.scene;
|
|
|
+ scene.onNewSkeletonAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewCameraAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewLightAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewMaterialAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewMeshAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewTextureAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onNewTransformNodeAddedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
+ scene.onSkeletonRemovedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onMeshRemovedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onCameraRemovedObservable.removeCallback(this.sceneMutationFunc);
|
|
|
scene.onLightRemovedObservable.removeCallback(this.sceneMutationFunc);
|
|
@@ -41109,6 +41033,23 @@ var SceneExplorerComponent = /** @class */ (function (_super) {
|
|
|
this._onNewSceneAddedObserver = babylonjs_Engines_engineStore__WEBPACK_IMPORTED_MODULE_2__["EngineStore"].LastCreatedEngine.onNewSceneAddedObservable.addOnce(function (scene) { return _this.setState({ scene: scene }); });
|
|
|
return null;
|
|
|
}
|
|
|
+ if (!this._hooked) {
|
|
|
+ this._hooked = true;
|
|
|
+ scene.onNewSkeletonAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewCameraAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewLightAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewMaterialAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewMeshAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewTextureAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onNewTransformNodeAddedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onSkeletonRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onMeshRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onCameraRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onLightRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onMaterialRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onTransformNodeRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ scene.onTextureRemovedObservable.add(this.sceneMutationFunc);
|
|
|
+ }
|
|
|
var guiElements = scene.textures.filter(function (t) { return t.getClassName() === "AdvancedDynamicTexture"; });
|
|
|
var textures = scene.textures.filter(function (t) { return t.getClassName() !== "AdvancedDynamicTexture"; });
|
|
|
var postProcessses = scene.postProcesses;
|
|
@@ -41163,19 +41104,6 @@ var SceneExplorerComponent = /** @class */ (function (_super) {
|
|
|
}
|
|
|
if (this._once) {
|
|
|
this._once = false;
|
|
|
- var scene = this.state.scene;
|
|
|
- scene.onNewCameraAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onNewLightAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onNewMaterialAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onNewMeshAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onNewTextureAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onNewTransformNodeAddedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onMeshRemovedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onCameraRemovedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onLightRemovedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onMaterialRemovedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onTransformNodeRemovedObservable.add(this.sceneMutationFunc);
|
|
|
- scene.onTextureRemovedObservable.add(this.sceneMutationFunc);
|
|
|
// A bit hacky but no other way to force the initial width to 300px and not auto
|
|
|
setTimeout(function () {
|
|
|
var element = document.getElementById("sceneExplorer");
|