@vincentt-xr/sdk 2.0.0-alpha.1 → 2.0.0-alpha.3
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/GROUNDING.md +1614 -21
- package/dist/{DebuggerUI-CatYc-RG.cjs → DebuggerUI-B45_Gb9d.cjs} +1 -1
- package/dist/{DebuggerUI-gLMKiVwJ.js → DebuggerUI-xp4bg3gH.js} +1 -1
- package/dist/FaceMeshRenderer-CALA4k49.js +1195 -0
- package/dist/FaceMeshRenderer-D4PFqsb3.cjs +155 -0
- package/dist/FaceRetouch-Bq2rtPlV.cjs +134 -0
- package/dist/FaceRetouch-DF5UsOsZ.js +551 -0
- package/dist/audio/AudioEngine.d.ts +3 -1
- package/dist/audio/AudioPlayer.d.ts +29 -0
- package/dist/audio/AudioPlayerLogic.d.ts +4 -0
- package/dist/audio/index.d.ts +2 -0
- package/dist/components/Axes/index.d.ts +6 -0
- package/dist/components/FaceMesh/FaceMeshRenderer.d.ts +17 -0
- package/dist/components/FaceMesh/canonical/CanonicalFaceMeshRenderer.d.ts +17 -1
- package/dist/components/FaceMesh/canonical/FaceMeshMaterial.d.ts +25 -0
- package/dist/components/FaceMesh/canonical/assets.d.ts +3 -0
- package/dist/components/FaceMesh/canonical/geometryGroups.d.ts +9 -0
- package/dist/components/FaceMesh/canonical/parseCanonicalFaceModel.d.ts +2 -0
- package/dist/components/FaceMesh/canonical/shaders.d.ts +2 -0
- package/dist/components/FaceMesh/deform.d.ts +3 -0
- package/dist/components/FaceMesh/index.d.ts +5 -0
- package/dist/components/FaceMesh/material/defaults.d.ts +70 -0
- package/dist/components/FaceMesh/material/index.d.ts +1 -0
- package/dist/components/FaceMesh/material/options.d.ts +5 -1
- package/dist/components/FaceMesh/material/support.d.ts +7 -2
- package/dist/components/FaceMesh/material/textures.d.ts +4 -0
- package/dist/components/FaceMesh/material/types.d.ts +2 -2
- package/dist/components/FaceRetouch/Background.d.ts +5 -6
- package/dist/components/FaceRetouch/FaceRetouch.d.ts +47 -0
- package/dist/components/FaceRetouch/index.d.ts +2 -8
- package/dist/components/FaceRetouch/landmarkMask.d.ts +0 -5
- package/dist/components/FaceRetouch/useFaceRetouchMask.d.ts +3 -7
- package/dist/components/FaceTracker/index.d.ts +5 -3
- package/dist/components/FaceWarp3D/FaceWarp3DHead.d.ts +1 -1
- package/dist/components/HandJoints2D/index.d.ts +1 -1
- package/dist/components/HandTracking2D/HandVisual.d.ts +1 -1
- package/dist/components/HandTracking2D/index.d.ts +1 -1
- package/dist/components/HandTracking2DController/index.d.ts +1 -1
- package/dist/components/HandTracking3D/index.d.ts +1 -1
- package/dist/components/LightObject/index.d.ts +20 -0
- package/dist/components/LookAt/index.d.ts +23 -0
- package/dist/components/MeshRenderer/index.d.ts +59 -0
- package/dist/components/PerspectiveCamera/index.d.ts +2 -8
- package/dist/components/PinToMesh/index.d.ts +47 -0
- package/dist/components/RenderGroupLayer/index.d.ts +6 -0
- package/dist/components/SceneObjectRenderer/index.d.ts +16 -0
- package/dist/components/Screen2D/ScreenTransformFrame.d.ts +11 -0
- package/dist/components/Screen2D/ScreenTransformHelpers.d.ts +19 -0
- package/dist/components/Screen2D/ScreenTransformInteraction.d.ts +18 -0
- package/dist/components/Screen2D/index.d.ts +5 -0
- package/dist/components/ScreenGlass/defaults.d.ts +3 -0
- package/dist/components/ScreenGlass/index.d.ts +5 -0
- package/dist/components/ScreenGlass/shaders.d.ts +2 -0
- package/dist/components/ScreenGlass/types.d.ts +10 -0
- package/dist/components/ScreenGradient/defaults.d.ts +5 -0
- package/dist/components/ScreenGradient/index.d.ts +5 -0
- package/dist/components/ScreenGradient/shaders.d.ts +2 -0
- package/dist/components/ScreenGradient/types.d.ts +19 -0
- package/dist/components/ScreenImage/ScreenImage.d.ts +4 -0
- package/dist/components/ScreenImage/components/DynamicTextureSync.d.ts +9 -0
- package/dist/components/ScreenImage/components/ScreenImageBody.d.ts +9 -0
- package/dist/components/ScreenImage/components/ScreenImageFrame.d.ts +9 -0
- package/dist/components/ScreenImage/components/ScreenImageTransformFrame.d.ts +9 -0
- package/dist/components/ScreenImage/fit.d.ts +52 -0
- package/dist/components/ScreenImage/index.d.ts +8 -87
- package/dist/components/ScreenImage/materials/ScreenImageBlendMaterial.d.ts +9 -0
- package/dist/components/ScreenImage/materials/ScreenImageMatcap.d.ts +3 -0
- package/dist/components/ScreenImage/source.d.ts +19 -0
- package/dist/components/ScreenImage/types.d.ts +37 -0
- package/dist/components/ScreenImage/utils/ScreenImageConstants.d.ts +9 -0
- package/dist/components/ScreenImage/utils/ScreenImageHelpers.d.ts +4 -0
- package/dist/components/ScreenShape/geometry.d.ts +5 -0
- package/dist/components/ScreenShape/index.d.ts +5 -0
- package/dist/components/ScreenShape/types.d.ts +41 -0
- package/dist/components/ScreenSpaceUI/ScreenTransformGuide.d.ts +15 -0
- package/dist/components/ScreenSpaceUI/ScreenTransformOverlayGuide.d.ts +9 -0
- package/dist/components/ScreenSpaceUI/index.d.ts +2 -0
- package/dist/components/ScreenText/components/ScreenTextBody.d.ts +2 -0
- package/dist/components/ScreenText/components/ScreenTextTransformFrame.d.ts +9 -0
- package/dist/components/ScreenText/constants.d.ts +5 -0
- package/dist/components/ScreenText/index.d.ts +6 -20
- package/dist/components/ScreenText/types.d.ts +31 -0
- package/dist/components/ScreenText/utils/ScreenTextHelpers.d.ts +14 -0
- package/dist/components/ScreenText/utils/ScreenTextMappings.d.ts +17 -0
- package/dist/components/SequentialRenderPasses/index.d.ts +6 -0
- package/dist/components/TextLabel/TextLabel.d.ts +5 -0
- package/dist/components/TextLabel/alignment.d.ts +4 -0
- package/dist/components/TextLabel/bend.d.ts +9 -0
- package/dist/components/TextLabel/canvas/buildTextLabelTexture.d.ts +4 -0
- package/dist/components/TextLabel/canvas/canvasTypography.d.ts +13 -0
- package/dist/components/TextLabel/canvas/drawBackground.d.ts +21 -0
- package/dist/components/TextLabel/canvas/drawEffects.d.ts +34 -0
- package/dist/components/TextLabel/canvas/drawText.d.ts +19 -0
- package/dist/components/TextLabel/components/TextLabelMesh.d.ts +13 -0
- package/dist/components/TextLabel/constants.d.ts +2 -0
- package/dist/components/TextLabel/hooks/useTextLabelTexture.d.ts +7 -0
- package/dist/components/TextLabel/index.d.ts +2 -161
- package/dist/components/TextLabel/layout/measurement.d.ts +8 -0
- package/dist/components/TextLabel/layout/resolveTextLayout.d.ts +25 -0
- package/dist/components/TextLabel/layout/wrapText.d.ts +6 -0
- package/dist/components/TextLabel/types.d.ts +227 -0
- package/dist/components/TrackingAnchor/index.d.ts +18 -2
- package/dist/components/Transform3D/index.d.ts +30 -0
- package/dist/components/XRMediaSurface/index.d.ts +6 -6
- package/dist/components/XRViewport/XRViewport.d.ts +11 -0
- package/dist/components/XRViewport/components/HiddenMedia.d.ts +7 -0
- package/dist/components/XRViewport/components/MediaAssetPicker.d.ts +8 -0
- package/dist/components/XRViewport/components/MediaControlStack.d.ts +13 -0
- package/dist/components/XRViewport/components/XRViewportLayers.d.ts +30 -0
- package/dist/components/XRViewport/constants.d.ts +24 -0
- package/dist/components/XRViewport/contexts.d.ts +6 -0
- package/dist/components/XRViewport/hooks/useViewportExternalFaces.d.ts +13 -0
- package/dist/components/XRViewport/hooks/useViewportMediaSource.d.ts +16 -0
- package/dist/components/XRViewport/hooks/useViewportMediaTexture.d.ts +10 -0
- package/dist/components/XRViewport/hooks/useViewportPipeline.d.ts +41 -0
- package/dist/components/XRViewport/hooks/useViewportRenderState.d.ts +47 -0
- package/dist/components/XRViewport/index.d.ts +3 -118
- package/dist/components/XRViewport/layout.d.ts +16 -0
- package/dist/components/XRViewport/slots.d.ts +16 -0
- package/dist/components/XRViewport/types.d.ts +89 -0
- package/dist/components/XRViewport/useViewportSize.d.ts +3 -0
- package/dist/components/index.d.ts +12 -0
- package/dist/contexts-D5TQcwmv.js +660 -0
- package/dist/contexts-Dv1SA0bS.cjs +1 -0
- package/dist/debug-ui/component-editor/index.d.ts +19 -0
- package/dist/debug-ui/face-mesh-renderer-settings/index.d.ts +8 -0
- package/dist/debug-ui/face-retouch/index.d.ts +11 -0
- package/dist/debug-ui/hand-joints-2d/index.d.ts +1 -1
- package/dist/debug-ui/hand-tracking-2d/index.d.ts +1 -1
- package/dist/debug-ui/hand-tracking-2d-controller/index.d.ts +1 -1
- package/dist/debug-ui/hand-tracking-3d/index.d.ts +1 -1
- package/dist/debug-ui/hierarchy-panel/index.d.ts +29 -0
- package/dist/debug-ui/index.d.ts +25 -2
- package/dist/debug-ui/layer-panel/index.d.ts +3 -2
- package/dist/debug-ui/media-source/index.d.ts +2 -0
- package/dist/debug-ui/media-source/session.d.ts +12 -0
- package/dist/debug-ui/media-source.cjs +1 -1
- package/dist/debug-ui/media-source.js +6 -4
- package/dist/debug-ui/mesh-renderer-settings/index.d.ts +6 -0
- package/dist/debug-ui/object-inspector-panel/index.d.ts +25 -0
- package/dist/debug-ui/pin-to-mesh-settings/index.d.ts +10 -0
- package/dist/debug-ui/scene-editor/context.d.ts +38 -0
- package/dist/debug-ui/scene-editor/hierarchy-panel.d.ts +9 -0
- package/dist/debug-ui/scene-editor/index.d.ts +11 -0
- package/dist/debug-ui/scene-editor/inspector-panel.d.ts +7 -0
- package/dist/debug-ui/scene-editor/store-utils.d.ts +2 -0
- package/dist/debug-ui/scene-editor/viewport-toolbar.d.ts +4 -0
- package/dist/debug-ui/scene-editor/viewport.d.ts +21 -0
- package/dist/debug-ui/screen-glass-settings/index.d.ts +6 -0
- package/dist/debug-ui/screen-gradient-settings/GradientStopsEditor.d.ts +5 -0
- package/dist/debug-ui/screen-gradient-settings/index.d.ts +6 -0
- package/dist/debug-ui/screen-gradient-settings/styles.d.ts +3 -0
- package/dist/debug-ui/screen-image-settings/index.d.ts +4 -2
- package/dist/debug-ui/screen-shape-settings/index.d.ts +6 -0
- package/dist/debug-ui/screen-text-settings/NumberField.d.ts +9 -0
- package/dist/debug-ui/screen-text-settings/ScreenTextSettingsPanel.d.ts +3 -0
- package/dist/debug-ui/screen-text-settings/controls/NestedSection.d.ts +7 -0
- package/dist/debug-ui/screen-text-settings/controls/Section.d.ts +8 -0
- package/dist/debug-ui/screen-text-settings/controls/icons.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/index.d.ts +2 -122
- package/dist/debug-ui/screen-text-settings/sections/BackgroundSection.d.ts +8 -0
- package/dist/debug-ui/screen-text-settings/sections/ContentSection.d.ts +5 -0
- package/dist/debug-ui/screen-text-settings/sections/EffectsSection.d.ts +25 -0
- package/dist/debug-ui/screen-text-settings/sections/StyleSection.d.ts +5 -0
- package/dist/debug-ui/screen-text-settings/sections/TransformSection.d.ts +5 -0
- package/dist/debug-ui/screen-text-settings/sections/background/BackgroundFillControls.d.ts +2 -0
- package/dist/debug-ui/screen-text-settings/sections/background/BackgroundSizeControls.d.ts +2 -0
- package/dist/debug-ui/screen-text-settings/sections/background/BackgroundStrokeControls.d.ts +2 -0
- package/dist/debug-ui/screen-text-settings/sections/background/types.d.ts +7 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/BendEffectSection.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/EffectChrome.d.ts +21 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/GlowEffectSection.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/InnerShadowEffectSection.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/OutlineEffectSection.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/ShadowEffectSection.d.ts +4 -0
- package/dist/debug-ui/screen-text-settings/sections/effects/types.d.ts +14 -0
- package/dist/debug-ui/screen-text-settings/settings.d.ts +90 -0
- package/dist/debug-ui/screen-text-settings/styles.d.ts +26 -0
- package/dist/debug-ui/screen-text-settings/transform.d.ts +6 -0
- package/dist/debug-ui/screen-text-settings/types.d.ts +9 -0
- package/dist/debug-ui/shared/ScreenTransformSection.d.ts +6 -3
- package/dist/debug-ui/transform-3d-settings/index.d.ts +11 -0
- package/dist/debug-ui.cjs +3 -13
- package/dist/debug-ui.js +7735 -4896
- package/dist/drawNormalizedCrop-B-7zU-Xw.cjs +1 -0
- package/dist/drawNormalizedCrop-CRdIDyl1.js +44 -0
- package/dist/entries/all.d.ts +1 -0
- package/dist/entries/core.d.ts +53 -6
- package/dist/entries/face-effects.d.ts +10 -8
- package/dist/entries/internal.d.ts +1 -1
- package/dist/entries/low-level.d.ts +21 -4
- package/dist/entries/scene-object.d.ts +10 -0
- package/dist/entries/tracking.d.ts +25 -2
- package/dist/face-action/index.d.ts +34 -0
- package/dist/face-attribute-expression/index.d.ts +10 -0
- package/dist/face-effects.cjs +1 -342
- package/dist/face-effects.js +1391 -2767
- package/dist/face-info/blendshapes.d.ts +3 -0
- package/dist/face-info/derive.d.ts +8 -0
- package/dist/face-info/drawFaceCrop.d.ts +10 -0
- package/dist/face-info/getFaceInfo.d.ts +8 -0
- package/dist/face-info/index.d.ts +8 -0
- package/dist/face-info/landmarks.d.ts +21 -0
- package/dist/face-info/types.d.ts +52 -0
- package/dist/getFaceInfo-Cjcgcc4w.js +118 -0
- package/dist/getFaceInfo-oQcP40Ha.cjs +1 -0
- package/dist/{handJoints2d.d.ts → hand/handJoints2d.d.ts} +1 -1
- package/dist/{handTracking2d.d.ts → hand/handTracking2d.d.ts} +1 -1
- package/dist/{handTracking2dController.d.ts → hand/handTracking2dController.d.ts} +1 -1
- package/dist/{handTracking3d.d.ts → hand/handTracking3d.d.ts} +1 -1
- package/dist/hooks/faceResults.d.ts +1 -1
- package/dist/hooks/useCalibrationFaceTracker.d.ts +1 -1
- package/dist/hooks/useFaceAction.d.ts +3 -0
- package/dist/hooks/useFaceAttributeExpression.d.ts +16 -0
- package/dist/hooks/useFaceDetection.d.ts +18 -0
- package/dist/hooks/useFaceInfo.d.ts +7 -0
- package/dist/hooks/useFaceInfos.d.ts +15 -0
- package/dist/hooks/useFaceResultReader.d.ts +10 -0
- package/dist/hooks/useFrameCapture.d.ts +18 -0
- package/dist/hooks/useMediaRecorder.d.ts +14 -2
- package/dist/hooks/useOwnedTexture.d.ts +6 -0
- package/dist/hooks/useTrackerContext.d.ts +2 -2
- package/dist/hooks/useXRModel.d.ts +5 -0
- package/dist/hooks/useXRSession/facade.d.ts +3 -0
- package/dist/hooks/useXRSession/registry.d.ts +9 -0
- package/dist/index-Be-S7uSm.cjs +1 -0
- package/dist/index-D4bLzBr6.cjs +1 -0
- package/dist/index-DdWBnI7A.cjs +17 -0
- package/dist/index-DpVIEBHw.js +2068 -0
- package/dist/index-DqhqBi7O.cjs +1 -0
- package/dist/index-HxT9XEuh.js +111 -0
- package/dist/{index-safCs_af.js → index-JygePOwo.js} +565 -508
- package/dist/index-N7C6fNah.js +214 -0
- package/dist/index-UU5ODHGU.cjs +1 -0
- package/dist/{index-BGNbrc4C.js → index-YMUaJU7U.js} +217 -126
- package/dist/{internal-Cae1ps15.js → internal-D7NxAsc6.js} +86 -80
- package/dist/internal-i2JkM85N.cjs +1 -0
- package/dist/internal.cjs +1 -1
- package/dist/internal.js +2 -2
- package/dist/low-level.cjs +1 -1
- package/dist/low-level.js +1138 -86
- package/dist/main.cjs +1 -73
- package/dist/main.js +545 -1693
- package/dist/material/MaterialFill.d.ts +20 -0
- package/dist/material/MeshMaterial.d.ts +14 -0
- package/dist/material/index.d.ts +2 -0
- package/dist/models/Body/index.d.ts +1 -1
- package/dist/models/Face/index.d.ts +1 -0
- package/dist/models/Face/rotation.d.ts +3 -0
- package/dist/render/renderGroups.d.ts +47 -0
- package/dist/render/renderPasses.d.ts +18 -0
- package/dist/renderGroups-JEXqSACh.js +152 -0
- package/dist/renderGroups-uXXsFpvw.cjs +1 -0
- package/dist/renderLayers-lDtL0_43.cjs +1 -0
- package/dist/renderLayers-zrK2pv5O.js +13 -0
- package/dist/renderPasses-CVWt0t8m.cjs +21 -0
- package/dist/renderPasses-CdGZeHHL.js +1500 -0
- package/dist/scene-object/index.d.ts +146 -0
- package/dist/scene-object/runtimeRegistry.d.ts +14 -0
- package/dist/scene-object.cjs +1 -0
- package/dist/scene-object.js +40 -0
- package/dist/{screenImageSettings.d.ts → screen-image/screenImageSettings.d.ts} +9 -2
- package/dist/{screenTextSettings.d.ts → screen-text/screenTextSettings.d.ts} +18 -2
- package/dist/screen2d/coordinates.d.ts +87 -0
- package/dist/screen2d/index.d.ts +3 -0
- package/dist/screen2d/screenTransform.d.ts +47 -0
- package/dist/screen2d/smoothing.d.ts +5 -0
- package/dist/{selectors-BLl2JUWW.cjs → selectors-2QvO5RYY.cjs} +1 -1
- package/dist/{selectors-CXd_x-6t.js → selectors-twqYByYZ.js} +6 -6
- package/dist/services/MetricsCollector/index.d.ts +7 -1
- package/dist/services/MetricsCollector/utils.d.ts +1 -1
- package/dist/session-BChR4TgK.cjs +31 -0
- package/dist/session-C1StwN0f.js +363 -0
- package/dist/texture/animatedTexture.d.ts +63 -0
- package/dist/texture/animationMath.d.ts +8 -0
- package/dist/texture/gifReader.d.ts +17 -0
- package/dist/texture/gifTextureSource.d.ts +16 -0
- package/dist/texture/sourceResolver.d.ts +30 -0
- package/dist/tracking.cjs +1 -1
- package/dist/tracking.js +580 -321
- package/dist/types/face.d.ts +1 -13
- package/dist/types/index.d.ts +0 -1
- package/dist/types/nodes.d.ts +2 -1
- package/dist/types/session.d.ts +2 -0
- package/dist/types/tracking.d.ts +8 -2
- package/dist/types/util-types.d.ts +1 -1
- package/dist/useFaceInfo-DOJCGlDG.js +62 -0
- package/dist/useFaceInfo-DSUmuzzO.cjs +1 -0
- package/dist/useFaceResults-B1BSGUAW.cjs +1 -0
- package/dist/useFaceResults-CBmhT5E8.js +19 -0
- package/dist/utils/drawNormalizedCrop.d.ts +22 -0
- package/dist/utils/integrity.d.ts +4 -25
- package/dist/utils/landmarkBounds.d.ts +1 -1
- package/dist/utils/logger.d.ts +2 -2
- package/docs/MIGRATION_GUIDE.md +589 -0
- package/docs/SDK_DOCUMENTATION.md +1155 -0
- package/docs/api/audio.mdx +36 -0
- package/docs/api/behavior-components.mdx +164 -0
- package/docs/api/capture-recording.mdx +103 -0
- package/docs/api/debug-ui-scene-editor.mdx +249 -0
- package/docs/api/face-actions.mdx +104 -0
- package/docs/api/face-attribute-expression.mdx +87 -0
- package/docs/api/face-binding-anchors.mdx +53 -0
- package/docs/api/face-effects.mdx +19 -0
- package/docs/api/face-info.mdx +112 -0
- package/docs/api/face-mesh.mdx +98 -0
- package/docs/api/face-painting.mdx +33 -0
- package/docs/api/face-retouching.mdx +73 -0
- package/docs/api/material-render-state.mdx +132 -0
- package/docs/api/runtime-3d.mdx +311 -0
- package/docs/api/scene-object-store.mdx +213 -0
- package/docs/api/screen-image.mdx +65 -0
- package/docs/api/screen-shape.mdx +64 -0
- package/docs/api/screen-space-coordinates.mdx +41 -0
- package/docs/api/screen-text.mdx +39 -0
- package/docs/api/texture-sources.mdx +74 -0
- package/docs/api/trackers.mdx +46 -0
- package/docs/docs.json +70 -0
- package/docs/examples/scene-object-recipes.mdx +194 -0
- package/docs/guides/harness-debug-ui.mdx +139 -0
- package/docs/inspector/hierarchy-panel.mdx +51 -0
- package/docs/inspector/object-inspector-panel.mdx +51 -0
- package/docs/introduction.mdx +121 -0
- package/docs/scene-objects/overview.mdx +127 -0
- package/docs/scene-objects/render-groups.mdx +77 -0
- package/docs/scene-objects/runtime-rendering.mdx +75 -0
- package/docs/texture-api-consumer.md +84 -0
- package/package.json +38 -8
- package/dist/MediaSourceSwitcher-C-xYg0nQ.js +0 -317
- package/dist/MediaSourceSwitcher-Cq3g4IKw.cjs +0 -31
- package/dist/components/FaceRetouch/defaults.d.ts +0 -13
- package/dist/components/FaceRetouch/retouchRegions.d.ts +0 -23
- package/dist/components/FaceRetouch/useFaceRetouchRegions.d.ts +0 -12
- package/dist/defaults-BLpcN3pG.cjs +0 -1
- package/dist/defaults-LtY4M7dg.js +0 -55
- package/dist/index-BXyObVHF.cjs +0 -1
- package/dist/index-CY3bUAcW.js +0 -12
- package/dist/index-C_Duh13c.cjs +0 -1
- package/dist/index-D8fpPQkC.cjs +0 -1
- package/dist/index-DxshgBu0.cjs +0 -1
- package/dist/index-O-2crZ3M.js +0 -1102
- package/dist/internal-BjyhBP8i.cjs +0 -1
- package/dist/modules/XRClient/index.d.ts +0 -9
- package/dist/modules/index.d.ts +0 -1
- package/dist/screenImageSettings-6NRg4cx9.js +0 -39
- package/dist/screenImageSettings-y_B4_767.cjs +0 -1
- package/dist/services/ApiService.d.ts +0 -12
- package/dist/types/client.d.ts +0 -3
- package/dist/useFaceResults-cpsSmKKc.js +0 -81
- package/dist/useFaceResults-hVUJYSEY.cjs +0 -1
- package/dist/useXRModel-3DcUa28n.cjs +0 -1
- package/dist/useXRModel-BMJE1hrk.js +0 -28
- /package/dist/{layerStack.d.ts → render/layerStack.d.ts} +0 -0
- /package/dist/{screenImagePresets.d.ts → screen-image/screenImagePresets.d.ts} +0 -0
- /package/dist/{screenTextPresets.d.ts → screen-text/screenTextPresets.d.ts} +0 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ResolvedScreenTransform2D, ScreenTransform2DSettings } from '../../screen2d';
|
|
2
|
+
export declare const snapHalfPixel: (value: number) => number;
|
|
3
|
+
export declare const clamp01: (value: number) => number;
|
|
4
|
+
export declare function resolveScreenTransformDesignScale(viewportSize: {
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
}): number;
|
|
8
|
+
export declare function resolveScreenTransformUnitScale({ resolved, transform, }: {
|
|
9
|
+
resolved: ResolvedScreenTransform2D;
|
|
10
|
+
transform: ScreenTransform2DSettings;
|
|
11
|
+
}): number;
|
|
12
|
+
export declare function resolveScreenTransformControlScale({ parent, resolved, transform, }: {
|
|
13
|
+
parent: {
|
|
14
|
+
width: number;
|
|
15
|
+
height: number;
|
|
16
|
+
};
|
|
17
|
+
resolved: ResolvedScreenTransform2D;
|
|
18
|
+
transform: ScreenTransform2DSettings;
|
|
19
|
+
}): [number, number, number];
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { ScreenTransformControlHandle } from '../ScreenSpaceUI/ScreenTransformGuide';
|
|
2
|
+
import { ScreenTransform2DSettings } from '../../screen2d';
|
|
3
|
+
export type ScreenTransformDragState = {
|
|
4
|
+
handle: ScreenTransformControlHandle;
|
|
5
|
+
startX: number;
|
|
6
|
+
startY: number;
|
|
7
|
+
startPointerDesign: {
|
|
8
|
+
x: number;
|
|
9
|
+
y: number;
|
|
10
|
+
};
|
|
11
|
+
startTransform: ScreenTransform2DSettings;
|
|
12
|
+
};
|
|
13
|
+
export declare function applyScreenTransformDrag({ drag, clientX, clientY, designScale, }: {
|
|
14
|
+
drag: ScreenTransformDragState;
|
|
15
|
+
clientX: number;
|
|
16
|
+
clientY: number;
|
|
17
|
+
designScale: number;
|
|
18
|
+
}): ScreenTransform2DSettings;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export { ScreenTransformFrame } from './ScreenTransformFrame';
|
|
2
|
+
export type { ScreenTransformFrameProps } from './ScreenTransformFrame';
|
|
3
|
+
export { applyScreenTransformDrag } from './ScreenTransformInteraction';
|
|
4
|
+
export type { ScreenTransformDragState } from './ScreenTransformInteraction';
|
|
5
|
+
export { clamp01, resolveScreenTransformControlScale, resolveScreenTransformDesignScale, resolveScreenTransformUnitScale, snapHalfPixel, } from './ScreenTransformHelpers';
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DEFAULT_SCREEN_GLASS, normalizeScreenGlass } from './defaults';
|
|
2
|
+
import { ScreenGlassMaterialProps } from './types';
|
|
3
|
+
export type { ScreenGlassMaterialProps, ScreenGlassSettings } from './types';
|
|
4
|
+
export { DEFAULT_SCREEN_GLASS, normalizeScreenGlass };
|
|
5
|
+
export declare const ScreenGlassMaterial: ({ opacity, value }: ScreenGlassMaterialProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const screenGlassVertexShader = "\n varying vec2 vPosition;\n void main() {\n vPosition = position.xy;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n";
|
|
2
|
+
export declare const screenGlassFragmentShader = "\n uniform vec3 tint;\n uniform float opacity;\n uniform float frost;\n uniform float highlight;\n varying vec2 vPosition;\n\n void main() {\n float grain = fract(sin(dot(vPosition * 997.0, vec2(12.9898, 78.233))) * 43758.5453);\n float sheen = smoothstep(0.15, 0.85, 1.0 - (vPosition.x + vPosition.y + 1.0) * 0.5);\n vec3 frosted = mix(tint, vec3(1.0), frost * (0.18 + grain * 0.08));\n vec3 color = mix(frosted, vec3(1.0), sheen * highlight * 0.32);\n gl_FragColor = vec4(color, opacity);\n }\n";
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ScreenGradientSettings, ScreenGradientStop } from './types';
|
|
2
|
+
export declare const MAX_SCREEN_GRADIENT_STOPS = 8;
|
|
3
|
+
export declare const DEFAULT_SCREEN_GRADIENT: ScreenGradientSettings;
|
|
4
|
+
export declare const normalizeScreenGradientStops: (stops: ScreenGradientStop[]) => ScreenGradientStop[];
|
|
5
|
+
export declare const normalizeScreenGradient: (value?: Partial<ScreenGradientSettings>) => ScreenGradientSettings;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { DEFAULT_SCREEN_GRADIENT, MAX_SCREEN_GRADIENT_STOPS, normalizeScreenGradient, normalizeScreenGradientStops } from './defaults';
|
|
2
|
+
import { ScreenGradientMaterialProps } from './types';
|
|
3
|
+
export type { ScreenGradientMaterialProps, ScreenGradientSettings, ScreenGradientStop, ScreenGradientType, } from './types';
|
|
4
|
+
export { DEFAULT_SCREEN_GRADIENT, MAX_SCREEN_GRADIENT_STOPS, normalizeScreenGradient, normalizeScreenGradientStops, };
|
|
5
|
+
export declare const ScreenGradientMaterial: ({ opacity, value }: ScreenGradientMaterialProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export declare const screenGradientVertexShader = "\n varying vec2 vPosition;\n void main() {\n vPosition = position.xy;\n gl_Position = projectionMatrix * modelViewMatrix * vec4(position, 1.0);\n }\n";
|
|
2
|
+
export declare const screenGradientFragmentShader = "\n #define MAX_STOPS 8\n uniform vec3 stopColors[MAX_STOPS];\n uniform float stopOffsets[MAX_STOPS];\n uniform int stopCount;\n uniform int gradientType;\n uniform vec2 direction;\n uniform vec2 center;\n uniform float radius;\n uniform float angleOffset;\n uniform float opacity;\n varying vec2 vPosition;\n\n vec3 sampleGradient(float amount) {\n vec3 color = stopColors[0];\n for (int index = 1; index < MAX_STOPS; index++) {\n if (index >= stopCount) break;\n if (amount <= stopOffsets[index]) {\n float width = max(0.0001, stopOffsets[index] - stopOffsets[index - 1]);\n return mix(stopColors[index - 1], stopColors[index], clamp((amount - stopOffsets[index - 1]) / width, 0.0, 1.0));\n }\n color = stopColors[index];\n }\n return color;\n }\n\n void main() {\n vec2 delta = vPosition - center;\n float amount;\n if (gradientType == 1) {\n amount = clamp(length(delta) / radius, 0.0, 1.0);\n } else if (gradientType == 2) {\n amount = fract(atan(delta.y, delta.x) / 6.28318530718 + 0.5 + angleOffset);\n } else {\n amount = clamp(dot(delta, direction) + 0.5, 0.0, 1.0);\n }\n gl_FragColor = vec4(sampleGradient(amount), opacity);\n }\n";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export type ScreenGradientType = "linear" | "radial" | "angular";
|
|
2
|
+
export type ScreenGradientStop = {
|
|
3
|
+
offset: number;
|
|
4
|
+
color: string;
|
|
5
|
+
};
|
|
6
|
+
export type ScreenGradientSettings = {
|
|
7
|
+
type: ScreenGradientType;
|
|
8
|
+
stops: ScreenGradientStop[];
|
|
9
|
+
angle: number;
|
|
10
|
+
center: {
|
|
11
|
+
x: number;
|
|
12
|
+
y: number;
|
|
13
|
+
};
|
|
14
|
+
radius: number;
|
|
15
|
+
};
|
|
16
|
+
export type ScreenGradientMaterialProps = {
|
|
17
|
+
value: ScreenGradientSettings;
|
|
18
|
+
opacity?: number;
|
|
19
|
+
};
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { default as defaultScreenImageUrl } from './assets/Default_square_image.png';
|
|
2
|
+
import { ScreenImageProps } from './types';
|
|
3
|
+
export declare function ScreenImage({ anchors, coordinateSpace, canvasSize, position, size, offsets, pivot, rotation, transform, onScreenTransformChange, transformGuideLayer, ...bodyProps }: ScreenImageProps): import("react/jsx-runtime").JSX.Element | null;
|
|
4
|
+
export { defaultScreenImageUrl };
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type * as THREE from "three";
|
|
2
|
+
export declare function DynamicTextureSync({ materialTexture, sourceTexture, onSourceSizeChange, }: {
|
|
3
|
+
materialTexture: THREE.Texture;
|
|
4
|
+
sourceTexture: THREE.Texture;
|
|
5
|
+
onSourceSizeChange: (size: {
|
|
6
|
+
width: number;
|
|
7
|
+
height: number;
|
|
8
|
+
}) => void;
|
|
9
|
+
}): null;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ScreenImageProps } from '../types';
|
|
2
|
+
type ScreenImageBodyProps = Omit<ScreenImageProps, "anchors" | "coordinateSpace" | "canvasSize" | "position" | "size" | "offsets" | "pivot" | "transform"> & {
|
|
3
|
+
layoutSize?: {
|
|
4
|
+
width: number;
|
|
5
|
+
height: number;
|
|
6
|
+
};
|
|
7
|
+
};
|
|
8
|
+
export declare function ScreenImageBody({ name, source, src, fit, stretchMode, materialType, blendMode, backdropTexture: providedBackdropTexture, rotation, opacity, color, flipX, flipY, renderOrder, transparent, alphaTest, overlay, visible, layoutSize, }: ScreenImageBodyProps): import("react/jsx-runtime").JSX.Element;
|
|
9
|
+
export {};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { ScreenAnchorEdges, ScreenOffsetEdges } from '../../ScreenSpaceUI';
|
|
3
|
+
export declare function ScreenImageFrame({ anchors, offsets, pivot, rotation, children, }: {
|
|
4
|
+
anchors: ScreenAnchorEdges;
|
|
5
|
+
offsets: ScreenOffsetEdges;
|
|
6
|
+
pivot: [number, number];
|
|
7
|
+
rotation: number;
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { ScreenTransformGuideLayer } from '../../ScreenSpaceUI';
|
|
3
|
+
import { ScreenTransform2DSettings } from '../../../screen2d';
|
|
4
|
+
export declare function ScreenImageTransformFrame({ transform, guideLayer, onChange, children, }: {
|
|
5
|
+
transform: ScreenTransform2DSettings;
|
|
6
|
+
guideLayer: ScreenTransformGuideLayer;
|
|
7
|
+
onChange?: (next: ScreenTransform2DSettings) => void;
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
export type ScreenImageFit = "stretch" | "contain" | "cover";
|
|
2
|
+
export type ScreenImageStretchMode = "fit" | "fitWidth" | "fitHeight" | "center" | "stretch" | "fill" | "fillAndCut";
|
|
3
|
+
export type ScreenImageFittedRectInput = {
|
|
4
|
+
rectSize: {
|
|
5
|
+
width: number;
|
|
6
|
+
height: number;
|
|
7
|
+
};
|
|
8
|
+
textureSize?: {
|
|
9
|
+
width: number;
|
|
10
|
+
height: number;
|
|
11
|
+
};
|
|
12
|
+
textureAspect?: number;
|
|
13
|
+
stretchMode?: ScreenImageStretchMode;
|
|
14
|
+
fit?: ScreenImageFit;
|
|
15
|
+
flipX?: boolean;
|
|
16
|
+
flipY?: boolean;
|
|
17
|
+
};
|
|
18
|
+
export type ScreenImageFittedRect = {
|
|
19
|
+
rectAspect: number;
|
|
20
|
+
textureAspect: number;
|
|
21
|
+
scale: {
|
|
22
|
+
x: number;
|
|
23
|
+
y: number;
|
|
24
|
+
};
|
|
25
|
+
size: {
|
|
26
|
+
width: number;
|
|
27
|
+
height: number;
|
|
28
|
+
};
|
|
29
|
+
uvRepeat: {
|
|
30
|
+
x: number;
|
|
31
|
+
y: number;
|
|
32
|
+
};
|
|
33
|
+
uvOffset: {
|
|
34
|
+
x: number;
|
|
35
|
+
y: number;
|
|
36
|
+
};
|
|
37
|
+
};
|
|
38
|
+
export type ScreenImageFitResolution = {
|
|
39
|
+
meshScale: [number, number, number];
|
|
40
|
+
guideScale: [number, number, number];
|
|
41
|
+
repeat: [number, number];
|
|
42
|
+
offset: [number, number];
|
|
43
|
+
};
|
|
44
|
+
export declare const resolveScreenImageStretchMode: (stretchMode: ScreenImageStretchMode | undefined, fit: ScreenImageFit | undefined) => ScreenImageStretchMode;
|
|
45
|
+
export declare const computeScreenImageFitResolution: (stretchMode: ScreenImageStretchMode, rectAspect: number, textureAspect: number, flipX: boolean, flipY: boolean, rectSize?: {
|
|
46
|
+
width: number;
|
|
47
|
+
height: number;
|
|
48
|
+
}, textureSize?: {
|
|
49
|
+
width: number;
|
|
50
|
+
height: number;
|
|
51
|
+
}) => ScreenImageFitResolution;
|
|
52
|
+
export declare const computeScreenImageFittedRect: ({ rectSize, textureSize, textureAspect: providedTextureAspect, stretchMode, fit, flipX, flipY, }: ScreenImageFittedRectInput) => ScreenImageFittedRect;
|
|
@@ -1,87 +1,8 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
export type
|
|
6
|
-
export
|
|
7
|
-
export
|
|
8
|
-
export type
|
|
9
|
-
export type ScreenImageSource = {
|
|
10
|
-
kind: "default";
|
|
11
|
-
} | {
|
|
12
|
-
kind: "image";
|
|
13
|
-
src: string;
|
|
14
|
-
} | {
|
|
15
|
-
kind: "texture";
|
|
16
|
-
texture: THREE.Texture;
|
|
17
|
-
};
|
|
18
|
-
export type ScreenImageProps = {
|
|
19
|
-
name?: string;
|
|
20
|
-
source?: ScreenImageSource;
|
|
21
|
-
src?: string;
|
|
22
|
-
anchors?: ScreenAnchorEdges;
|
|
23
|
-
coordinateSpace?: ScreenCoordinateSpace;
|
|
24
|
-
canvasSize?: ScreenCanvasSize;
|
|
25
|
-
position?: [number, number];
|
|
26
|
-
size?: [number, number];
|
|
27
|
-
rotation?: number;
|
|
28
|
-
offsets?: ScreenOffsetEdges;
|
|
29
|
-
pivot?: [number, number];
|
|
30
|
-
fit?: ScreenImageFit;
|
|
31
|
-
stretchMode?: ScreenImageStretchMode;
|
|
32
|
-
materialType?: ScreenImageMaterialType;
|
|
33
|
-
blendMode?: ScreenImageBlendMode;
|
|
34
|
-
backdropTexture?: THREE.Texture | null;
|
|
35
|
-
opacity?: number;
|
|
36
|
-
color?: THREE.ColorRepresentation;
|
|
37
|
-
flipX?: boolean;
|
|
38
|
-
flipY?: boolean;
|
|
39
|
-
renderOrder?: number;
|
|
40
|
-
transparent?: boolean;
|
|
41
|
-
alphaTest?: number;
|
|
42
|
-
overlay?: boolean;
|
|
43
|
-
visible?: boolean;
|
|
44
|
-
showFitGuides?: boolean;
|
|
45
|
-
};
|
|
46
|
-
export type ScreenImageFittedRectInput = {
|
|
47
|
-
rectSize: {
|
|
48
|
-
width: number;
|
|
49
|
-
height: number;
|
|
50
|
-
};
|
|
51
|
-
textureSize?: {
|
|
52
|
-
width: number;
|
|
53
|
-
height: number;
|
|
54
|
-
};
|
|
55
|
-
textureAspect?: number;
|
|
56
|
-
stretchMode?: ScreenImageStretchMode;
|
|
57
|
-
fit?: ScreenImageFit;
|
|
58
|
-
flipX?: boolean;
|
|
59
|
-
flipY?: boolean;
|
|
60
|
-
};
|
|
61
|
-
export type ScreenImageFittedRect = {
|
|
62
|
-
rectAspect: number;
|
|
63
|
-
textureAspect: number;
|
|
64
|
-
scale: {
|
|
65
|
-
x: number;
|
|
66
|
-
y: number;
|
|
67
|
-
};
|
|
68
|
-
size: {
|
|
69
|
-
width: number;
|
|
70
|
-
height: number;
|
|
71
|
-
};
|
|
72
|
-
uvRepeat: {
|
|
73
|
-
x: number;
|
|
74
|
-
y: number;
|
|
75
|
-
};
|
|
76
|
-
uvOffset: {
|
|
77
|
-
x: number;
|
|
78
|
-
y: number;
|
|
79
|
-
};
|
|
80
|
-
};
|
|
81
|
-
export declare const screenImageBlendModeOptions: Array<{
|
|
82
|
-
label: string;
|
|
83
|
-
value: ScreenImageBlendMode;
|
|
84
|
-
}>;
|
|
85
|
-
export declare const computeScreenImageFittedRect: ({ rectSize, textureSize, textureAspect: providedTextureAspect, stretchMode, fit, flipX, flipY, }: ScreenImageFittedRectInput) => ScreenImageFittedRect;
|
|
86
|
-
export declare function ScreenImage({ anchors, coordinateSpace, canvasSize, position, size, offsets, pivot, rotation, ...bodyProps }: ScreenImageProps): import("react/jsx-runtime").JSX.Element;
|
|
87
|
-
export { defaultScreenImageUrl };
|
|
1
|
+
export { ScreenImage, defaultScreenImageUrl } from './ScreenImage';
|
|
2
|
+
export { screenImageBlendModeOptions } from './utils/ScreenImageConstants';
|
|
3
|
+
export { resolveBlendProps } from './materials/ScreenImageBlendMaterial';
|
|
4
|
+
export type { ScreenImageBlendMode, ScreenImageMaterialType, ScreenImageProps } from './types';
|
|
5
|
+
export type { ScreenImageSource } from './source';
|
|
6
|
+
export { getScreenImageTextureAspect, getScreenImageTextureSize, resolveScreenImageSource, } from './source';
|
|
7
|
+
export { computeScreenImageFitResolution, computeScreenImageFittedRect, resolveScreenImageStretchMode, } from './fit';
|
|
8
|
+
export type { ScreenImageFit, ScreenImageFittedRect, ScreenImageFittedRectInput, ScreenImageStretchMode, } from './fit';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ScreenImageBlendMode } from '../types';
|
|
2
|
+
import * as THREE from "three";
|
|
3
|
+
export declare const ADVANCED_BLEND_MODES: Set<ScreenImageBlendMode>;
|
|
4
|
+
export type AdvancedBlendMode = Extract<ScreenImageBlendMode, "overlay" | "softLight" | "hardLight" | "difference" | "exclusion">;
|
|
5
|
+
export declare const advancedBlendModeIndices: Record<AdvancedBlendMode, number>;
|
|
6
|
+
export type BlendMaterialProps = Partial<Pick<THREE.Material, "blending" | "blendSrc" | "blendDst" | "blendEquation">>;
|
|
7
|
+
export declare const resolveBlendProps: (mode: ScreenImageBlendMode) => BlendMaterialProps;
|
|
8
|
+
export declare const advancedBlendVertexShader = "\nvarying vec2 vUv;\nvoid main(){vUv=uv;gl_Position=projectionMatrix*modelViewMatrix*vec4(position,1.0);}";
|
|
9
|
+
export declare const advancedBlendFragmentShader = "\nuniform sampler2D imageMap;uniform sampler2D backdropMap;uniform vec2 resolution;\nuniform vec3 tint;uniform float opacity;uniform float alphaTest;uniform int blendMode;varying vec2 vUv;\nfloat overlayChannel(float b,float s){return b<.5?2.*b*s:1.-2.*(1.-b)*(1.-s);}\nfloat hardLightChannel(float b,float s){return s<.5?2.*b*s:1.-2.*(1.-b)*(1.-s);}\nfloat softLightChannel(float b,float s){return s<.5?b-(1.-2.*s)*b*(1.-b):b+(2.*s-1.)*(sqrt(max(b,0.))-b);}\nvec3 applyAdvancedBlend(vec3 b,vec3 s){\nif(blendMode==0)return vec3(overlayChannel(b.r,s.r),overlayChannel(b.g,s.g),overlayChannel(b.b,s.b));\nif(blendMode==1)return vec3(softLightChannel(b.r,s.r),softLightChannel(b.g,s.g),softLightChannel(b.b,s.b));\nif(blendMode==2)return vec3(hardLightChannel(b.r,s.r),hardLightChannel(b.g,s.g),hardLightChannel(b.b,s.b));\nif(blendMode==3)return abs(b-s);return b+s-2.*b*s;}\nvoid main(){vec4 image=texture2D(imageMap,vUv)*vec4(tint,opacity);if(image.a<=alphaTest)discard;\nvec2 uv=gl_FragCoord.xy/max(resolution,vec2(1.));vec3 base=texture2D(backdropMap,uv).rgb;\nvec3 mixed=applyAdvancedBlend(base,image.rgb);gl_FragColor=vec4(mix(base,mixed,image.a),1.);}";
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type * as THREE from "three";
|
|
2
|
+
export type ScreenImageSource = {
|
|
3
|
+
kind: "default";
|
|
4
|
+
} | {
|
|
5
|
+
kind: "image";
|
|
6
|
+
src: string;
|
|
7
|
+
} | {
|
|
8
|
+
kind: "gif";
|
|
9
|
+
src: string;
|
|
10
|
+
} | {
|
|
11
|
+
kind: "texture";
|
|
12
|
+
texture: THREE.Texture;
|
|
13
|
+
};
|
|
14
|
+
export declare const resolveScreenImageSource: (source: ScreenImageSource | undefined, src: string | undefined) => ScreenImageSource;
|
|
15
|
+
export declare const getScreenImageTextureSize: (texture: THREE.Texture) => {
|
|
16
|
+
width: number;
|
|
17
|
+
height: number;
|
|
18
|
+
};
|
|
19
|
+
export declare const getScreenImageTextureAspect: (texture: THREE.Texture) => number;
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import { ScreenAnchorEdges, ScreenOffsetEdges, ScreenTransformGuideLayer } from '../ScreenSpaceUI';
|
|
2
|
+
import { ScreenCanvasSize, ScreenCoordinateSpace, ScreenTransform2DSettings } from '../../screen2d';
|
|
3
|
+
import { ScreenImageFit, ScreenImageStretchMode } from './fit';
|
|
4
|
+
import { ScreenImageSource } from './source';
|
|
5
|
+
import type * as THREE from "three";
|
|
6
|
+
export type ScreenImageMaterialType = "unlit" | "standardPBR" | "matcap";
|
|
7
|
+
export type ScreenImageBlendMode = "normal" | "add" | "subtract" | "multiply" | "screen" | "lighten" | "darken" | "overlay" | "softLight" | "hardLight" | "difference" | "exclusion";
|
|
8
|
+
export type ScreenImageProps = {
|
|
9
|
+
name?: string;
|
|
10
|
+
source?: ScreenImageSource;
|
|
11
|
+
src?: string;
|
|
12
|
+
anchors?: ScreenAnchorEdges;
|
|
13
|
+
coordinateSpace?: ScreenCoordinateSpace;
|
|
14
|
+
canvasSize?: ScreenCanvasSize;
|
|
15
|
+
position?: [number, number];
|
|
16
|
+
size?: [number, number];
|
|
17
|
+
rotation?: number;
|
|
18
|
+
offsets?: ScreenOffsetEdges;
|
|
19
|
+
pivot?: [number, number];
|
|
20
|
+
transform?: Partial<ScreenTransform2DSettings>;
|
|
21
|
+
onScreenTransformChange?: (next: ScreenTransform2DSettings) => void;
|
|
22
|
+
transformGuideLayer?: ScreenTransformGuideLayer;
|
|
23
|
+
fit?: ScreenImageFit;
|
|
24
|
+
stretchMode?: ScreenImageStretchMode;
|
|
25
|
+
materialType?: ScreenImageMaterialType;
|
|
26
|
+
blendMode?: ScreenImageBlendMode;
|
|
27
|
+
backdropTexture?: THREE.Texture | null;
|
|
28
|
+
opacity?: number;
|
|
29
|
+
color?: THREE.ColorRepresentation;
|
|
30
|
+
flipX?: boolean;
|
|
31
|
+
flipY?: boolean;
|
|
32
|
+
renderOrder?: number;
|
|
33
|
+
transparent?: boolean;
|
|
34
|
+
alphaTest?: number;
|
|
35
|
+
overlay?: boolean;
|
|
36
|
+
visible?: boolean;
|
|
37
|
+
};
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ScreenAnchorEdges, ScreenOffsetEdges } from '../../ScreenSpaceUI';
|
|
2
|
+
import { ScreenImageBlendMode } from '../types';
|
|
3
|
+
export declare const DEFAULT_SCREEN_IMAGE_ANCHORS: Required<ScreenAnchorEdges>;
|
|
4
|
+
export declare const DEFAULT_SCREEN_IMAGE_OFFSET: ScreenOffsetEdges;
|
|
5
|
+
export declare const DEFAULT_SCREEN_IMAGE_PIVOT: [number, number];
|
|
6
|
+
export declare const screenImageBlendModeOptions: Array<{
|
|
7
|
+
label: string;
|
|
8
|
+
value: ScreenImageBlendMode;
|
|
9
|
+
}>;
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
import { ScreenAnchorEdges } from '../../ScreenSpaceUI';
|
|
2
|
+
import { ScreenCanvasSize, ScreenCoordinateSpace } from '../../../screen2d';
|
|
3
|
+
export declare const toScreenTransformPivot: (pivot: [number, number]) => [number, number];
|
|
4
|
+
export declare const resolveScreenImageAnchors: (anchors: ScreenAnchorEdges | undefined, coordinateSpace: ScreenCoordinateSpace | undefined, canvasSize: ScreenCanvasSize | undefined, position: [number, number] | undefined, size: [number, number] | undefined) => ScreenAnchorEdges;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ScreenShapeSettings } from './types';
|
|
2
|
+
import * as THREE from "three";
|
|
3
|
+
export type ScreenShapePoint = [number, number, number];
|
|
4
|
+
export declare const buildScreenShapePath: (settings: ScreenShapeSettings) => ScreenShapePoint[];
|
|
5
|
+
export declare const createScreenShapeFill: (points: ScreenShapePoint[]) => THREE.Shape;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ScreenShapeProps, ScreenShapeSettings, ScreenShapeSettingsInput } from './types';
|
|
2
|
+
export type { ScreenShapeKind, ScreenShapeProps, ScreenShapeSettings, ScreenShapeSettingsInput, } from './types';
|
|
3
|
+
export declare const DEFAULT_SCREEN_SHAPE_SETTINGS: ScreenShapeSettings;
|
|
4
|
+
export declare const mergeScreenShapeSettings: (settings?: ScreenShapeSettingsInput) => ScreenShapeSettings;
|
|
5
|
+
export declare const ScreenShape: ({ name, onScreenTransformChange, renderOrder, settings: partialSettings, transform: partialTransform, transformGuideLayer, visible, }: ScreenShapeProps) => import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { ScreenTransformGuideLayer } from '../ScreenSpaceUI';
|
|
2
|
+
import { ScreenTransform2DSettings } from '../../screen2d';
|
|
3
|
+
import { ScreenGradientSettings } from '../ScreenGradient';
|
|
4
|
+
import { ScreenGlassSettings } from '../ScreenGlass';
|
|
5
|
+
export type ScreenShapeKind = "circle" | "ellipse" | "rectangle" | "roundedRectangle" | "polygon" | "star" | "line";
|
|
6
|
+
export type ScreenShapeSettings = {
|
|
7
|
+
kind: ScreenShapeKind;
|
|
8
|
+
fillColor: string;
|
|
9
|
+
fillOpacity: number;
|
|
10
|
+
fillMode: "solid" | "gradient" | "glass";
|
|
11
|
+
gradient: ScreenGradientSettings;
|
|
12
|
+
glass: ScreenGlassSettings;
|
|
13
|
+
strokeColor: string;
|
|
14
|
+
strokeOpacity: number;
|
|
15
|
+
strokeWidth: number;
|
|
16
|
+
cornerRadius: number;
|
|
17
|
+
sides: number;
|
|
18
|
+
innerRadiusRatio: number;
|
|
19
|
+
dashed: boolean;
|
|
20
|
+
lineStart: {
|
|
21
|
+
x: number;
|
|
22
|
+
y: number;
|
|
23
|
+
};
|
|
24
|
+
lineEnd: {
|
|
25
|
+
x: number;
|
|
26
|
+
y: number;
|
|
27
|
+
};
|
|
28
|
+
};
|
|
29
|
+
export type ScreenShapeSettingsInput = Omit<Partial<ScreenShapeSettings>, "gradient" | "glass"> & {
|
|
30
|
+
gradient?: Partial<ScreenGradientSettings>;
|
|
31
|
+
glass?: Partial<ScreenGlassSettings>;
|
|
32
|
+
};
|
|
33
|
+
export type ScreenShapeProps = {
|
|
34
|
+
name?: string;
|
|
35
|
+
settings?: ScreenShapeSettingsInput;
|
|
36
|
+
transform?: Partial<ScreenTransform2DSettings>;
|
|
37
|
+
onScreenTransformChange?: (next: ScreenTransform2DSettings) => void;
|
|
38
|
+
transformGuideLayer?: ScreenTransformGuideLayer;
|
|
39
|
+
renderOrder?: number;
|
|
40
|
+
visible?: boolean;
|
|
41
|
+
};
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { ThreeEvent } from '@react-three/fiber';
|
|
2
|
+
export type ScreenTransformControlHandle = "move" | "pivot" | "rotateTopLeft" | "rotateTopRight" | "rotateBottomLeft" | "rotateBottomRight" | "top" | "bottom" | "left" | "right" | "topLeft" | "topRight" | "bottomLeft" | "bottomRight";
|
|
3
|
+
export type ScreenTransformGuideProps = {
|
|
4
|
+
color?: string;
|
|
5
|
+
controlScale?: [number, number, number];
|
|
6
|
+
handleColor?: string;
|
|
7
|
+
onHandlePointerDown?: (handle: ScreenTransformControlHandle, event: ThreeEvent<PointerEvent>) => void;
|
|
8
|
+
opacity?: number;
|
|
9
|
+
pivot?: [number, number];
|
|
10
|
+
pivotScale?: [number, number, number];
|
|
11
|
+
renderOrder?: number;
|
|
12
|
+
showSideHandles?: boolean;
|
|
13
|
+
thickness?: number;
|
|
14
|
+
};
|
|
15
|
+
export declare const ScreenTransformGuide: ({ color, controlScale, handleColor, onHandlePointerDown, opacity, pivot, pivotScale, renderOrder, showSideHandles, thickness, }: ScreenTransformGuideProps) => import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ScreenTransform2DSettings } from '../../screen2d';
|
|
2
|
+
export type ScreenTransformGuideLayer = "scene" | "overlay";
|
|
3
|
+
export type ScreenTransformOverlayGuideProps = {
|
|
4
|
+
color?: string;
|
|
5
|
+
handleColor?: string;
|
|
6
|
+
onChange?: (next: ScreenTransform2DSettings) => void;
|
|
7
|
+
transform: ScreenTransform2DSettings;
|
|
8
|
+
};
|
|
9
|
+
export declare const ScreenTransformOverlayGuide: ({ color, handleColor, onChange, transform, }: ScreenTransformOverlayGuideProps) => null;
|
|
@@ -36,5 +36,7 @@ export type ScreenSpaceUIProps = {
|
|
|
36
36
|
*/
|
|
37
37
|
export declare const ScreenSpaceUI: ({ children, depth }: ScreenSpaceUIProps) => import("react/jsx-runtime").JSX.Element;
|
|
38
38
|
export { ScreenTransform } from './ScreenTransform';
|
|
39
|
+
export { ScreenTransformGuide } from './ScreenTransformGuide';
|
|
40
|
+
export { ScreenTransformOverlayGuide, type ScreenTransformGuideLayer, } from './ScreenTransformOverlayGuide';
|
|
39
41
|
export type { ScreenTransformProps, ScreenAnchorEdges, ScreenOffsetEdges, ResolvedScreenTransform, } from './ScreenTransform';
|
|
40
42
|
export { computeScreenTransform } from './ScreenTransform';
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
|
+
import { ScreenTransformGuideLayer } from '../../ScreenSpaceUI';
|
|
3
|
+
import { ScreenTransform2DSettings } from '../../../screen2d';
|
|
4
|
+
export declare function ScreenTextTransformFrame({ transform, guideLayer, onChange, children, }: {
|
|
5
|
+
transform: ScreenTransform2DSettings;
|
|
6
|
+
guideLayer: ScreenTransformGuideLayer;
|
|
7
|
+
onChange?: (next: ScreenTransform2DSettings) => void;
|
|
8
|
+
children: ReactNode;
|
|
9
|
+
}): import("react/jsx-runtime").JSX.Element;
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { ScreenAnchorEdges } from '../ScreenSpaceUI';
|
|
2
|
+
import { ScreenTextVerticalAlign } from './types';
|
|
3
|
+
export declare const DEFAULT_SCREEN_TEXT_ASPECT = 2.5;
|
|
4
|
+
export declare const SCREEN_TEXT_GUIDE_COLOR = "#38bdf8";
|
|
5
|
+
export declare const SCREEN_TEXT_ANCHORS: Record<ScreenTextVerticalAlign, Required<ScreenAnchorEdges>>;
|
|
@@ -1,20 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
export
|
|
5
|
-
export type
|
|
6
|
-
|
|
7
|
-
coordinateSpace?: ScreenCoordinateSpace;
|
|
8
|
-
canvasSize?: ScreenCanvasSize;
|
|
9
|
-
offsets?: ScreenTransform2D["offsets"];
|
|
10
|
-
pivot?: [number, number];
|
|
11
|
-
position?: [number, number];
|
|
12
|
-
rotation?: number;
|
|
13
|
-
size?: [number, number];
|
|
14
|
-
transform?: ScreenTransform2D;
|
|
15
|
-
verticalAlign?: ScreenTextVerticalAlign;
|
|
16
|
-
showTransformGuides?: boolean;
|
|
17
|
-
};
|
|
18
|
-
export declare const SCREEN_TEXT_ANCHORS: Record<ScreenTextVerticalAlign, Required<ScreenAnchorEdges>>;
|
|
19
|
-
export declare function resolveScreenTextAnchors(verticalAlign?: ScreenTextVerticalAlign): Required<ScreenAnchorEdges>;
|
|
20
|
-
export declare function ScreenText({ anchors, coordinateSpace, canvasSize, offsets, pivot, position, rotation, size, transform, verticalAlign, ...textLabelProps }: ScreenTextProps): import("react/jsx-runtime").JSX.Element;
|
|
1
|
+
import { ScreenTextProps } from './types';
|
|
2
|
+
export { SCREEN_TEXT_ANCHORS } from './constants';
|
|
3
|
+
export { resolveScreenTextAnchors } from './utils/ScreenTextHelpers';
|
|
4
|
+
export { resolveScreenTextBendProps, resolveScreenTextLayoutTexture, } from './utils/ScreenTextMappings';
|
|
5
|
+
export type { ScreenTextBendSettings, ScreenTextProps, ScreenTextVerticalAlign } from './types';
|
|
6
|
+
export declare function ScreenText({ anchors, coordinateSpace, canvasSize, offsets, pivot, position, rotation, size, transform, screenTransform, onScreenTransformChange, transformGuideLayer, verticalAlign, ...textLabelProps }: ScreenTextProps): import("react/jsx-runtime").JSX.Element | null;
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { TextBendPreset, TextLabelProps } from '../TextLabel';
|
|
2
|
+
import { ScreenAnchorEdges, ScreenTransformGuideLayer } from '../ScreenSpaceUI';
|
|
3
|
+
import { ScreenCanvasSize, ScreenCoordinateSpace, ScreenTransform2D, ScreenTransform2DSettings } from '../../screen2d';
|
|
4
|
+
export type ScreenTextVerticalAlign = "top" | "center" | "bottom";
|
|
5
|
+
export type ScreenTextBendSettings = {
|
|
6
|
+
preset: TextBendPreset;
|
|
7
|
+
strength: number;
|
|
8
|
+
};
|
|
9
|
+
export type ScreenTextProps = Omit<TextLabelProps, "aspect" | "position" | "rotation" | "scale"> & {
|
|
10
|
+
anchors?: ScreenAnchorEdges;
|
|
11
|
+
coordinateSpace?: ScreenCoordinateSpace;
|
|
12
|
+
canvasSize?: ScreenCanvasSize;
|
|
13
|
+
offsets?: ScreenTransform2D["offsets"];
|
|
14
|
+
pivot?: [number, number];
|
|
15
|
+
position?: [number, number];
|
|
16
|
+
rotation?: number;
|
|
17
|
+
size?: [number, number];
|
|
18
|
+
transform?: ScreenTransform2D;
|
|
19
|
+
screenTransform?: Partial<ScreenTransform2DSettings>;
|
|
20
|
+
onScreenTransformChange?: (next: ScreenTransform2DSettings) => void;
|
|
21
|
+
transformGuideLayer?: ScreenTransformGuideLayer;
|
|
22
|
+
verticalAlign?: ScreenTextVerticalAlign;
|
|
23
|
+
bend?: ScreenTextBendSettings;
|
|
24
|
+
showTransformGuides?: boolean;
|
|
25
|
+
};
|
|
26
|
+
export type ScreenTextBodyProps = Omit<ScreenTextProps, "anchors" | "coordinateSpace" | "canvasSize" | "offsets" | "pivot" | "position" | "rotation" | "size" | "transform"> & {
|
|
27
|
+
layoutSize?: {
|
|
28
|
+
width: number;
|
|
29
|
+
height: number;
|
|
30
|
+
};
|
|
31
|
+
};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { ScreenTextProps, ScreenTextVerticalAlign } from '../types';
|
|
2
|
+
export declare function resolveScreenTextAnchors(verticalAlign?: ScreenTextVerticalAlign): Required<import('../..').ScreenAnchorEdges>;
|
|
3
|
+
export declare function resolveScreenTextTransformProps({ anchors, coordinateSpace, canvasSize, position, size, transform, pivot, verticalAlign, }: Pick<ScreenTextProps, "anchors" | "coordinateSpace" | "canvasSize" | "position" | "size" | "transform" | "pivot"> & {
|
|
4
|
+
verticalAlign: ScreenTextVerticalAlign;
|
|
5
|
+
}): {
|
|
6
|
+
resolvedAnchors: import('../..').ScreenAnchorEdges;
|
|
7
|
+
resolvedOffsets: {
|
|
8
|
+
left?: number;
|
|
9
|
+
right?: number;
|
|
10
|
+
top?: number;
|
|
11
|
+
bottom?: number;
|
|
12
|
+
} | undefined;
|
|
13
|
+
resolvedPivot: [number, number];
|
|
14
|
+
};
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { TextBendPreset } from '../../TextLabel';
|
|
2
|
+
import { ScreenTextBendSettings } from '../types';
|
|
3
|
+
export declare function resolveScreenTextBendProps({ bend, bendPreset, bendStrength, }: {
|
|
4
|
+
bend?: ScreenTextBendSettings;
|
|
5
|
+
bendPreset?: TextBendPreset;
|
|
6
|
+
bendStrength?: number;
|
|
7
|
+
}): {
|
|
8
|
+
bendPreset: TextBendPreset | undefined;
|
|
9
|
+
bendStrength: number | undefined;
|
|
10
|
+
};
|
|
11
|
+
export declare function resolveScreenTextLayoutTexture({ width, height, }: {
|
|
12
|
+
width: number;
|
|
13
|
+
height: number;
|
|
14
|
+
}): {
|
|
15
|
+
aspect: number;
|
|
16
|
+
resolution: number;
|
|
17
|
+
};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export type SequentialRenderPassesProps = {
|
|
2
|
+
/** Camera layers in top-first/bottom-last hierarchy order. */
|
|
3
|
+
layers: number[];
|
|
4
|
+
};
|
|
5
|
+
/** Takes over R3F rendering and composes render-group layers sequentially. */
|
|
6
|
+
export declare const SequentialRenderPasses: ({ layers }: SequentialRenderPassesProps) => null;
|