@onerjs/gui 8.23.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/2D/FrameGraph/guiTask.d.ts +34 -0
- package/2D/FrameGraph/guiTask.js +62 -0
- package/2D/FrameGraph/guiTask.js.map +1 -0
- package/2D/FrameGraph/renderGraphGUIBlock.d.ts +43 -0
- package/2D/FrameGraph/renderGraphGUIBlock.js +66 -0
- package/2D/FrameGraph/renderGraphGUIBlock.js.map +1 -0
- package/2D/adtInstrumentation.d.ts +52 -0
- package/2D/adtInstrumentation.js +107 -0
- package/2D/adtInstrumentation.js.map +1 -0
- package/2D/advancedDynamicTexture.d.ts +548 -0
- package/2D/advancedDynamicTexture.js +1522 -0
- package/2D/advancedDynamicTexture.js.map +1 -0
- package/2D/controls/button.d.ts +109 -0
- package/2D/controls/button.js +246 -0
- package/2D/controls/button.js.map +1 -0
- package/2D/controls/checkbox.d.ts +53 -0
- package/2D/controls/checkbox.js +164 -0
- package/2D/controls/checkbox.js.map +1 -0
- package/2D/controls/colorpicker.d.ts +101 -0
- package/2D/controls/colorpicker.js +1396 -0
- package/2D/controls/colorpicker.js.map +1 -0
- package/2D/controls/container.d.ts +179 -0
- package/2D/controls/container.js +616 -0
- package/2D/controls/container.js.map +1 -0
- package/2D/controls/control.d.ts +943 -0
- package/2D/controls/control.js +2460 -0
- package/2D/controls/control.js.map +1 -0
- package/2D/controls/displayGrid.d.ts +53 -0
- package/2D/controls/displayGrid.js +202 -0
- package/2D/controls/displayGrid.js.map +1 -0
- package/2D/controls/ellipse.d.ts +25 -0
- package/2D/controls/ellipse.js +93 -0
- package/2D/controls/ellipse.js.map +1 -0
- package/2D/controls/focusableButton.d.ts +17 -0
- package/2D/controls/focusableButton.js +25 -0
- package/2D/controls/focusableButton.js.map +1 -0
- package/2D/controls/focusableControl.d.ts +43 -0
- package/2D/controls/focusableControl.js +2 -0
- package/2D/controls/focusableControl.js.map +1 -0
- package/2D/controls/gradient/BaseGradient.d.ts +69 -0
- package/2D/controls/gradient/BaseGradient.js +84 -0
- package/2D/controls/gradient/BaseGradient.js.map +1 -0
- package/2D/controls/gradient/LinearGradient.d.ts +45 -0
- package/2D/controls/gradient/LinearGradient.js +73 -0
- package/2D/controls/gradient/LinearGradient.js.map +1 -0
- package/2D/controls/gradient/RadialGradient.d.ts +53 -0
- package/2D/controls/gradient/RadialGradient.js +89 -0
- package/2D/controls/gradient/RadialGradient.js.map +1 -0
- package/2D/controls/grid.d.ts +151 -0
- package/2D/controls/grid.js +528 -0
- package/2D/controls/grid.js.map +1 -0
- package/2D/controls/image.d.ts +228 -0
- package/2D/controls/image.js +915 -0
- package/2D/controls/image.js.map +1 -0
- package/2D/controls/index.d.ts +34 -0
- package/2D/controls/index.js +35 -0
- package/2D/controls/index.js.map +1 -0
- package/2D/controls/inputPassword.d.ts +9 -0
- package/2D/controls/inputPassword.js +22 -0
- package/2D/controls/inputPassword.js.map +1 -0
- package/2D/controls/inputText.d.ts +197 -0
- package/2D/controls/inputText.js +1035 -0
- package/2D/controls/inputText.js.map +1 -0
- package/2D/controls/inputTextArea.d.ts +142 -0
- package/2D/controls/inputTextArea.js +1025 -0
- package/2D/controls/inputTextArea.js.map +1 -0
- package/2D/controls/line.d.ts +73 -0
- package/2D/controls/line.js +227 -0
- package/2D/controls/line.js.map +1 -0
- package/2D/controls/multiLine.d.ts +75 -0
- package/2D/controls/multiLine.js +237 -0
- package/2D/controls/multiLine.js.map +1 -0
- package/2D/controls/radioButton.d.ts +49 -0
- package/2D/controls/radioButton.js +185 -0
- package/2D/controls/radioButton.js.map +1 -0
- package/2D/controls/rectangle.d.ts +43 -0
- package/2D/controls/rectangle.js +204 -0
- package/2D/controls/rectangle.js.map +1 -0
- package/2D/controls/scrollViewers/scrollViewer.d.ts +178 -0
- package/2D/controls/scrollViewers/scrollViewer.js +587 -0
- package/2D/controls/scrollViewers/scrollViewer.js.map +1 -0
- package/2D/controls/scrollViewers/scrollViewerWindow.d.ts +51 -0
- package/2D/controls/scrollViewers/scrollViewerWindow.js +254 -0
- package/2D/controls/scrollViewers/scrollViewerWindow.js.map +1 -0
- package/2D/controls/selector.d.ts +237 -0
- package/2D/controls/selector.js +579 -0
- package/2D/controls/selector.js.map +1 -0
- package/2D/controls/sliders/baseSlider.d.ts +80 -0
- package/2D/controls/sliders/baseSlider.js +299 -0
- package/2D/controls/sliders/baseSlider.js.map +1 -0
- package/2D/controls/sliders/imageBasedSlider.d.ts +47 -0
- package/2D/controls/sliders/imageBasedSlider.js +168 -0
- package/2D/controls/sliders/imageBasedSlider.js.map +1 -0
- package/2D/controls/sliders/imageScrollBar.d.ts +67 -0
- package/2D/controls/sliders/imageScrollBar.js +248 -0
- package/2D/controls/sliders/imageScrollBar.js.map +1 -0
- package/2D/controls/sliders/scrollBar.d.ts +50 -0
- package/2D/controls/sliders/scrollBar.js +175 -0
- package/2D/controls/sliders/scrollBar.js.map +1 -0
- package/2D/controls/sliders/slider.d.ts +46 -0
- package/2D/controls/sliders/slider.js +281 -0
- package/2D/controls/sliders/slider.js.map +1 -0
- package/2D/controls/stackPanel.d.ts +64 -0
- package/2D/controls/stackPanel.js +244 -0
- package/2D/controls/stackPanel.js.map +1 -0
- package/2D/controls/statics.d.ts +6 -0
- package/2D/controls/statics.js +50 -0
- package/2D/controls/statics.js.map +1 -0
- package/2D/controls/textBlock.d.ts +219 -0
- package/2D/controls/textBlock.js +670 -0
- package/2D/controls/textBlock.js.map +1 -0
- package/2D/controls/textWrapper.d.ts +13 -0
- package/2D/controls/textWrapper.js +88 -0
- package/2D/controls/textWrapper.js.map +1 -0
- package/2D/controls/toggleButton.d.ts +93 -0
- package/2D/controls/toggleButton.js +229 -0
- package/2D/controls/toggleButton.js.map +1 -0
- package/2D/controls/virtualKeyboard.d.ts +102 -0
- package/2D/controls/virtualKeyboard.js +275 -0
- package/2D/controls/virtualKeyboard.js.map +1 -0
- package/2D/index.d.ts +11 -0
- package/2D/index.js +13 -0
- package/2D/index.js.map +1 -0
- package/2D/math2D.d.ts +136 -0
- package/2D/math2D.js +235 -0
- package/2D/math2D.js.map +1 -0
- package/2D/measure.d.ts +77 -0
- package/2D/measure.js +138 -0
- package/2D/measure.js.map +1 -0
- package/2D/multiLinePoint.d.ts +47 -0
- package/2D/multiLinePoint.js +110 -0
- package/2D/multiLinePoint.js.map +1 -0
- package/2D/style.d.ts +46 -0
- package/2D/style.js +80 -0
- package/2D/style.js.map +1 -0
- package/2D/valueAndUnit.d.ts +89 -0
- package/2D/valueAndUnit.js +194 -0
- package/2D/valueAndUnit.js.map +1 -0
- package/2D/xmlLoader.d.ts +60 -0
- package/2D/xmlLoader.js +348 -0
- package/2D/xmlLoader.js.map +1 -0
- package/3D/behaviors/defaultBehavior.d.ts +73 -0
- package/3D/behaviors/defaultBehavior.js +103 -0
- package/3D/behaviors/defaultBehavior.js.map +1 -0
- package/3D/controls/MRTK3/touchHolographicButton.d.ts +220 -0
- package/3D/controls/MRTK3/touchHolographicButton.js +868 -0
- package/3D/controls/MRTK3/touchHolographicButton.js.map +1 -0
- package/3D/controls/abstractButton3D.d.ts +15 -0
- package/3D/controls/abstractButton3D.js +22 -0
- package/3D/controls/abstractButton3D.js.map +1 -0
- package/3D/controls/button3D.d.ts +51 -0
- package/3D/controls/button3D.js +98 -0
- package/3D/controls/button3D.js.map +1 -0
- package/3D/controls/container3D.d.ts +72 -0
- package/3D/controls/container3D.js +126 -0
- package/3D/controls/container3D.js.map +1 -0
- package/3D/controls/contentDisplay3D.d.ts +42 -0
- package/3D/controls/contentDisplay3D.js +81 -0
- package/3D/controls/contentDisplay3D.js.map +1 -0
- package/3D/controls/control3D.d.ts +183 -0
- package/3D/controls/control3D.js +401 -0
- package/3D/controls/control3D.js.map +1 -0
- package/3D/controls/cylinderPanel.d.ts +17 -0
- package/3D/controls/cylinderPanel.js +57 -0
- package/3D/controls/cylinderPanel.js.map +1 -0
- package/3D/controls/handMenu.d.ts +28 -0
- package/3D/controls/handMenu.js +39 -0
- package/3D/controls/handMenu.js.map +1 -0
- package/3D/controls/holographicBackplate.d.ts +49 -0
- package/3D/controls/holographicBackplate.js +104 -0
- package/3D/controls/holographicBackplate.js.map +1 -0
- package/3D/controls/holographicButton.d.ts +84 -0
- package/3D/controls/holographicButton.js +300 -0
- package/3D/controls/holographicButton.js.map +1 -0
- package/3D/controls/holographicSlate.d.ts +134 -0
- package/3D/controls/holographicSlate.js +413 -0
- package/3D/controls/holographicSlate.js.map +1 -0
- package/3D/controls/index.d.ts +22 -0
- package/3D/controls/index.js +24 -0
- package/3D/controls/index.js.map +1 -0
- package/3D/controls/meshButton3D.d.ts +21 -0
- package/3D/controls/meshButton3D.js +58 -0
- package/3D/controls/meshButton3D.js.map +1 -0
- package/3D/controls/nearMenu.d.ts +44 -0
- package/3D/controls/nearMenu.js +103 -0
- package/3D/controls/nearMenu.js.map +1 -0
- package/3D/controls/planePanel.d.ts +9 -0
- package/3D/controls/planePanel.js +30 -0
- package/3D/controls/planePanel.js.map +1 -0
- package/3D/controls/scatterPanel.d.ts +18 -0
- package/3D/controls/scatterPanel.js +98 -0
- package/3D/controls/scatterPanel.js.map +1 -0
- package/3D/controls/slider3D.d.ts +95 -0
- package/3D/controls/slider3D.js +256 -0
- package/3D/controls/slider3D.js.map +1 -0
- package/3D/controls/spherePanel.d.ts +17 -0
- package/3D/controls/spherePanel.js +58 -0
- package/3D/controls/spherePanel.js.map +1 -0
- package/3D/controls/stackPanel3D.d.ts +22 -0
- package/3D/controls/stackPanel3D.js +95 -0
- package/3D/controls/stackPanel3D.js.map +1 -0
- package/3D/controls/touchButton3D.d.ts +77 -0
- package/3D/controls/touchButton3D.js +205 -0
- package/3D/controls/touchButton3D.js.map +1 -0
- package/3D/controls/touchHolographicButton.d.ts +110 -0
- package/3D/controls/touchHolographicButton.js +400 -0
- package/3D/controls/touchHolographicButton.js.map +1 -0
- package/3D/controls/touchHolographicMenu.d.ts +61 -0
- package/3D/controls/touchHolographicMenu.js +139 -0
- package/3D/controls/touchHolographicMenu.js.map +1 -0
- package/3D/controls/touchMeshButton3D.d.ts +21 -0
- package/3D/controls/touchMeshButton3D.js +58 -0
- package/3D/controls/touchMeshButton3D.js.map +1 -0
- package/3D/controls/volumeBasedPanel.d.ts +53 -0
- package/3D/controls/volumeBasedPanel.js +158 -0
- package/3D/controls/volumeBasedPanel.js.map +1 -0
- package/3D/gizmos/gizmoHandle.d.ts +108 -0
- package/3D/gizmos/gizmoHandle.js +175 -0
- package/3D/gizmos/gizmoHandle.js.map +1 -0
- package/3D/gizmos/index.d.ts +2 -0
- package/3D/gizmos/index.js +3 -0
- package/3D/gizmos/index.js.map +1 -0
- package/3D/gizmos/slateGizmo.d.ts +57 -0
- package/3D/gizmos/slateGizmo.js +353 -0
- package/3D/gizmos/slateGizmo.js.map +1 -0
- package/3D/gui3DManager.d.ts +94 -0
- package/3D/gui3DManager.js +233 -0
- package/3D/gui3DManager.js.map +1 -0
- package/3D/index.d.ts +5 -0
- package/3D/index.js +7 -0
- package/3D/index.js.map +1 -0
- package/3D/materials/fluent/fluentMaterial.d.ts +91 -0
- package/3D/materials/fluent/fluentMaterial.js +286 -0
- package/3D/materials/fluent/fluentMaterial.js.map +1 -0
- package/3D/materials/fluent/index.d.ts +1 -0
- package/3D/materials/fluent/index.js +2 -0
- package/3D/materials/fluent/index.js.map +1 -0
- package/3D/materials/fluent/shaders/fluent.fragment.d.ts +5 -0
- package/3D/materials/fluent/shaders/fluent.fragment.js +41 -0
- package/3D/materials/fluent/shaders/fluent.fragment.js.map +1 -0
- package/3D/materials/fluent/shaders/fluent.vertex.d.ts +5 -0
- package/3D/materials/fluent/shaders/fluent.vertex.js +40 -0
- package/3D/materials/fluent/shaders/fluent.vertex.js.map +1 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.d.ts +155 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js +466 -0
- package/3D/materials/fluentBackplate/fluentBackplateMaterial.js.map +1 -0
- package/3D/materials/fluentBackplate/index.d.ts +1 -0
- package/3D/materials/fluentBackplate/index.js +2 -0
- package/3D/materials/fluentBackplate/index.js.map +1 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.d.ts +5 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js +60 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.fragment.js.map +1 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.d.ts +5 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js +127 -0
- package/3D/materials/fluentBackplate/shaders/fluentBackplate.vertex.js.map +1 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.d.ts +190 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.js +536 -0
- package/3D/materials/fluentButton/fluentButtonMaterial.js.map +1 -0
- package/3D/materials/fluentButton/index.d.ts +1 -0
- package/3D/materials/fluentButton/index.js +2 -0
- package/3D/materials/fluentButton/index.js.map +1 -0
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.d.ts +5 -0
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js +57 -0
- package/3D/materials/fluentButton/shaders/fluentButton.fragment.js.map +1 -0
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.d.ts +5 -0
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js +162 -0
- package/3D/materials/fluentButton/shaders/fluentButton.vertex.js.map +1 -0
- package/3D/materials/fluentMaterial.d.ts +4 -0
- package/3D/materials/fluentMaterial.js +5 -0
- package/3D/materials/fluentMaterial.js.map +1 -0
- package/3D/materials/handle/handleMaterial.d.ts +68 -0
- package/3D/materials/handle/handleMaterial.js +114 -0
- package/3D/materials/handle/handleMaterial.js.map +1 -0
- package/3D/materials/handle/index.d.ts +1 -0
- package/3D/materials/handle/index.js +2 -0
- package/3D/materials/handle/index.js.map +1 -0
- package/3D/materials/handle/shaders/handle.fragment.d.ts +5 -0
- package/3D/materials/handle/shaders/handle.fragment.js +11 -0
- package/3D/materials/handle/shaders/handle.fragment.js.map +1 -0
- package/3D/materials/handle/shaders/handle.vertex.d.ts +5 -0
- package/3D/materials/handle/shaders/handle.vertex.js +11 -0
- package/3D/materials/handle/shaders/handle.vertex.js.map +1 -0
- package/3D/materials/index.d.ts +5 -0
- package/3D/materials/index.js +7 -0
- package/3D/materials/index.js.map +1 -0
- package/3D/materials/mrdl/index.d.ts +3 -0
- package/3D/materials/mrdl/index.js +4 -0
- package/3D/materials/mrdl/index.js.map +1 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.d.ts +87 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.js +302 -0
- package/3D/materials/mrdl/mrdlBackglowMaterial.js.map +1 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.d.ts +148 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.js +433 -0
- package/3D/materials/mrdl/mrdlBackplateMaterial.js.map +1 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.d.ts +186 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.js +532 -0
- package/3D/materials/mrdl/mrdlFrontplateMaterial.js.map +1 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.d.ts +56 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.js +230 -0
- package/3D/materials/mrdl/mrdlInnerquadMaterial.js.map +1 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.d.ts +337 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js +855 -0
- package/3D/materials/mrdl/mrdlSliderBarMaterial.js.map +1 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.d.ts +337 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js +855 -0
- package/3D/materials/mrdl/mrdlSliderThumbMaterial.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.fragment.js +25 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.vertex.js +12 -0
- package/3D/materials/mrdl/shaders/mrdlBackglow.vertex.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js +88 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js +96 -0
- package/3D/materials/mrdl/shaders/mrdlBackplate.vertex.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.fragment.js +48 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.vertex.js +158 -0
- package/3D/materials/mrdl/shaders/mrdlFrontplate.vertex.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.fragment.js +27 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.vertex.js +13 -0
- package/3D/materials/mrdl/shaders/mrdlInnerquad.vertex.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js +236 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js +137 -0
- package/3D/materials/mrdl/shaders/mrdlSliderBar.vertex.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js +236 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.fragment.js.map +1 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.d.ts +5 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js +137 -0
- package/3D/materials/mrdl/shaders/mrdlSliderThumb.vertex.js.map +1 -0
- package/3D/vector3WithInfo.d.ts +16 -0
- package/3D/vector3WithInfo.js +18 -0
- package/3D/vector3WithInfo.js.map +1 -0
- package/index.d.ts +2 -0
- package/index.js +4 -0
- package/index.js.map +1 -0
- package/legacy/legacy.d.ts +1 -0
- package/legacy/legacy.js +17 -0
- package/legacy/legacy.js.map +1 -0
- package/license.md +71 -0
- package/package.json +47 -0
- package/readme.md +31 -0
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import type { FrameGraphTextureHandle, FrameGraph } from "@babylonjs/core/index.js";
|
|
2
|
+
import { AdvancedDynamicTexture } from "../advancedDynamicTexture.js";
|
|
3
|
+
import { FrameGraphTask } from "@babylonjs/core/FrameGraph/frameGraphTask.js";
|
|
4
|
+
/**
|
|
5
|
+
* Task that renders a GUI texture.
|
|
6
|
+
*/
|
|
7
|
+
export declare class FrameGraphGUITask extends FrameGraphTask {
|
|
8
|
+
/**
|
|
9
|
+
* The target texture to render the GUI to.
|
|
10
|
+
*/
|
|
11
|
+
targetTexture: FrameGraphTextureHandle;
|
|
12
|
+
/**
|
|
13
|
+
* The output texture of the task.
|
|
14
|
+
* This is the same texture as the target texture, but the handles are different!
|
|
15
|
+
*/
|
|
16
|
+
readonly outputTexture: FrameGraphTextureHandle;
|
|
17
|
+
get disabled(): boolean;
|
|
18
|
+
set disabled(value: boolean);
|
|
19
|
+
/**
|
|
20
|
+
* Gets the underlying advanced dynamic texture.
|
|
21
|
+
*/
|
|
22
|
+
get gui(): AdvancedDynamicTexture;
|
|
23
|
+
protected _adt: AdvancedDynamicTexture;
|
|
24
|
+
/**
|
|
25
|
+
* Constructs a new GUI task.
|
|
26
|
+
* @param name Name of the task
|
|
27
|
+
* @param frameGraph Frame graph the task belongs to
|
|
28
|
+
* @param adt The GUI texture. If not provided, a new fullscreen GUI will be created.
|
|
29
|
+
*/
|
|
30
|
+
constructor(name: string, frameGraph: FrameGraph, adt?: AdvancedDynamicTexture);
|
|
31
|
+
isReady(): boolean;
|
|
32
|
+
record(): void;
|
|
33
|
+
dispose(): void;
|
|
34
|
+
}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { AdvancedDynamicTexture } from "../advancedDynamicTexture.js";
|
|
2
|
+
import { FrameGraphTask } from "@babylonjs/core/FrameGraph/frameGraphTask.js";
|
|
3
|
+
/**
|
|
4
|
+
* Task that renders a GUI texture.
|
|
5
|
+
*/
|
|
6
|
+
export class FrameGraphGUITask extends FrameGraphTask {
|
|
7
|
+
get disabled() {
|
|
8
|
+
return this._disabled;
|
|
9
|
+
}
|
|
10
|
+
set disabled(value) {
|
|
11
|
+
this._disabled = value;
|
|
12
|
+
this._adt.disablePicking = value;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Gets the underlying advanced dynamic texture.
|
|
16
|
+
*/
|
|
17
|
+
get gui() {
|
|
18
|
+
return this._adt;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Constructs a new GUI task.
|
|
22
|
+
* @param name Name of the task
|
|
23
|
+
* @param frameGraph Frame graph the task belongs to
|
|
24
|
+
* @param adt The GUI texture. If not provided, a new fullscreen GUI will be created.
|
|
25
|
+
*/
|
|
26
|
+
constructor(name, frameGraph, adt) {
|
|
27
|
+
super(name, frameGraph);
|
|
28
|
+
if (adt) {
|
|
29
|
+
if (!adt.useStandalone) {
|
|
30
|
+
throw new Error(`AdvancedDynamicTexture "${name}": the texture must have been created with the useStandalone property set to true`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
else {
|
|
34
|
+
adt = AdvancedDynamicTexture.CreateFullscreenUI(name, undefined, { useStandalone: true });
|
|
35
|
+
}
|
|
36
|
+
this._adt = adt;
|
|
37
|
+
this.outputTexture = this._frameGraph.textureManager.createDanglingHandle();
|
|
38
|
+
}
|
|
39
|
+
isReady() {
|
|
40
|
+
return this._adt.guiIsReady() && this._adt._layerToDispose.isReady();
|
|
41
|
+
}
|
|
42
|
+
record() {
|
|
43
|
+
if (this.targetTexture === undefined) {
|
|
44
|
+
throw new Error("FrameGraphGUITask: targetTexture is required");
|
|
45
|
+
}
|
|
46
|
+
this._frameGraph.textureManager.resolveDanglingHandle(this.outputTexture, this.targetTexture);
|
|
47
|
+
const pass = this._frameGraph.addRenderPass(this.name);
|
|
48
|
+
pass.setRenderTarget(this.outputTexture);
|
|
49
|
+
pass.setExecuteFunc((context) => {
|
|
50
|
+
this._adt._checkUpdate(null);
|
|
51
|
+
context.render(this._adt._layerToDispose);
|
|
52
|
+
});
|
|
53
|
+
const passDisabled = this._frameGraph.addRenderPass(this.name + "_disabled", true);
|
|
54
|
+
passDisabled.setRenderTarget(this.outputTexture);
|
|
55
|
+
passDisabled.setExecuteFunc((_context) => { });
|
|
56
|
+
}
|
|
57
|
+
dispose() {
|
|
58
|
+
this._adt.dispose();
|
|
59
|
+
super.dispose();
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=guiTask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"guiTask.js","sourceRoot":"","sources":["../../../../../dev/gui/src/2D/FrameGraph/guiTask.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,qDAAuC;AAEhE;;GAEG;AACH,MAAM,OAAO,iBAAkB,SAAQ,cAAc;IAYjD,IAAoB,QAAQ;QACxB,OAAO,IAAI,CAAC,SAAS,CAAC;IAC1B,CAAC;IAED,IAAoB,QAAQ,CAAC,KAAc;QACvC,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;QACvB,IAAI,CAAC,IAAI,CAAC,cAAc,GAAG,KAAK,CAAC;IACrC,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,IAAI,CAAC;IACrB,CAAC;IAID;;;;;OAKG;IACH,YAAY,IAAY,EAAE,UAAsB,EAAE,GAA4B;QAC1E,KAAK,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC;QAExB,IAAI,GAAG,EAAE,CAAC;YACN,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,CAAC;gBACrB,MAAM,IAAI,KAAK,CAAC,2BAA2B,IAAI,mFAAmF,CAAC,CAAC;YACxI,CAAC;QACL,CAAC;aAAM,CAAC;YACJ,GAAG,GAAG,sBAAsB,CAAC,kBAAkB,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAC;QAC9F,CAAC;QACD,IAAI,CAAC,IAAI,GAAG,GAAG,CAAC;QAEhB,IAAI,CAAC,aAAa,GAAG,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,oBAAoB,EAAE,CAAC;IAChF,CAAC;IAEe,OAAO;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,IAAI,CAAC,IAAI,CAAC,eAAgB,CAAC,OAAO,EAAE,CAAC;IAC1E,CAAC;IAEM,MAAM;QACT,IAAI,IAAI,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;YACnC,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAC;QACpE,CAAC;QAED,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,qBAAqB,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,aAAa,CAAC,CAAC;QAE9F,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvD,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACzC,IAAI,CAAC,cAAc,CAAC,CAAC,OAAO,EAAE,EAAE;YAC5B,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC;YAC7B,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAgB,CAAC,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,GAAG,WAAW,EAAE,IAAI,CAAC,CAAC;QAEnF,YAAY,CAAC,eAAe,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;QACjD,YAAY,CAAC,cAAc,CAAC,CAAC,QAAQ,EAAE,EAAE,GAAE,CAAC,CAAC,CAAC;IAClD,CAAC;IAEe,OAAO;QACnB,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;QACpB,KAAK,CAAC,OAAO,EAAE,CAAC;IACpB,CAAC;CACJ","sourcesContent":["import type { FrameGraphTextureHandle, FrameGraph } from \"core/index\";\r\nimport { AdvancedDynamicTexture } from \"../advancedDynamicTexture\";\r\nimport { FrameGraphTask } from \"core/FrameGraph/frameGraphTask\";\r\n\r\n/**\r\n * Task that renders a GUI texture.\r\n */\r\nexport class FrameGraphGUITask extends FrameGraphTask {\r\n /**\r\n * The target texture to render the GUI to.\r\n */\r\n public targetTexture: FrameGraphTextureHandle;\r\n\r\n /**\r\n * The output texture of the task.\r\n * This is the same texture as the target texture, but the handles are different!\r\n */\r\n public readonly outputTexture: FrameGraphTextureHandle;\r\n\r\n public override get disabled() {\r\n return this._disabled;\r\n }\r\n\r\n public override set disabled(value: boolean) {\r\n this._disabled = value;\r\n this._adt.disablePicking = value;\r\n }\r\n\r\n /**\r\n * Gets the underlying advanced dynamic texture.\r\n */\r\n public get gui() {\r\n return this._adt;\r\n }\r\n\r\n protected _adt: AdvancedDynamicTexture;\r\n\r\n /**\r\n * Constructs a new GUI task.\r\n * @param name Name of the task\r\n * @param frameGraph Frame graph the task belongs to\r\n * @param adt The GUI texture. If not provided, a new fullscreen GUI will be created.\r\n */\r\n constructor(name: string, frameGraph: FrameGraph, adt?: AdvancedDynamicTexture) {\r\n super(name, frameGraph);\r\n\r\n if (adt) {\r\n if (!adt.useStandalone) {\r\n throw new Error(`AdvancedDynamicTexture \"${name}\": the texture must have been created with the useStandalone property set to true`);\r\n }\r\n } else {\r\n adt = AdvancedDynamicTexture.CreateFullscreenUI(name, undefined, { useStandalone: true });\r\n }\r\n this._adt = adt;\r\n\r\n this.outputTexture = this._frameGraph.textureManager.createDanglingHandle();\r\n }\r\n\r\n public override isReady() {\r\n return this._adt.guiIsReady() && this._adt._layerToDispose!.isReady();\r\n }\r\n\r\n public record(): void {\r\n if (this.targetTexture === undefined) {\r\n throw new Error(\"FrameGraphGUITask: targetTexture is required\");\r\n }\r\n\r\n this._frameGraph.textureManager.resolveDanglingHandle(this.outputTexture, this.targetTexture);\r\n\r\n const pass = this._frameGraph.addRenderPass(this.name);\r\n\r\n pass.setRenderTarget(this.outputTexture);\r\n pass.setExecuteFunc((context) => {\r\n this._adt._checkUpdate(null);\r\n context.render(this._adt._layerToDispose!);\r\n });\r\n\r\n const passDisabled = this._frameGraph.addRenderPass(this.name + \"_disabled\", true);\r\n\r\n passDisabled.setRenderTarget(this.outputTexture);\r\n passDisabled.setExecuteFunc((_context) => {});\r\n }\r\n\r\n public override dispose(): void {\r\n this._adt.dispose();\r\n super.dispose();\r\n }\r\n}\r\n"]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { NodeRenderGraphBlock } from "@babylonjs/core/FrameGraph/Node/nodeRenderGraphBlock.js";
|
|
2
|
+
import { AdvancedDynamicTexture } from "../advancedDynamicTexture.js";
|
|
3
|
+
import type { Scene } from "@babylonjs/core/scene.js";
|
|
4
|
+
import type { NodeRenderGraphConnectionPoint } from "@babylonjs/core/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint.js";
|
|
5
|
+
import type { NodeRenderGraphBuildState } from "@babylonjs/core/FrameGraph/Node/nodeRenderGraphBuildState.js";
|
|
6
|
+
import { FrameGraphGUITask } from "./guiTask.js";
|
|
7
|
+
import type { FrameGraph } from "@babylonjs/core/FrameGraph/frameGraph.js";
|
|
8
|
+
/**
|
|
9
|
+
* Block that implements a fullscreen GUI for render graph
|
|
10
|
+
*/
|
|
11
|
+
export declare class NodeRenderGraphGUIBlock extends NodeRenderGraphBlock {
|
|
12
|
+
protected _frameGraphTask: FrameGraphGUITask;
|
|
13
|
+
protected _gui: AdvancedDynamicTexture;
|
|
14
|
+
/**
|
|
15
|
+
* Gets the frame graph task associated with this block
|
|
16
|
+
*/
|
|
17
|
+
get task(): FrameGraphGUITask;
|
|
18
|
+
/**
|
|
19
|
+
* Gets the GUI texture used by this block
|
|
20
|
+
*/
|
|
21
|
+
get gui(): AdvancedDynamicTexture;
|
|
22
|
+
/**
|
|
23
|
+
* Create a new NodeRenderGraphGUIBlock
|
|
24
|
+
* @param name defines the block name
|
|
25
|
+
* @param frameGraph defines the hosting frame graph
|
|
26
|
+
* @param scene defines the hosting scene
|
|
27
|
+
*/
|
|
28
|
+
constructor(name: string, frameGraph: FrameGraph, scene: Scene);
|
|
29
|
+
/**
|
|
30
|
+
* Gets the current class name
|
|
31
|
+
* @returns the class name
|
|
32
|
+
*/
|
|
33
|
+
getClassName(): string;
|
|
34
|
+
/**
|
|
35
|
+
* Gets the target input component
|
|
36
|
+
*/
|
|
37
|
+
get target(): NodeRenderGraphConnectionPoint;
|
|
38
|
+
/**
|
|
39
|
+
* Gets the output component
|
|
40
|
+
*/
|
|
41
|
+
get output(): NodeRenderGraphConnectionPoint;
|
|
42
|
+
protected _buildBlock(state: NodeRenderGraphBuildState): void;
|
|
43
|
+
}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { NodeRenderGraphBlock } from "@babylonjs/core/FrameGraph/Node/nodeRenderGraphBlock.js";
|
|
2
|
+
import { AdvancedDynamicTexture } from "../advancedDynamicTexture.js";
|
|
3
|
+
import { NodeRenderGraphBlockConnectionPointTypes } from "@babylonjs/core/FrameGraph/Node/Types/nodeRenderGraphTypes.js";
|
|
4
|
+
import { RegisterClass } from "@babylonjs/core/Misc/typeStore.js";
|
|
5
|
+
import { FrameGraphGUITask } from "./guiTask.js";
|
|
6
|
+
/**
|
|
7
|
+
* Block that implements a fullscreen GUI for render graph
|
|
8
|
+
*/
|
|
9
|
+
export class NodeRenderGraphGUIBlock extends NodeRenderGraphBlock {
|
|
10
|
+
/**
|
|
11
|
+
* Gets the frame graph task associated with this block
|
|
12
|
+
*/
|
|
13
|
+
get task() {
|
|
14
|
+
return this._frameGraphTask;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Gets the GUI texture used by this block
|
|
18
|
+
*/
|
|
19
|
+
get gui() {
|
|
20
|
+
return this._frameGraphTask.gui;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Create a new NodeRenderGraphGUIBlock
|
|
24
|
+
* @param name defines the block name
|
|
25
|
+
* @param frameGraph defines the hosting frame graph
|
|
26
|
+
* @param scene defines the hosting scene
|
|
27
|
+
*/
|
|
28
|
+
constructor(name, frameGraph, scene) {
|
|
29
|
+
super(name, frameGraph, scene);
|
|
30
|
+
this.registerInput("target", NodeRenderGraphBlockConnectionPointTypes.Texture);
|
|
31
|
+
this._addDependenciesInput();
|
|
32
|
+
this.registerOutput("output", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);
|
|
33
|
+
this.target.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);
|
|
34
|
+
this.output._typeConnectionSource = this.target;
|
|
35
|
+
this._gui = AdvancedDynamicTexture.CreateFullscreenUI(this.name, undefined, {
|
|
36
|
+
useStandalone: true,
|
|
37
|
+
});
|
|
38
|
+
this._frameGraphTask = new FrameGraphGUITask(this.name, frameGraph, this._gui);
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Gets the current class name
|
|
42
|
+
* @returns the class name
|
|
43
|
+
*/
|
|
44
|
+
getClassName() {
|
|
45
|
+
return "GUI.NodeRenderGraphGUIBlock";
|
|
46
|
+
}
|
|
47
|
+
/**
|
|
48
|
+
* Gets the target input component
|
|
49
|
+
*/
|
|
50
|
+
get target() {
|
|
51
|
+
return this._inputs[0];
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Gets the output component
|
|
55
|
+
*/
|
|
56
|
+
get output() {
|
|
57
|
+
return this._outputs[0];
|
|
58
|
+
}
|
|
59
|
+
_buildBlock(state) {
|
|
60
|
+
super._buildBlock(state);
|
|
61
|
+
this.output.value = this._frameGraphTask.outputTexture; // the value of the output connection point is the "output" texture of the task
|
|
62
|
+
this._frameGraphTask.targetTexture = this.target.connectedPoint?.value;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
RegisterClass("BABYLON.GUI.NodeRenderGraphGUIBlock", NodeRenderGraphGUIBlock);
|
|
66
|
+
//# sourceMappingURL=renderGraphGUIBlock.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"renderGraphGUIBlock.js","sourceRoot":"","sources":["../../../../../dev/gui/src/2D/FrameGraph/renderGraphGUIBlock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,gEAAkD;AACjF,OAAO,EAAE,sBAAsB,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,wCAAwC,EAAE,sEAAwD;AAG3G,OAAO,EAAE,aAAa,EAAE,0CAA4B;AAEpD,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAG9C;;GAEG;AACH,MAAM,OAAO,uBAAwB,SAAQ,oBAAoB;IAI7D;;OAEG;IACH,IAAoB,IAAI;QACpB,OAAO,IAAI,CAAC,eAAe,CAAC;IAChC,CAAC;IAED;;OAEG;IACH,IAAW,GAAG;QACV,OAAO,IAAI,CAAC,eAAe,CAAC,GAAG,CAAC;IACpC,CAAC;IAED;;;;;OAKG;IACH,YAAmB,IAAY,EAAE,UAAsB,EAAE,KAAY;QACjE,KAAK,CAAC,IAAI,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;QAE/B,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,wCAAwC,CAAC,OAAO,CAAC,CAAC;QAC/E,IAAI,CAAC,qBAAqB,EAAE,CAAC;QAC7B,IAAI,CAAC,cAAc,CAAC,QAAQ,EAAE,wCAAwC,CAAC,YAAY,CAAC,CAAC;QAErF,IAAI,CAAC,MAAM,CAAC,+BAA+B,CAAC,wCAAwC,CAAC,UAAU,CAAC,CAAC;QACjG,IAAI,CAAC,MAAM,CAAC,qBAAqB,GAAG,IAAI,CAAC,MAAM,CAAC;QAEhD,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC,kBAAkB,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE;YACxE,aAAa,EAAE,IAAI;SACtB,CAAC,CAAC;QACH,IAAI,CAAC,eAAe,GAAG,IAAI,iBAAiB,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACnF,CAAC;IAED;;;OAGG;IACa,YAAY;QACxB,OAAO,6BAA6B,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC;IAC3B,CAAC;IAED;;OAEG;IACH,IAAW,MAAM;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;IAC5B,CAAC;IAEkB,WAAW,CAAC,KAAgC;QAC3D,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QAEzB,IAAI,CAAC,MAAM,CAAC,KAAK,GAAG,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,+EAA+E;QAEvI,IAAI,CAAC,eAAe,CAAC,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,cAAc,EAAE,KAAgC,CAAC;IACtG,CAAC;CACJ;AAED,aAAa,CAAC,qCAAqC,EAAE,uBAAuB,CAAC,CAAC","sourcesContent":["import { NodeRenderGraphBlock } from \"core/FrameGraph/Node/nodeRenderGraphBlock\";\r\nimport { AdvancedDynamicTexture } from \"../advancedDynamicTexture\";\r\nimport type { Scene } from \"core/scene\";\r\nimport { NodeRenderGraphBlockConnectionPointTypes } from \"core/FrameGraph/Node/Types/nodeRenderGraphTypes\";\r\nimport type { NodeRenderGraphConnectionPoint } from \"core/FrameGraph/Node/nodeRenderGraphBlockConnectionPoint\";\r\nimport type { NodeRenderGraphBuildState } from \"core/FrameGraph/Node/nodeRenderGraphBuildState\";\r\nimport { RegisterClass } from \"core/Misc/typeStore\";\r\nimport type { FrameGraphTextureHandle } from \"core/FrameGraph/frameGraphTypes\";\r\nimport { FrameGraphGUITask } from \"./guiTask\";\r\nimport type { FrameGraph } from \"core/FrameGraph/frameGraph\";\r\n\r\n/**\r\n * Block that implements a fullscreen GUI for render graph\r\n */\r\nexport class NodeRenderGraphGUIBlock extends NodeRenderGraphBlock {\r\n protected override _frameGraphTask: FrameGraphGUITask;\r\n protected _gui: AdvancedDynamicTexture;\r\n\r\n /**\r\n * Gets the frame graph task associated with this block\r\n */\r\n public override get task() {\r\n return this._frameGraphTask;\r\n }\r\n\r\n /**\r\n * Gets the GUI texture used by this block\r\n */\r\n public get gui() {\r\n return this._frameGraphTask.gui;\r\n }\r\n\r\n /**\r\n * Create a new NodeRenderGraphGUIBlock\r\n * @param name defines the block name\r\n * @param frameGraph defines the hosting frame graph\r\n * @param scene defines the hosting scene\r\n */\r\n public constructor(name: string, frameGraph: FrameGraph, scene: Scene) {\r\n super(name, frameGraph, scene);\r\n\r\n this.registerInput(\"target\", NodeRenderGraphBlockConnectionPointTypes.Texture);\r\n this._addDependenciesInput();\r\n this.registerOutput(\"output\", NodeRenderGraphBlockConnectionPointTypes.BasedOnInput);\r\n\r\n this.target.addAcceptedConnectionPointTypes(NodeRenderGraphBlockConnectionPointTypes.TextureAll);\r\n this.output._typeConnectionSource = this.target;\r\n\r\n this._gui = AdvancedDynamicTexture.CreateFullscreenUI(this.name, undefined, {\r\n useStandalone: true,\r\n });\r\n this._frameGraphTask = new FrameGraphGUITask(this.name, frameGraph, this._gui);\r\n }\r\n\r\n /**\r\n * Gets the current class name\r\n * @returns the class name\r\n */\r\n public override getClassName() {\r\n return \"GUI.NodeRenderGraphGUIBlock\";\r\n }\r\n\r\n /**\r\n * Gets the target input component\r\n */\r\n public get target(): NodeRenderGraphConnectionPoint {\r\n return this._inputs[0];\r\n }\r\n\r\n /**\r\n * Gets the output component\r\n */\r\n public get output(): NodeRenderGraphConnectionPoint {\r\n return this._outputs[0];\r\n }\r\n\r\n protected override _buildBlock(state: NodeRenderGraphBuildState) {\r\n super._buildBlock(state);\r\n\r\n this.output.value = this._frameGraphTask.outputTexture; // the value of the output connection point is the \"output\" texture of the task\r\n\r\n this._frameGraphTask.targetTexture = this.target.connectedPoint?.value as FrameGraphTextureHandle;\r\n }\r\n}\r\n\r\nRegisterClass(\"BABYLON.GUI.NodeRenderGraphGUIBlock\", NodeRenderGraphGUIBlock);\r\n"]}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { PerfCounter } from "@babylonjs/core/Misc/perfCounter.js";
|
|
2
|
+
import type { IDisposable } from "@babylonjs/core/scene.js";
|
|
3
|
+
import type { AdvancedDynamicTexture } from "./advancedDynamicTexture.js";
|
|
4
|
+
/**
|
|
5
|
+
* This class can be used to get instrumentation data from a AdvancedDynamicTexture object
|
|
6
|
+
*/
|
|
7
|
+
export declare class AdvancedDynamicTextureInstrumentation implements IDisposable {
|
|
8
|
+
/**
|
|
9
|
+
* Define the instrumented AdvancedDynamicTexture.
|
|
10
|
+
*/
|
|
11
|
+
texture: AdvancedDynamicTexture;
|
|
12
|
+
private _captureRenderTime;
|
|
13
|
+
private _renderTime;
|
|
14
|
+
private _captureLayoutTime;
|
|
15
|
+
private _layoutTime;
|
|
16
|
+
private _onBeginRenderObserver;
|
|
17
|
+
private _onEndRenderObserver;
|
|
18
|
+
private _onBeginLayoutObserver;
|
|
19
|
+
private _onEndLayoutObserver;
|
|
20
|
+
/**
|
|
21
|
+
* Gets the perf counter used to capture render time
|
|
22
|
+
*/
|
|
23
|
+
get renderTimeCounter(): PerfCounter;
|
|
24
|
+
/**
|
|
25
|
+
* Gets the perf counter used to capture layout time
|
|
26
|
+
*/
|
|
27
|
+
get layoutTimeCounter(): PerfCounter;
|
|
28
|
+
/**
|
|
29
|
+
* Enable or disable the render time capture
|
|
30
|
+
*/
|
|
31
|
+
get captureRenderTime(): boolean;
|
|
32
|
+
set captureRenderTime(value: boolean);
|
|
33
|
+
/**
|
|
34
|
+
* Enable or disable the layout time capture
|
|
35
|
+
*/
|
|
36
|
+
get captureLayoutTime(): boolean;
|
|
37
|
+
set captureLayoutTime(value: boolean);
|
|
38
|
+
/**
|
|
39
|
+
* Instantiates a new advanced dynamic texture instrumentation.
|
|
40
|
+
* This class can be used to get instrumentation data from an AdvancedDynamicTexture object
|
|
41
|
+
* @param texture Defines the AdvancedDynamicTexture to instrument
|
|
42
|
+
*/
|
|
43
|
+
constructor(
|
|
44
|
+
/**
|
|
45
|
+
* Define the instrumented AdvancedDynamicTexture.
|
|
46
|
+
*/
|
|
47
|
+
texture: AdvancedDynamicTexture);
|
|
48
|
+
/**
|
|
49
|
+
* Dispose and release associated resources.
|
|
50
|
+
*/
|
|
51
|
+
dispose(): void;
|
|
52
|
+
}
|
|
@@ -0,0 +1,107 @@
|
|
|
1
|
+
import { PerfCounter } from "@babylonjs/core/Misc/perfCounter.js";
|
|
2
|
+
/**
|
|
3
|
+
* This class can be used to get instrumentation data from a AdvancedDynamicTexture object
|
|
4
|
+
*/
|
|
5
|
+
export class AdvancedDynamicTextureInstrumentation {
|
|
6
|
+
// Properties
|
|
7
|
+
/**
|
|
8
|
+
* Gets the perf counter used to capture render time
|
|
9
|
+
*/
|
|
10
|
+
get renderTimeCounter() {
|
|
11
|
+
return this._renderTime;
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* Gets the perf counter used to capture layout time
|
|
15
|
+
*/
|
|
16
|
+
get layoutTimeCounter() {
|
|
17
|
+
return this._layoutTime;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Enable or disable the render time capture
|
|
21
|
+
*/
|
|
22
|
+
get captureRenderTime() {
|
|
23
|
+
return this._captureRenderTime;
|
|
24
|
+
}
|
|
25
|
+
set captureRenderTime(value) {
|
|
26
|
+
if (value === this._captureRenderTime) {
|
|
27
|
+
return;
|
|
28
|
+
}
|
|
29
|
+
this._captureRenderTime = value;
|
|
30
|
+
if (value) {
|
|
31
|
+
this._onBeginRenderObserver = this.texture.onBeginRenderObservable.add(() => {
|
|
32
|
+
this._renderTime.beginMonitoring();
|
|
33
|
+
});
|
|
34
|
+
this._onEndRenderObserver = this.texture.onEndRenderObservable.add(() => {
|
|
35
|
+
this._renderTime.endMonitoring(true);
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
this.texture.onBeginRenderObservable.remove(this._onBeginRenderObserver);
|
|
40
|
+
this._onBeginRenderObserver = null;
|
|
41
|
+
this.texture.onEndRenderObservable.remove(this._onEndRenderObserver);
|
|
42
|
+
this._onEndRenderObserver = null;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Enable or disable the layout time capture
|
|
47
|
+
*/
|
|
48
|
+
get captureLayoutTime() {
|
|
49
|
+
return this._captureLayoutTime;
|
|
50
|
+
}
|
|
51
|
+
set captureLayoutTime(value) {
|
|
52
|
+
if (value === this._captureLayoutTime) {
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
55
|
+
this._captureLayoutTime = value;
|
|
56
|
+
if (value) {
|
|
57
|
+
this._onBeginLayoutObserver = this.texture.onBeginLayoutObservable.add(() => {
|
|
58
|
+
this._layoutTime.beginMonitoring();
|
|
59
|
+
});
|
|
60
|
+
this._onEndLayoutObserver = this.texture.onEndLayoutObservable.add(() => {
|
|
61
|
+
this._layoutTime.endMonitoring(true);
|
|
62
|
+
});
|
|
63
|
+
}
|
|
64
|
+
else {
|
|
65
|
+
this.texture.onBeginLayoutObservable.remove(this._onBeginLayoutObserver);
|
|
66
|
+
this._onBeginLayoutObserver = null;
|
|
67
|
+
this.texture.onEndLayoutObservable.remove(this._onEndLayoutObserver);
|
|
68
|
+
this._onEndLayoutObserver = null;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Instantiates a new advanced dynamic texture instrumentation.
|
|
73
|
+
* This class can be used to get instrumentation data from an AdvancedDynamicTexture object
|
|
74
|
+
* @param texture Defines the AdvancedDynamicTexture to instrument
|
|
75
|
+
*/
|
|
76
|
+
constructor(
|
|
77
|
+
/**
|
|
78
|
+
* Define the instrumented AdvancedDynamicTexture.
|
|
79
|
+
*/
|
|
80
|
+
texture) {
|
|
81
|
+
this.texture = texture;
|
|
82
|
+
this._captureRenderTime = false;
|
|
83
|
+
this._renderTime = new PerfCounter();
|
|
84
|
+
this._captureLayoutTime = false;
|
|
85
|
+
this._layoutTime = new PerfCounter();
|
|
86
|
+
// Observers
|
|
87
|
+
this._onBeginRenderObserver = null;
|
|
88
|
+
this._onEndRenderObserver = null;
|
|
89
|
+
this._onBeginLayoutObserver = null;
|
|
90
|
+
this._onEndLayoutObserver = null;
|
|
91
|
+
}
|
|
92
|
+
/**
|
|
93
|
+
* Dispose and release associated resources.
|
|
94
|
+
*/
|
|
95
|
+
dispose() {
|
|
96
|
+
this.texture.onBeginRenderObservable.remove(this._onBeginRenderObserver);
|
|
97
|
+
this._onBeginRenderObserver = null;
|
|
98
|
+
this.texture.onEndRenderObservable.remove(this._onEndRenderObserver);
|
|
99
|
+
this._onEndRenderObserver = null;
|
|
100
|
+
this.texture.onBeginLayoutObservable.remove(this._onBeginLayoutObserver);
|
|
101
|
+
this._onBeginLayoutObserver = null;
|
|
102
|
+
this.texture.onEndLayoutObservable.remove(this._onEndLayoutObserver);
|
|
103
|
+
this._onEndLayoutObserver = null;
|
|
104
|
+
this.texture = null;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
//# sourceMappingURL=adtInstrumentation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"adtInstrumentation.js","sourceRoot":"","sources":["../../../../dev/gui/src/2D/adtInstrumentation.ts"],"names":[],"mappings":"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","sourcesContent":["import type { Nullable } from \"core/types\";\r\nimport type { Observer } from \"core/Misc/observable\";\r\nimport { PerfCounter } from \"core/Misc/perfCounter\";\r\nimport type { IDisposable } from \"core/scene\";\r\n\r\nimport type { AdvancedDynamicTexture } from \"./advancedDynamicTexture\";\r\n\r\n/**\r\n * This class can be used to get instrumentation data from a AdvancedDynamicTexture object\r\n */\r\nexport class AdvancedDynamicTextureInstrumentation implements IDisposable {\r\n private _captureRenderTime = false;\r\n private _renderTime = new PerfCounter();\r\n\r\n private _captureLayoutTime = false;\r\n private _layoutTime = new PerfCounter();\r\n\r\n // Observers\r\n private _onBeginRenderObserver: Nullable<Observer<AdvancedDynamicTexture>> = null;\r\n private _onEndRenderObserver: Nullable<Observer<AdvancedDynamicTexture>> = null;\r\n private _onBeginLayoutObserver: Nullable<Observer<AdvancedDynamicTexture>> = null;\r\n private _onEndLayoutObserver: Nullable<Observer<AdvancedDynamicTexture>> = null;\r\n\r\n // Properties\r\n\r\n /**\r\n * Gets the perf counter used to capture render time\r\n */\r\n public get renderTimeCounter(): PerfCounter {\r\n return this._renderTime;\r\n }\r\n\r\n /**\r\n * Gets the perf counter used to capture layout time\r\n */\r\n public get layoutTimeCounter(): PerfCounter {\r\n return this._layoutTime;\r\n }\r\n\r\n /**\r\n * Enable or disable the render time capture\r\n */\r\n public get captureRenderTime(): boolean {\r\n return this._captureRenderTime;\r\n }\r\n\r\n public set captureRenderTime(value: boolean) {\r\n if (value === this._captureRenderTime) {\r\n return;\r\n }\r\n\r\n this._captureRenderTime = value;\r\n\r\n if (value) {\r\n this._onBeginRenderObserver = this.texture.onBeginRenderObservable.add(() => {\r\n this._renderTime.beginMonitoring();\r\n });\r\n\r\n this._onEndRenderObserver = this.texture.onEndRenderObservable.add(() => {\r\n this._renderTime.endMonitoring(true);\r\n });\r\n } else {\r\n this.texture.onBeginRenderObservable.remove(this._onBeginRenderObserver);\r\n this._onBeginRenderObserver = null;\r\n this.texture.onEndRenderObservable.remove(this._onEndRenderObserver);\r\n this._onEndRenderObserver = null;\r\n }\r\n }\r\n\r\n /**\r\n * Enable or disable the layout time capture\r\n */\r\n public get captureLayoutTime(): boolean {\r\n return this._captureLayoutTime;\r\n }\r\n\r\n public set captureLayoutTime(value: boolean) {\r\n if (value === this._captureLayoutTime) {\r\n return;\r\n }\r\n\r\n this._captureLayoutTime = value;\r\n\r\n if (value) {\r\n this._onBeginLayoutObserver = this.texture.onBeginLayoutObservable.add(() => {\r\n this._layoutTime.beginMonitoring();\r\n });\r\n\r\n this._onEndLayoutObserver = this.texture.onEndLayoutObservable.add(() => {\r\n this._layoutTime.endMonitoring(true);\r\n });\r\n } else {\r\n this.texture.onBeginLayoutObservable.remove(this._onBeginLayoutObserver);\r\n this._onBeginLayoutObserver = null;\r\n this.texture.onEndLayoutObservable.remove(this._onEndLayoutObserver);\r\n this._onEndLayoutObserver = null;\r\n }\r\n }\r\n /**\r\n * Instantiates a new advanced dynamic texture instrumentation.\r\n * This class can be used to get instrumentation data from an AdvancedDynamicTexture object\r\n * @param texture Defines the AdvancedDynamicTexture to instrument\r\n */\r\n public constructor(\r\n /**\r\n * Define the instrumented AdvancedDynamicTexture.\r\n */\r\n public texture: AdvancedDynamicTexture\r\n ) {}\r\n\r\n /**\r\n * Dispose and release associated resources.\r\n */\r\n public dispose() {\r\n this.texture.onBeginRenderObservable.remove(this._onBeginRenderObserver);\r\n this._onBeginRenderObserver = null;\r\n this.texture.onEndRenderObservable.remove(this._onEndRenderObserver);\r\n this._onEndRenderObserver = null;\r\n this.texture.onBeginLayoutObservable.remove(this._onBeginLayoutObserver);\r\n this._onBeginLayoutObserver = null;\r\n this.texture.onEndLayoutObservable.remove(this._onEndLayoutObserver);\r\n this._onEndLayoutObserver = null;\r\n\r\n (<any>this.texture) = null;\r\n }\r\n}\r\n"]}
|