@babylonjs/node-geometry-editor 6.17.0 → 6.17.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/babylon.nodeGeometryEditor.js +1 -1
- package/dist/babylon.nodeGeometryEditor.js.map +1 -1
- package/dist/babylon.nodeGeometryEditor.max.js +122 -86
- package/dist/babylon.nodeGeometryEditor.max.js.map +1 -1
- package/dist/babylon.nodeGeometryEditor.module.d.ts +12 -2
- package/package.json +2 -2
|
@@ -55223,7 +55223,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
55223
55223
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
55224
55224
|
/* harmony export */ BlockTools: () => (/* binding */ BlockTools)
|
|
55225
55225
|
/* harmony export */ });
|
|
55226
|
-
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/Meshes/Node/Blocks/
|
|
55226
|
+
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! core/Meshes/Node/Blocks/geometryInfoBlock */ "core/Misc/observable");
|
|
55227
55227
|
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__);
|
|
55228
55228
|
|
|
55229
55229
|
|
|
@@ -55269,12 +55269,18 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
55269
55269
|
|
|
55270
55270
|
|
|
55271
55271
|
|
|
55272
|
+
|
|
55273
|
+
|
|
55272
55274
|
|
|
55273
55275
|
|
|
55274
55276
|
|
|
55275
55277
|
class BlockTools {
|
|
55276
55278
|
static GetBlockFromString(data) {
|
|
55277
55279
|
switch (data) {
|
|
55280
|
+
case "GeometryInfoBlock":
|
|
55281
|
+
return new core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.GeometryInfoBlock("Geometry Info");
|
|
55282
|
+
case "CollectionBlock":
|
|
55283
|
+
return new core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.GeometryCollectionBlock("Collection");
|
|
55278
55284
|
case "OptimizeBlock":
|
|
55279
55285
|
return new core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.GeometryOptimizeBlock("Optimize");
|
|
55280
55286
|
case "NullBlock":
|
|
@@ -55462,6 +55468,11 @@ class BlockTools {
|
|
|
55462
55468
|
block.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.NodeGeometryContextualSources.GeometryID;
|
|
55463
55469
|
return block;
|
|
55464
55470
|
}
|
|
55471
|
+
case "CollectionIDBlock": {
|
|
55472
|
+
const block = new core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.GeometryInputBlock("Collection ID");
|
|
55473
|
+
block.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.NodeGeometryContextualSources.CollectionID;
|
|
55474
|
+
return block;
|
|
55475
|
+
}
|
|
55465
55476
|
case "FaceIDBlock": {
|
|
55466
55477
|
const block = new core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.GeometryInputBlock("Face ID");
|
|
55467
55478
|
block.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_0__.NodeGeometryContextualSources.FaceID;
|
|
@@ -55828,6 +55839,7 @@ class NodeListComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
|
55828
55839
|
"VertexIDBlock",
|
|
55829
55840
|
"FaceIDBlock",
|
|
55830
55841
|
"GeometryIDBlock",
|
|
55842
|
+
"CollectionIDBlock",
|
|
55831
55843
|
],
|
|
55832
55844
|
Logical: ["EqualBlock", "NotEqualBlock", "LessThanBlock", "LessOrEqualBlock", "GreaterThanBlock", "GreaterOrEqualBlock", "XorBlock", "OrBlock", "AndBlock"],
|
|
55833
55845
|
Math__Standard: [
|
|
@@ -55864,7 +55876,7 @@ class NodeListComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
|
55864
55876
|
Math__Vector: ["TransformBlock", "VectorConverterBlock", "NormalizeBlock"],
|
|
55865
55877
|
Matrices: ["RotationXBlock", "RotationYBlock", "RotationZBlock", "ScalingBlock", "TranslationBlock", "AlignBlock"],
|
|
55866
55878
|
Instances: ["InstantiateOnVerticesBlock", "InstantiateOnFacesBlock", "InstantiateOnVolumeBlock"],
|
|
55867
|
-
Misc: ["ElbowBlock", "DebugBlock", "TeleportInBlock", "TeleportOutBlock"],
|
|
55879
|
+
Misc: ["ElbowBlock", "DebugBlock", "TeleportInBlock", "TeleportOutBlock", "GeometryInfoBlock"],
|
|
55868
55880
|
Updates: [
|
|
55869
55881
|
"SetColorsBlock",
|
|
55870
55882
|
"SetNormalsBlock",
|
|
@@ -55873,6 +55885,7 @@ class NodeListComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component {
|
|
|
55873
55885
|
"SetUVsBlock",
|
|
55874
55886
|
"SetMaterialIDBlock",
|
|
55875
55887
|
"MergeBlock",
|
|
55888
|
+
"CollectionBlock",
|
|
55876
55889
|
"ComputeNormalsBlock",
|
|
55877
55890
|
"OptimizeBlock",
|
|
55878
55891
|
],
|
|
@@ -55946,6 +55959,7 @@ NodeListComponent._Tooltips = {
|
|
|
55946
55959
|
VertexIDBlock: "Contextual value representing the vertex index of the current vertex of the active geometry",
|
|
55947
55960
|
FaceIDBlock: "Contextual value representing the face index of the current face of the active geometry",
|
|
55948
55961
|
GeometryIDBlock: "Contextual value representing the identifier of the current active geometry",
|
|
55962
|
+
CollectionIDBlock: "Contextual value representing the collection ID associated with the current active geometry",
|
|
55949
55963
|
EqualBlock: "Conditional block set to Equal",
|
|
55950
55964
|
NotEqualBlock: "Conditional block set to NotEqual",
|
|
55951
55965
|
LessThanBlock: "Conditional block set to LessThan",
|
|
@@ -56011,6 +56025,7 @@ NodeListComponent._Tooltips = {
|
|
|
56011
56025
|
GeometryOutputBlock: "Output block used to gather the final geometry",
|
|
56012
56026
|
NullBlock: "Generate an empty geometry",
|
|
56013
56027
|
OptimizeBlock: "Eliminate vertices that share positions with another vertex",
|
|
56028
|
+
GeometryInfoBlock: "Provides information about a geometry",
|
|
56014
56029
|
};
|
|
56015
56030
|
|
|
56016
56031
|
|
|
@@ -56873,7 +56888,7 @@ class PropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Component
|
|
|
56873
56888
|
core_Misc_tools__WEBPACK_IMPORTED_MODULE_5__.DataStorage.WriteBoolean("UseNM", false);
|
|
56874
56889
|
this.props.globalState.onPreviewModeChanged.notifyObservers();
|
|
56875
56890
|
this.forceUpdate();
|
|
56876
|
-
} }))] }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "FILE", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_fileButtonLineComponent__WEBPACK_IMPORTED_MODULE_4__.FileButtonLineComponent, { label: "Load", onClick: (file) => this.load(file), accept: ".json" }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_22__.ButtonLineComponent, { label: "Save", onClick: () => {
|
|
56891
|
+
} }))] }), this.props.globalState.resyncHandler && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "SYNC", children: (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_22__.ButtonLineComponent, { label: "Update mesh in scene", onClick: () => this.props.globalState.resyncHandler() }) })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_2__.LineContainerComponent, { title: "FILE", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_sharedComponents_fileButtonLineComponent__WEBPACK_IMPORTED_MODULE_4__.FileButtonLineComponent, { label: "Load", onClick: (file) => this.load(file), accept: ".json" }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_22__.ButtonLineComponent, { label: "Save", onClick: () => {
|
|
56877
56892
|
this.save();
|
|
56878
56893
|
} }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_buttonLineComponent__WEBPACK_IMPORTED_MODULE_22__.ButtonLineComponent, { label: "Generate code", onClick: () => {
|
|
56879
56894
|
shared_ui_components_stringTools__WEBPACK_IMPORTED_MODULE_3__.StringTools.DownloadAsFile(this.props.globalState.hostDocument, this.props.globalState.nodeGeometry.generateCode(), "code.txt");
|
|
@@ -57844,15 +57859,16 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
57844
57859
|
|
|
57845
57860
|
|
|
57846
57861
|
|
|
57862
|
+
const predicate = (b) => !!b.getExecutionIndex;
|
|
57847
57863
|
class InputDisplayManager {
|
|
57864
|
+
constructor() {
|
|
57865
|
+
this._hasHighlights = false;
|
|
57866
|
+
}
|
|
57848
57867
|
getHeaderClass(nodeData) {
|
|
57849
57868
|
const inputBlock = nodeData.data;
|
|
57850
57869
|
if (inputBlock.isContextual) {
|
|
57851
57870
|
return _inputDisplayManager_modules_scss__WEBPACK_IMPORTED_MODULE_1__["default"]["contextual"];
|
|
57852
57871
|
}
|
|
57853
|
-
if (inputBlock.visibleInInspector) {
|
|
57854
|
-
return _inputDisplayManager_modules_scss__WEBPACK_IMPORTED_MODULE_1__["default"]["inspector"];
|
|
57855
|
-
}
|
|
57856
57872
|
return "";
|
|
57857
57873
|
}
|
|
57858
57874
|
getHeaderText(nodeData) {
|
|
@@ -57891,6 +57907,9 @@ class InputDisplayManager {
|
|
|
57891
57907
|
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_2__.NodeGeometryContextualSources.GeometryID:
|
|
57892
57908
|
value = "GeometryID";
|
|
57893
57909
|
break;
|
|
57910
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_2__.NodeGeometryContextualSources.CollectionID:
|
|
57911
|
+
value = "CollectionID";
|
|
57912
|
+
break;
|
|
57894
57913
|
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_2__.NodeGeometryContextualSources.FaceID:
|
|
57895
57914
|
value = "FaceID";
|
|
57896
57915
|
break;
|
|
@@ -57948,6 +57967,45 @@ class InputDisplayManager {
|
|
|
57948
57967
|
contentArea.innerHTML = value;
|
|
57949
57968
|
contentArea.classList.add(_inputDisplayManager_modules_scss__WEBPACK_IMPORTED_MODULE_1__["default"]["input-block"]);
|
|
57950
57969
|
}
|
|
57970
|
+
onSelectionChanged(nodeData, selectedData, manager) {
|
|
57971
|
+
const block = nodeData.data;
|
|
57972
|
+
if (!block.isContextual) {
|
|
57973
|
+
return;
|
|
57974
|
+
}
|
|
57975
|
+
const contextGenerationBlock = block.getDescendantOfPredicate(predicate);
|
|
57976
|
+
if (selectedData !== nodeData) {
|
|
57977
|
+
if (this._hasHighlights) {
|
|
57978
|
+
let removeHighlight;
|
|
57979
|
+
if (selectedData && selectedData.data.getClassName() === "GeometryInputBlock") {
|
|
57980
|
+
const otherSelection = selectedData.data;
|
|
57981
|
+
const otherContextGenerationBlock = otherSelection.getDescendantOfPredicate(predicate);
|
|
57982
|
+
removeHighlight = contextGenerationBlock !== otherContextGenerationBlock;
|
|
57983
|
+
}
|
|
57984
|
+
else {
|
|
57985
|
+
removeHighlight = true;
|
|
57986
|
+
}
|
|
57987
|
+
if (removeHighlight) {
|
|
57988
|
+
manager.onHighlightNodeObservable.notifyObservers({ data: contextGenerationBlock, active: false });
|
|
57989
|
+
}
|
|
57990
|
+
this._hasHighlights = false;
|
|
57991
|
+
}
|
|
57992
|
+
return;
|
|
57993
|
+
}
|
|
57994
|
+
if (contextGenerationBlock) {
|
|
57995
|
+
manager.onHighlightNodeObservable.notifyObservers({ data: contextGenerationBlock, active: true });
|
|
57996
|
+
this._hasHighlights = true;
|
|
57997
|
+
}
|
|
57998
|
+
}
|
|
57999
|
+
onDispose(nodeData, manager) {
|
|
58000
|
+
const block = nodeData.data;
|
|
58001
|
+
if (!block.isContextual) {
|
|
58002
|
+
return;
|
|
58003
|
+
}
|
|
58004
|
+
const contextGenerationBlock = block.getDescendantOfPredicate(predicate);
|
|
58005
|
+
if (contextGenerationBlock) {
|
|
58006
|
+
manager.onHighlightNodeObservable.notifyObservers({ data: contextGenerationBlock, active: false });
|
|
58007
|
+
}
|
|
58008
|
+
}
|
|
57951
58009
|
}
|
|
57952
58010
|
|
|
57953
58011
|
|
|
@@ -58485,13 +58543,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
58485
58543
|
/* harmony import */ var _sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../sharedComponents/lineContainerComponent */ "../../../tools/nodeGeometryEditor/dist/sharedComponents/lineContainerComponent.js");
|
|
58486
58544
|
/* harmony import */ var _genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./genericNodePropertyComponent */ "../../../tools/nodeGeometryEditor/dist/graphSystem/properties/genericNodePropertyComponent.js");
|
|
58487
58545
|
/* harmony import */ var _sharedComponents_checkBoxLineComponent__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../../sharedComponents/checkBoxLineComponent */ "../../../tools/nodeGeometryEditor/dist/sharedComponents/checkBoxLineComponent.js");
|
|
58488
|
-
/* harmony import */ var
|
|
58489
|
-
/* harmony import */ var
|
|
58490
|
-
/* harmony import */ var
|
|
58491
|
-
/* harmony import */ var
|
|
58492
|
-
/* harmony import */ var
|
|
58493
|
-
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_13___default = /*#__PURE__*/__webpack_require__.n(core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_13__);
|
|
58494
|
-
|
|
58546
|
+
/* harmony import */ var shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! shared-ui-components/lines/optionsLineComponent */ "../../../dev/sharedUiComponents/dist/lines/optionsLineComponent.js");
|
|
58547
|
+
/* harmony import */ var shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(/*! shared-ui-components/lines/floatLineComponent */ "../../../dev/sharedUiComponents/dist/lines/floatLineComponent.js");
|
|
58548
|
+
/* harmony import */ var shared_ui_components_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(/*! shared-ui-components/lines/sliderLineComponent */ "../../../dev/sharedUiComponents/dist/lines/sliderLineComponent.js");
|
|
58549
|
+
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(/*! core/Meshes/Node/Enums/nodeGeometryContextualSources */ "core/Misc/observable");
|
|
58550
|
+
/* harmony import */ var core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12___default = /*#__PURE__*/__webpack_require__.n(core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__);
|
|
58495
58551
|
|
|
58496
58552
|
|
|
58497
58553
|
|
|
@@ -58527,29 +58583,29 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
|
|
|
58527
58583
|
renderValue(globalState) {
|
|
58528
58584
|
const inputBlock = this.props.nodeData.data;
|
|
58529
58585
|
switch (inputBlock.type) {
|
|
58530
|
-
case
|
|
58531
|
-
case
|
|
58586
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Int:
|
|
58587
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Float: {
|
|
58532
58588
|
const cantDisplaySlider = isNaN(inputBlock.min) || isNaN(inputBlock.max) || inputBlock.min === inputBlock.max;
|
|
58533
|
-
const isIntger = inputBlock.type ===
|
|
58534
|
-
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
58589
|
+
const isIntger = inputBlock.type === core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Int;
|
|
58590
|
+
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.Fragment, { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Min", target: inputBlock, isInteger: isIntger, propertyName: "min", onChange: () => {
|
|
58535
58591
|
if (inputBlock.value < inputBlock.min) {
|
|
58536
58592
|
inputBlock.value = inputBlock.min;
|
|
58537
58593
|
}
|
|
58538
58594
|
this.forceUpdate();
|
|
58539
|
-
} }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
58595
|
+
} }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_floatLineComponent__WEBPACK_IMPORTED_MODULE_10__.FloatLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Max", target: inputBlock, isInteger: isIntger, propertyName: "max", onChange: () => {
|
|
58540
58596
|
if (inputBlock.value > inputBlock.max) {
|
|
58541
58597
|
inputBlock.value = inputBlock.max;
|
|
58542
58598
|
}
|
|
58543
58599
|
this.forceUpdate();
|
|
58544
|
-
} }), cantDisplaySlider && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_floatPropertyTabComponent__WEBPACK_IMPORTED_MODULE_2__.FloatPropertyTabComponent, { globalState: globalState, inputBlock: inputBlock }), !cantDisplaySlider && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
58600
|
+
} }), cantDisplaySlider && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_floatPropertyTabComponent__WEBPACK_IMPORTED_MODULE_2__.FloatPropertyTabComponent, { globalState: globalState, inputBlock: inputBlock }), !cantDisplaySlider && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_sliderLineComponent__WEBPACK_IMPORTED_MODULE_11__.SliderLineComponent, { lockObject: this.props.stateManager.lockObject, label: "Value", target: inputBlock, propertyName: "value", step: isIntger ? 1 : Math.abs(inputBlock.max - inputBlock.min) / 100.0, decimalCount: isIntger ? 0 : 2, minimum: Math.min(inputBlock.min, inputBlock.max), maximum: inputBlock.max, onChange: () => {
|
|
58545
58601
|
this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
|
|
58546
58602
|
} }))] }));
|
|
58547
58603
|
}
|
|
58548
|
-
case
|
|
58604
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector2:
|
|
58549
58605
|
return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_vector2PropertyTabComponent__WEBPACK_IMPORTED_MODULE_3__.Vector2PropertyTabComponent, { lockObject: globalState.lockObject, globalState: globalState, inputBlock: inputBlock });
|
|
58550
|
-
case
|
|
58606
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector3:
|
|
58551
58607
|
return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_vector3PropertyTabComponent__WEBPACK_IMPORTED_MODULE_4__.Vector3PropertyTabComponent, { lockObject: globalState.lockObject, globalState: globalState, inputBlock: inputBlock });
|
|
58552
|
-
case
|
|
58608
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector4:
|
|
58553
58609
|
return (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_components_propertyTab_properties_vector4PropertyTabComponent__WEBPACK_IMPORTED_MODULE_5__.Vector4PropertyTabComponent, { lockObject: globalState.lockObject, globalState: globalState, inputBlock: inputBlock });
|
|
58554
58610
|
}
|
|
58555
58611
|
return null;
|
|
@@ -58560,75 +58616,48 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
|
|
|
58560
58616
|
}
|
|
58561
58617
|
render() {
|
|
58562
58618
|
const inputBlock = this.props.nodeData.data;
|
|
58563
|
-
let contextualSourcesOptions = [{ label: "None", value:
|
|
58619
|
+
let contextualSourcesOptions = [{ label: "None", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.None }];
|
|
58564
58620
|
switch (inputBlock.type) {
|
|
58565
|
-
case
|
|
58566
|
-
case
|
|
58621
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Float:
|
|
58622
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Int:
|
|
58567
58623
|
contextualSourcesOptions = [
|
|
58568
|
-
{ label: "Vertex ID", value:
|
|
58569
|
-
{ label: "Face ID", value:
|
|
58570
|
-
{ label: "Geometry ID", value:
|
|
58624
|
+
{ label: "Vertex ID", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.VertexID },
|
|
58625
|
+
{ label: "Face ID", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.FaceID },
|
|
58626
|
+
{ label: "Geometry ID", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.GeometryID },
|
|
58627
|
+
{ label: "Collection ID", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.CollectionID },
|
|
58571
58628
|
];
|
|
58572
58629
|
break;
|
|
58573
|
-
case
|
|
58630
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector2:
|
|
58574
58631
|
contextualSourcesOptions = [
|
|
58575
|
-
{ label: "UV1s", value:
|
|
58576
|
-
{ label: "UV2s", value:
|
|
58577
|
-
{ label: "UV3s", value:
|
|
58578
|
-
{ label: "UV4s", value:
|
|
58579
|
-
{ label: "UV5s", value:
|
|
58580
|
-
{ label: "UV6s", value:
|
|
58632
|
+
{ label: "UV1s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV },
|
|
58633
|
+
{ label: "UV2s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV2 },
|
|
58634
|
+
{ label: "UV3s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV3 },
|
|
58635
|
+
{ label: "UV4s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV4 },
|
|
58636
|
+
{ label: "UV5s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV5 },
|
|
58637
|
+
{ label: "UV6s", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV6 },
|
|
58581
58638
|
];
|
|
58582
58639
|
break;
|
|
58583
|
-
case
|
|
58640
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector3:
|
|
58584
58641
|
contextualSourcesOptions = [
|
|
58585
|
-
{ label: "Positions", value:
|
|
58586
|
-
{ label: "Normals", value:
|
|
58642
|
+
{ label: "Positions", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Positions },
|
|
58643
|
+
{ label: "Normals", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Normals },
|
|
58587
58644
|
];
|
|
58588
58645
|
break;
|
|
58589
|
-
case
|
|
58646
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector4:
|
|
58590
58647
|
contextualSourcesOptions = [
|
|
58591
|
-
{ label: "Tangents", value:
|
|
58592
|
-
{ label: "Colors", value:
|
|
58648
|
+
{ label: "Tangents", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Tangents },
|
|
58649
|
+
{ label: "Colors", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Colors },
|
|
58593
58650
|
];
|
|
58594
58651
|
break;
|
|
58595
58652
|
}
|
|
58596
58653
|
const modeOptions = [{ label: "User-defined", value: 0 }];
|
|
58597
58654
|
if (contextualSourcesOptions.length > 0) {
|
|
58598
|
-
modeOptions.push({ label: "Contextual value (Integer)", value:
|
|
58599
|
-
modeOptions.push({ label: "Contextual value (Vector2)", value:
|
|
58600
|
-
modeOptions.push({ label: "Contextual value (Vector3)", value:
|
|
58601
|
-
modeOptions.push({ label: "Contextual value (Vector4)", value:
|
|
58602
|
-
}
|
|
58603
|
-
|
|
58604
|
-
{ label: "None", value: 0 },
|
|
58605
|
-
{ label: "Visible in the inspector", value: 1 },
|
|
58606
|
-
];
|
|
58607
|
-
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_7__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_6__.LineContainerComponent, { title: "PROPERTIES", children: [!inputBlock.isContextual && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_10__.OptionsLineComponent, { label: "Type", options: typeOptions, target: inputBlock, noDirectUpdate: true, extractValue: () => {
|
|
58608
|
-
if (inputBlock.visibleInInspector) {
|
|
58609
|
-
return 1;
|
|
58610
|
-
}
|
|
58611
|
-
return 0;
|
|
58612
|
-
}, onSelect: (value) => {
|
|
58613
|
-
switch (value) {
|
|
58614
|
-
case 0:
|
|
58615
|
-
inputBlock.visibleInInspector = false;
|
|
58616
|
-
break;
|
|
58617
|
-
case 1:
|
|
58618
|
-
inputBlock.visibleInInspector = true;
|
|
58619
|
-
break;
|
|
58620
|
-
case 2:
|
|
58621
|
-
inputBlock.visibleInInspector = false;
|
|
58622
|
-
break;
|
|
58623
|
-
}
|
|
58624
|
-
this.forceUpdate();
|
|
58625
|
-
this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
|
|
58626
|
-
this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
|
|
58627
|
-
}, propertyName: "" })), inputBlock.visibleInInspector && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textInputLineComponent__WEBPACK_IMPORTED_MODULE_9__.TextInputLineComponent, { label: "Group", propertyName: "groupInInspector", target: inputBlock, lockObject: this.props.stateManager.lockObject, onChange: () => {
|
|
58628
|
-
this.forceUpdate();
|
|
58629
|
-
this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
|
|
58630
|
-
this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
|
|
58631
|
-
}, throttlePropertyChangedNotification: true })), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_10__.OptionsLineComponent, { label: "Mode", options: modeOptions, target: inputBlock, noDirectUpdate: true, extractValue: () => {
|
|
58655
|
+
modeOptions.push({ label: "Contextual value (Integer)", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Int });
|
|
58656
|
+
modeOptions.push({ label: "Contextual value (Vector2)", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector2 });
|
|
58657
|
+
modeOptions.push({ label: "Contextual value (Vector3)", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector3 });
|
|
58658
|
+
modeOptions.push({ label: "Contextual value (Vector4)", value: core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector4 });
|
|
58659
|
+
}
|
|
58660
|
+
return ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)("div", { children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(_genericNodePropertyComponent__WEBPACK_IMPORTED_MODULE_7__.GeneralPropertyTabComponent, { stateManager: this.props.stateManager, nodeData: this.props.nodeData }), (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsxs)(_sharedComponents_lineContainerComponent__WEBPACK_IMPORTED_MODULE_6__.LineContainerComponent, { title: "PROPERTIES", children: [(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_9__.OptionsLineComponent, { label: "Mode", options: modeOptions, target: inputBlock, noDirectUpdate: true, extractValue: () => {
|
|
58632
58661
|
if (inputBlock.isContextual) {
|
|
58633
58662
|
return inputBlock.type;
|
|
58634
58663
|
}
|
|
@@ -58640,17 +58669,17 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
|
|
|
58640
58669
|
break;
|
|
58641
58670
|
default:
|
|
58642
58671
|
switch (value) {
|
|
58643
|
-
case
|
|
58644
|
-
inputBlock.contextualValue =
|
|
58672
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Int:
|
|
58673
|
+
inputBlock.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.VertexID;
|
|
58645
58674
|
break;
|
|
58646
|
-
case
|
|
58647
|
-
inputBlock.contextualValue =
|
|
58675
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector2:
|
|
58676
|
+
inputBlock.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.UV;
|
|
58648
58677
|
break;
|
|
58649
|
-
case
|
|
58650
|
-
inputBlock.contextualValue =
|
|
58678
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector3:
|
|
58679
|
+
inputBlock.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Positions;
|
|
58651
58680
|
break;
|
|
58652
|
-
case
|
|
58653
|
-
inputBlock.contextualValue =
|
|
58681
|
+
case core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryBlockConnectionPointTypes.Vector4:
|
|
58682
|
+
inputBlock.contextualValue = core_Meshes_Node_Enums_nodeGeometryConnectionPointTypes__WEBPACK_IMPORTED_MODULE_12__.NodeGeometryContextualSources.Colors;
|
|
58654
58683
|
break;
|
|
58655
58684
|
}
|
|
58656
58685
|
break;
|
|
@@ -58658,7 +58687,7 @@ class InputPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compo
|
|
|
58658
58687
|
this.forceUpdate();
|
|
58659
58688
|
this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
|
|
58660
58689
|
this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
|
|
58661
|
-
}, propertyName: "" }), !inputBlock.isContextual && this.renderValue(this.props.stateManager.data), inputBlock.isContextual && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(
|
|
58690
|
+
}, propertyName: "" }), !inputBlock.isContextual && this.renderValue(this.props.stateManager.data), inputBlock.isContextual && ((0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_optionsLineComponent__WEBPACK_IMPORTED_MODULE_9__.OptionsLineComponent, { label: "Contextual value", options: contextualSourcesOptions, target: inputBlock, propertyName: "contextualValue", onSelect: (value) => {
|
|
58662
58691
|
inputBlock.contextualValue = value;
|
|
58663
58692
|
this.forceUpdate();
|
|
58664
58693
|
this.props.stateManager.onUpdateRequiredObservable.notifyObservers(inputBlock);
|
|
@@ -58720,7 +58749,7 @@ class MeshPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compon
|
|
|
58720
58749
|
if (meshes.length) {
|
|
58721
58750
|
const block = this.props.nodeData.data;
|
|
58722
58751
|
block.mesh = meshes[0];
|
|
58723
|
-
this.props.stateManager.
|
|
58752
|
+
this.props.stateManager.onRebuildRequiredObservable.notifyObservers();
|
|
58724
58753
|
}
|
|
58725
58754
|
this.forceUpdate();
|
|
58726
58755
|
}
|
|
@@ -58756,7 +58785,7 @@ class MeshPropertyTabComponent extends react__WEBPACK_IMPORTED_MODULE_1__.Compon
|
|
|
58756
58785
|
return meshIndex;
|
|
58757
58786
|
}
|
|
58758
58787
|
return -1;
|
|
58759
|
-
} }))] })] }));
|
|
58788
|
+
} })), !scene && !!block.mesh && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_6__.TextLineComponent, { ignoreValue: true, label: `Mesh ${block.mesh.name} defined by code` }), !scene && !!block.isUsingCachedData && (0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_0__.jsx)(shared_ui_components_lines_textLineComponent__WEBPACK_IMPORTED_MODULE_6__.TextLineComponent, { ignoreValue: true, label: `Block is using cached data` })] })] }));
|
|
58760
58789
|
}
|
|
58761
58790
|
}
|
|
58762
58791
|
|
|
@@ -59299,6 +59328,13 @@ class NodeGeometryEditor {
|
|
|
59299
59328
|
globalState.hostWindow.addEventListener("beforeunload", () => {
|
|
59300
59329
|
globalState.onPopupClosedObservable.notifyObservers();
|
|
59301
59330
|
});
|
|
59331
|
+
// Resync
|
|
59332
|
+
if (options.hostMesh) {
|
|
59333
|
+
globalState.resyncHandler = () => {
|
|
59334
|
+
options.nodeGeometry.build();
|
|
59335
|
+
options.nodeGeometry.updateMesh(options.hostMesh);
|
|
59336
|
+
};
|
|
59337
|
+
}
|
|
59302
59338
|
// Close the popup window when the page is refreshed or scene is disposed
|
|
59303
59339
|
const popupWindow = _sharedComponents_popup__WEBPACK_IMPORTED_MODULE_4__.Popup["node-geometry-editor"];
|
|
59304
59340
|
if (globalState.nodeGeometry && options.hostScene && popupWindow) {
|