@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,214 @@
|
|
|
1
|
+
import { createContext as A, useContext as _, Suspense as B, useRef as T, useMemo as v, useEffect as R } from "react";
|
|
2
|
+
import { jsx as p, jsxs as L } from "react/jsx-runtime";
|
|
3
|
+
import { useGLTF as P } from "@react-three/drei";
|
|
4
|
+
import { useFrame as U } from "@react-three/fiber";
|
|
5
|
+
import { AdditiveBlending as W, SubtractiveBlending as q, MultiplyBlending as K, NoBlending as N, NormalBlending as G, NeverDepth as F, LessDepth as I, EqualDepth as z, GreaterDepth as H, NotEqualDepth as Y, GreaterEqualDepth as V, AlwaysDepth as $, LessEqualDepth as J, BackSide as Q, DoubleSide as X, FrontSide as Z, AnimationMixer as j, LoopRepeat as ee } from "three";
|
|
6
|
+
import { M as re } from "./index-YMUaJU7U.js";
|
|
7
|
+
const te = A(null), ke = () => {
|
|
8
|
+
const e = _(te);
|
|
9
|
+
if (!e)
|
|
10
|
+
throw new Error("useScreenSpace must be used within ScreenSpaceUI");
|
|
11
|
+
return e;
|
|
12
|
+
}, oe = A(null), Re = () => _(oe) ?? 1;
|
|
13
|
+
function ne(e) {
|
|
14
|
+
const r = /* @__PURE__ */ new Map(), t = /* @__PURE__ */ new Map(), i = e.clone();
|
|
15
|
+
return S(e, i, function(a, n) {
|
|
16
|
+
r.set(n, a), t.set(a, n);
|
|
17
|
+
}), i.traverse(function(a) {
|
|
18
|
+
if (!a.isSkinnedMesh) return;
|
|
19
|
+
const n = a, u = r.get(a), c = u.skeleton.bones;
|
|
20
|
+
n.skeleton = u.skeleton.clone(), n.bindMatrix.copy(u.bindMatrix), n.skeleton.bones = c.map(function(f) {
|
|
21
|
+
return t.get(f);
|
|
22
|
+
}), n.bind(n.skeleton, n.bindMatrix);
|
|
23
|
+
}), i;
|
|
24
|
+
}
|
|
25
|
+
function S(e, r, t) {
|
|
26
|
+
t(e, r);
|
|
27
|
+
for (let i = 0; i < e.children.length; i++)
|
|
28
|
+
S(e.children[i], r.children[i], t);
|
|
29
|
+
}
|
|
30
|
+
const ye = {
|
|
31
|
+
enabled: !0,
|
|
32
|
+
mesh: "cube",
|
|
33
|
+
material: {
|
|
34
|
+
type: "standard",
|
|
35
|
+
color: "#ffffff",
|
|
36
|
+
opacity: 1,
|
|
37
|
+
wireframe: !1,
|
|
38
|
+
roughness: 0.42,
|
|
39
|
+
metalness: 0.08
|
|
40
|
+
},
|
|
41
|
+
shadowMode: "off",
|
|
42
|
+
visible: !0
|
|
43
|
+
}, k = {
|
|
44
|
+
depthTest: !0,
|
|
45
|
+
depthWrite: !0,
|
|
46
|
+
depthFunc: "lessEqual",
|
|
47
|
+
colorWrite: !0,
|
|
48
|
+
colorMask: {
|
|
49
|
+
r: !0,
|
|
50
|
+
g: !0,
|
|
51
|
+
b: !0,
|
|
52
|
+
a: !0
|
|
53
|
+
},
|
|
54
|
+
cullMode: "back",
|
|
55
|
+
blendMode: "normal",
|
|
56
|
+
polygonOffset: {
|
|
57
|
+
enabled: !1,
|
|
58
|
+
factor: 0,
|
|
59
|
+
units: 0
|
|
60
|
+
}
|
|
61
|
+
}, h = (e) => ({
|
|
62
|
+
...k,
|
|
63
|
+
...e,
|
|
64
|
+
colorMask: {
|
|
65
|
+
...k.colorMask,
|
|
66
|
+
...e == null ? void 0 : e.colorMask
|
|
67
|
+
},
|
|
68
|
+
polygonOffset: {
|
|
69
|
+
...k.polygonOffset,
|
|
70
|
+
...e == null ? void 0 : e.polygonOffset
|
|
71
|
+
}
|
|
72
|
+
}), se = (e) => e === "never" ? F : e === "less" ? I : e === "equal" ? z : e === "greater" ? H : e === "notEqual" ? Y : e === "greaterEqual" ? V : e === "always" ? $ : J, ae = (e) => e === "front" ? Q : e === "off" ? X : Z, ie = (e) => e === "additive" ? W : e === "subtractive" ? q : e === "multiply" ? K : e === "none" ? N : G, O = (e) => {
|
|
73
|
+
const r = h(e), t = r.colorWrite && (r.colorMask.r || r.colorMask.g || r.colorMask.b || r.colorMask.a);
|
|
74
|
+
return {
|
|
75
|
+
depthTest: r.depthTest,
|
|
76
|
+
depthWrite: r.depthWrite,
|
|
77
|
+
depthFunc: se(r.depthFunc),
|
|
78
|
+
colorWrite: t,
|
|
79
|
+
side: ae(r.cullMode),
|
|
80
|
+
blending: ie(r.blendMode),
|
|
81
|
+
polygonOffset: r.polygonOffset.enabled,
|
|
82
|
+
polygonOffsetFactor: r.polygonOffset.factor,
|
|
83
|
+
polygonOffsetUnits: r.polygonOffset.units
|
|
84
|
+
};
|
|
85
|
+
}, w = (e, r) => {
|
|
86
|
+
const t = h(r);
|
|
87
|
+
return e < 1 || t.blendMode !== "normal" && t.blendMode !== "none";
|
|
88
|
+
}, D = (e) => e.colorWrite && (!e.colorMask.r || !e.colorMask.g || !e.colorMask.b || !e.colorMask.a), d = "__vincenttPreviousColorMask", y = "__vincenttColorMaskBaseBefore", E = "__vincenttColorMaskBaseAfter", ce = (e, r) => {
|
|
89
|
+
const t = e.userData, i = t[y] ?? e.onBeforeRender.bind(e), a = t[E] ?? e.onAfterRender.bind(e);
|
|
90
|
+
if (t[y] = i, t[E] = a, !D(r)) {
|
|
91
|
+
e.onBeforeRender = i, e.onAfterRender = a;
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
94
|
+
e.onBeforeRender = (n, u, c, f, o, l) => {
|
|
95
|
+
i(n, u, c, f, o, l);
|
|
96
|
+
const s = n.getContext();
|
|
97
|
+
e.userData[d] = s.getParameter(s.COLOR_WRITEMASK), s.colorMask(
|
|
98
|
+
r.colorMask.r,
|
|
99
|
+
r.colorMask.g,
|
|
100
|
+
r.colorMask.b,
|
|
101
|
+
r.colorMask.a
|
|
102
|
+
);
|
|
103
|
+
}, e.onAfterRender = (n, u, c, f, o, l) => {
|
|
104
|
+
const s = e.userData[d];
|
|
105
|
+
s && (n.getContext().colorMask(...s), delete e.userData[d]), a(n, u, c, f, o, l);
|
|
106
|
+
};
|
|
107
|
+
}, C = (e) => ({
|
|
108
|
+
castShadow: e === "cast" || e === "castReceive",
|
|
109
|
+
receiveShadow: e === "receive" || e === "castReceive"
|
|
110
|
+
}), le = ({ mesh: e }) => e === "sphere" ? /* @__PURE__ */ p("sphereGeometry", { args: [0.85, 48, 32] }) : e === "plane" ? /* @__PURE__ */ p("planeGeometry", { args: [1.6, 1.6] }) : /* @__PURE__ */ p("boxGeometry", { args: [1.4, 1.4, 1.4] }), ue = ({
|
|
111
|
+
url: e,
|
|
112
|
+
nodeName: r,
|
|
113
|
+
settings: t,
|
|
114
|
+
renderOrder: i
|
|
115
|
+
}) => {
|
|
116
|
+
const { scene: a, animations: n } = P(e), u = T(null), c = v(() => {
|
|
117
|
+
const o = n.length ? ne(a) : a.clone(!0);
|
|
118
|
+
return o.traverse((l) => {
|
|
119
|
+
const s = l;
|
|
120
|
+
!s.isMesh || !s.material || (s.material = Array.isArray(s.material) ? s.material.map((g) => g.clone()) : s.material.clone());
|
|
121
|
+
}), o;
|
|
122
|
+
}, [a, n.length]);
|
|
123
|
+
R(() => {
|
|
124
|
+
const o = C(t.shadowMode), l = Math.min(1, Math.max(0, t.material.opacity)), s = O(t.material.renderState), g = w(l, t.material.renderState);
|
|
125
|
+
c.traverse((x) => {
|
|
126
|
+
const m = x;
|
|
127
|
+
if (!m.isMesh || !m.material) return;
|
|
128
|
+
m.castShadow = o.castShadow, m.receiveShadow = o.receiveShadow, (Array.isArray(m.material) ? m.material : [m.material]).forEach((M) => {
|
|
129
|
+
if (!M) return;
|
|
130
|
+
const b = M;
|
|
131
|
+
b.wireframe = t.material.wireframe, M.opacity = l, M.transparent = g, Object.assign(M, s), M.needsUpdate = !0;
|
|
132
|
+
}), ce(m, h(t.material.renderState));
|
|
133
|
+
});
|
|
134
|
+
}, [
|
|
135
|
+
c,
|
|
136
|
+
t.material.opacity,
|
|
137
|
+
t.material.renderState,
|
|
138
|
+
t.material.wireframe,
|
|
139
|
+
t.shadowMode
|
|
140
|
+
]);
|
|
141
|
+
const f = r ? c.getObjectByName(r) : c;
|
|
142
|
+
return R(() => {
|
|
143
|
+
if (!n.length) return;
|
|
144
|
+
const o = new j(c);
|
|
145
|
+
return n.filter(
|
|
146
|
+
(s) => t.assetAnimation === "all" || s.name === t.assetAnimation
|
|
147
|
+
).forEach((s) => o.clipAction(s).setLoop(ee, 1 / 0).play()), u.current = o, () => {
|
|
148
|
+
o.stopAllAction(), o.uncacheRoot(c), u.current = null;
|
|
149
|
+
};
|
|
150
|
+
}, [n, c, t.assetAnimation]), U((o, l) => {
|
|
151
|
+
var s;
|
|
152
|
+
return (s = u.current) == null ? void 0 : s.update(l);
|
|
153
|
+
}), /* @__PURE__ */ p("group", { renderOrder: i, children: /* @__PURE__ */ p("primitive", { object: f ?? c }) });
|
|
154
|
+
}, Ee = ({ renderOrder: e, value: r }) => {
|
|
155
|
+
if (!r.enabled || !r.visible) return null;
|
|
156
|
+
if (r.assetUrl)
|
|
157
|
+
return /* @__PURE__ */ p(B, { fallback: null, children: /* @__PURE__ */ p(
|
|
158
|
+
ue,
|
|
159
|
+
{
|
|
160
|
+
url: r.assetUrl,
|
|
161
|
+
nodeName: r.assetNodeName,
|
|
162
|
+
settings: r,
|
|
163
|
+
renderOrder: e
|
|
164
|
+
}
|
|
165
|
+
) });
|
|
166
|
+
const t = Math.min(1, Math.max(0, r.material.opacity)), i = {
|
|
167
|
+
color: r.material.color,
|
|
168
|
+
transparent: w(t, r.material.renderState),
|
|
169
|
+
opacity: t,
|
|
170
|
+
wireframe: r.material.wireframe,
|
|
171
|
+
...O(r.material.renderState)
|
|
172
|
+
};
|
|
173
|
+
return /* @__PURE__ */ L(
|
|
174
|
+
"mesh",
|
|
175
|
+
{
|
|
176
|
+
...C(r.shadowMode),
|
|
177
|
+
onBeforeRender: (a, n, u, c, f) => {
|
|
178
|
+
const o = h(r.material.renderState);
|
|
179
|
+
if (!D(o)) return;
|
|
180
|
+
const l = a.getContext();
|
|
181
|
+
f.userData[d] = l.getParameter(
|
|
182
|
+
l.COLOR_WRITEMASK
|
|
183
|
+
), l.colorMask(
|
|
184
|
+
o.colorMask.r,
|
|
185
|
+
o.colorMask.g,
|
|
186
|
+
o.colorMask.b,
|
|
187
|
+
o.colorMask.a
|
|
188
|
+
);
|
|
189
|
+
},
|
|
190
|
+
onAfterRender: (a, n, u, c, f) => {
|
|
191
|
+
const o = f.userData[d];
|
|
192
|
+
o && (a.getContext().colorMask(...o), delete f.userData[d]);
|
|
193
|
+
},
|
|
194
|
+
renderOrder: e,
|
|
195
|
+
children: [
|
|
196
|
+
/* @__PURE__ */ p(le, { mesh: r.mesh }),
|
|
197
|
+
/* @__PURE__ */ p(re, { settings: r.material, materialProps: i })
|
|
198
|
+
]
|
|
199
|
+
}
|
|
200
|
+
);
|
|
201
|
+
};
|
|
202
|
+
export {
|
|
203
|
+
ye as D,
|
|
204
|
+
Ee as M,
|
|
205
|
+
oe as S,
|
|
206
|
+
Re as a,
|
|
207
|
+
k as b,
|
|
208
|
+
se as c,
|
|
209
|
+
ae as d,
|
|
210
|
+
te as e,
|
|
211
|
+
ie as g,
|
|
212
|
+
h as n,
|
|
213
|
+
ke as u
|
|
214
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
"use strict";const M=require("react"),m=require("react/jsx-runtime"),v=require("@react-three/drei"),N=require("@react-three/fiber"),c=require("three"),U=require("./index-DqhqBi7O.cjs"),y=M.createContext(null),F=()=>{const e=M.useContext(y);if(!e)throw new Error("useScreenSpace must be used within ScreenSpaceUI");return e},_=M.createContext(null),P=()=>M.useContext(_)??1;function W(e){const r=new Map,t=new Map,i=e.clone();return x(e,i,function(a,o){r.set(o,a),t.set(a,o)}),i.traverse(function(a){if(!a.isSkinnedMesh)return;const o=a,f=r.get(a),l=f.skeleton.bones;o.skeleton=f.skeleton.clone(),o.bindMatrix.copy(f.bindMatrix),o.skeleton.bones=l.map(function(p){return t.get(p)}),o.bind(o.skeleton,o.bindMatrix)}),i}function x(e,r,t){t(e,r);for(let i=0;i<e.children.length;i++)x(e.children[i],r.children[i],t)}const K={enabled:!0,mesh:"cube",material:{type:"standard",color:"#ffffff",opacity:1,wireframe:!1,roughness:.42,metalness:.08},shadowMode:"off",visible:!0},g={depthTest:!0,depthWrite:!0,depthFunc:"lessEqual",colorWrite:!0,colorMask:{r:!0,g:!0,b:!0,a:!0},cullMode:"back",blendMode:"normal",polygonOffset:{enabled:!1,factor:0,units:0}},E=e=>({...g,...e,colorMask:{...g.colorMask,...e==null?void 0:e.colorMask},polygonOffset:{...g.polygonOffset,...e==null?void 0:e.polygonOffset}}),D=e=>e==="never"?c.NeverDepth:e==="less"?c.LessDepth:e==="equal"?c.EqualDepth:e==="greater"?c.GreaterDepth:e==="notEqual"?c.NotEqualDepth:e==="greaterEqual"?c.GreaterEqualDepth:e==="always"?c.AlwaysDepth:c.LessEqualDepth,C=e=>e==="front"?c.BackSide:e==="off"?c.DoubleSide:c.FrontSide,O=e=>e==="additive"?c.AdditiveBlending:e==="subtractive"?c.SubtractiveBlending:e==="multiply"?c.MultiplyBlending:e==="none"?c.NoBlending:c.NormalBlending,w=e=>{const r=E(e),t=r.colorWrite&&(r.colorMask.r||r.colorMask.g||r.colorMask.b||r.colorMask.a);return{depthTest:r.depthTest,depthWrite:r.depthWrite,depthFunc:D(r.depthFunc),colorWrite:t,side:C(r.cullMode),blending:O(r.blendMode),polygonOffset:r.polygonOffset.enabled,polygonOffsetFactor:r.polygonOffset.factor,polygonOffsetUnits:r.polygonOffset.units}},T=(e,r)=>{const t=E(r);return e<1||t.blendMode!=="normal"&&t.blendMode!=="none"},b=e=>e.colorWrite&&(!e.colorMask.r||!e.colorMask.g||!e.colorMask.b||!e.colorMask.a),R="__vincenttPreviousColorMask",A="__vincenttColorMaskBaseBefore",S="__vincenttColorMaskBaseAfter",G=(e,r)=>{const t=e.userData,i=t[A]??e.onBeforeRender.bind(e),a=t[S]??e.onAfterRender.bind(e);if(t[A]=i,t[S]=a,!b(r)){e.onBeforeRender=i,e.onAfterRender=a;return}e.onBeforeRender=(o,f,l,p,n,u)=>{i(o,f,l,p,n,u);const s=o.getContext();e.userData[R]=s.getParameter(s.COLOR_WRITEMASK),s.colorMask(r.colorMask.r,r.colorMask.g,r.colorMask.b,r.colorMask.a)},e.onAfterRender=(o,f,l,p,n,u)=>{const s=e.userData[R];s&&(o.getContext().colorMask(...s),delete e.userData[R]),a(o,f,l,p,n,u)}},B=e=>({castShadow:e==="cast"||e==="castReceive",receiveShadow:e==="receive"||e==="castReceive"}),H=({mesh:e})=>e==="sphere"?m.jsx("sphereGeometry",{args:[.85,48,32]}):e==="plane"?m.jsx("planeGeometry",{args:[1.6,1.6]}):m.jsx("boxGeometry",{args:[1.4,1.4,1.4]}),I=({url:e,nodeName:r,settings:t,renderOrder:i})=>{const{scene:a,animations:o}=v.useGLTF(e),f=M.useRef(null),l=M.useMemo(()=>{const n=o.length?W(a):a.clone(!0);return n.traverse(u=>{const s=u;!s.isMesh||!s.material||(s.material=Array.isArray(s.material)?s.material.map(k=>k.clone()):s.material.clone())}),n},[a,o.length]);M.useEffect(()=>{const n=B(t.shadowMode),u=Math.min(1,Math.max(0,t.material.opacity)),s=w(t.material.renderState),k=T(u,t.material.renderState);l.traverse(L=>{const d=L;if(!d.isMesh||!d.material)return;d.castShadow=n.castShadow,d.receiveShadow=n.receiveShadow,(Array.isArray(d.material)?d.material:[d.material]).forEach(h=>{if(!h)return;const q=h;q.wireframe=t.material.wireframe,h.opacity=u,h.transparent=k,Object.assign(h,s),h.needsUpdate=!0}),G(d,E(t.material.renderState))})},[l,t.material.opacity,t.material.renderState,t.material.wireframe,t.shadowMode]);const p=r?l.getObjectByName(r):l;return M.useEffect(()=>{if(!o.length)return;const n=new c.AnimationMixer(l);return o.filter(s=>t.assetAnimation==="all"||s.name===t.assetAnimation).forEach(s=>n.clipAction(s).setLoop(c.LoopRepeat,1/0).play()),f.current=n,()=>{n.stopAllAction(),n.uncacheRoot(l),f.current=null}},[o,l,t.assetAnimation]),N.useFrame((n,u)=>{var s;return(s=f.current)==null?void 0:s.update(u)}),m.jsx("group",{renderOrder:i,children:m.jsx("primitive",{object:p??l})})},z=({renderOrder:e,value:r})=>{if(!r.enabled||!r.visible)return null;if(r.assetUrl)return m.jsx(M.Suspense,{fallback:null,children:m.jsx(I,{url:r.assetUrl,nodeName:r.assetNodeName,settings:r,renderOrder:e})});const t=Math.min(1,Math.max(0,r.material.opacity)),i={color:r.material.color,transparent:T(t,r.material.renderState),opacity:t,wireframe:r.material.wireframe,...w(r.material.renderState)};return m.jsxs("mesh",{...B(r.shadowMode),onBeforeRender:(a,o,f,l,p)=>{const n=E(r.material.renderState);if(!b(n))return;const u=a.getContext();p.userData[R]=u.getParameter(u.COLOR_WRITEMASK),u.colorMask(n.colorMask.r,n.colorMask.g,n.colorMask.b,n.colorMask.a)},onAfterRender:(a,o,f,l,p)=>{const n=p.userData[R];n&&(a.getContext().colorMask(...n),delete p.userData[R])},renderOrder:e,children:[m.jsx(H,{mesh:r.mesh}),m.jsx(U.MeshMaterial,{settings:r.material,materialProps:i})]})};exports.DEFAULT_MESH_RENDERER=K;exports.DEFAULT_MESH_RENDERER_RENDER_STATE=g;exports.MeshRenderer=z;exports.ScreenRectAspectContext=_;exports.ScreenSpaceContext=y;exports.getThreeBlending=O;exports.getThreeDepthFunction=D;exports.getThreeSide=C;exports.normalizeMeshRendererRenderState=E;exports.useScreenRectAspect=P;exports.useScreenSpace=F;
|
|
@@ -1,21 +1,61 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { useThree as
|
|
3
|
-
import
|
|
4
|
-
import {
|
|
5
|
-
import {
|
|
6
|
-
import * as
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
const
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
1
|
+
import { jsx as _, jsxs as w } from "react/jsx-runtime";
|
|
2
|
+
import { useThree as k, useFrame as U } from "@react-three/fiber";
|
|
3
|
+
import z, { useId as B, useState as W, useRef as A, useEffect as F, useSyncExternalStore as q, useMemo as v, useContext as G, createContext as J, useCallback as Q } from "react";
|
|
4
|
+
import { u as $, a as e0, X as P, b as t0 } from "./index-JygePOwo.js";
|
|
5
|
+
import { R as n0 } from "./renderLayers-zrK2pv5O.js";
|
|
6
|
+
import * as T from "three";
|
|
7
|
+
function r0(e) {
|
|
8
|
+
return JSON.stringify(e ?? {});
|
|
9
|
+
}
|
|
10
|
+
function j(e, t, r = !0) {
|
|
11
|
+
const { session: n } = $(), s = B(), [i, f] = W(null), u = r0(t), o = A(t);
|
|
12
|
+
o.current = t, F(() => {
|
|
13
|
+
let c = !1;
|
|
14
|
+
return f(null), n.registry.acquire(e, s, o.current).catch((l) => {
|
|
15
|
+
c || f(l instanceof Error ? l : new Error(String(l)));
|
|
16
|
+
}), () => {
|
|
17
|
+
c = !0, n.registry.release(e, s);
|
|
18
|
+
};
|
|
19
|
+
}, [n, e, s, u]), F(() => {
|
|
20
|
+
n.registry.setActive(e, s, r);
|
|
21
|
+
}, [n, e, s, r]);
|
|
22
|
+
const d = n.store, h = q(
|
|
23
|
+
(c) => d.subscribe(c),
|
|
24
|
+
() => d.getSnapshot().pipeline.get(e) ?? null,
|
|
25
|
+
() => null
|
|
26
|
+
), p = v(() => h ? h.getModelNode() : null, [h]);
|
|
27
|
+
return {
|
|
28
|
+
ready: h !== null && i === null,
|
|
29
|
+
node: p,
|
|
30
|
+
error: i
|
|
31
|
+
};
|
|
32
|
+
}
|
|
33
|
+
const s0 = ({ materialProps: e, settings: t }) => t.type === "basic" ? /* @__PURE__ */ _("meshBasicMaterial", { ...e }) : /* @__PURE__ */ _(
|
|
34
|
+
"meshStandardMaterial",
|
|
35
|
+
{
|
|
36
|
+
...e,
|
|
37
|
+
roughness: t.roughness,
|
|
38
|
+
metalness: t.metalness
|
|
39
|
+
}
|
|
40
|
+
), g = 1e-6, o0 = (e) => {
|
|
41
|
+
const { x: t, y: r, z: n } = e.scale;
|
|
42
|
+
return Math.abs(t - r) <= g && Math.abs(t - n) <= g ? t : 1;
|
|
43
|
+
}, R0 = (e, t, r, n) => {
|
|
44
|
+
if (!r.enabled) return e;
|
|
45
|
+
const s = o0(r);
|
|
46
|
+
return n.x = t.x + (e.x - t.x) * s + r.position.x, n.y = t.y + (e.y - t.y) * s - r.position.y, n.z = t.z + (e.z - t.z) * s + r.position.z, n;
|
|
47
|
+
}, c0 = (e, t, r) => e0(e, t, r), b0 = (e, t, r) => {
|
|
48
|
+
const n = (e.x - 0.5) * 2, s = (0.5 - e.y) * 2, i = T.MathUtils.clamp(e.z * 2, -1, 1);
|
|
49
|
+
return r.set(n, s, i).unproject(t);
|
|
50
|
+
}, i0 = (e, t, r, n, s, i) => {
|
|
51
|
+
const f = Math.min(t, e.length);
|
|
52
|
+
for (let u = 0; u < f; u++) {
|
|
53
|
+
s(e[u], n, i);
|
|
54
|
+
const o = u * 3;
|
|
55
|
+
r[o] = i.x, r[o + 1] = i.y, r[o + 2] = i.z;
|
|
16
56
|
}
|
|
17
|
-
return
|
|
18
|
-
},
|
|
57
|
+
return f;
|
|
58
|
+
}, a0 = [
|
|
19
59
|
[127, 34, 139],
|
|
20
60
|
[11, 0, 37],
|
|
21
61
|
[232, 231, 120],
|
|
@@ -869,7 +909,7 @@ const U = Z(null), c0 = () => V(U), G = (t, s, c) => K(t, s, c), a0 = (t, s, c)
|
|
|
869
909
|
[390, 339, 249],
|
|
870
910
|
[339, 448, 255],
|
|
871
911
|
[255, 339, 448]
|
|
872
|
-
].flat(),
|
|
912
|
+
].flat(), u0 = [
|
|
873
913
|
0.5104879319667817,
|
|
874
914
|
0.33515610277652746,
|
|
875
915
|
0.5174233198165894,
|
|
@@ -1826,65 +1866,75 @@ const U = Z(null), c0 = () => V(U), G = (t, s, c) => K(t, s, c), a0 = (t, s, c)
|
|
|
1826
1866
|
0.618020570576191,
|
|
1827
1867
|
0.33353258967399596,
|
|
1828
1868
|
0.5936576622724534
|
|
1829
|
-
],
|
|
1830
|
-
|
|
1831
|
-
|
|
1832
|
-
|
|
1833
|
-
|
|
1834
|
-
|
|
1869
|
+
], H = 468, l0 = H * 3, f0 = {
|
|
1870
|
+
type: "standard",
|
|
1871
|
+
color: "#ffffff",
|
|
1872
|
+
opacity: 1,
|
|
1873
|
+
wireframe: !1,
|
|
1874
|
+
roughness: 1,
|
|
1875
|
+
metalness: 0
|
|
1876
|
+
}, K = ({
|
|
1877
|
+
material: e,
|
|
1878
|
+
faceIndex: t = 0,
|
|
1879
|
+
numFaces: r,
|
|
1880
|
+
visible: n = !0,
|
|
1881
|
+
children: s
|
|
1835
1882
|
}) => {
|
|
1836
|
-
const { ready:
|
|
1837
|
-
|
|
1838
|
-
|
|
1839
|
-
), { camera:
|
|
1840
|
-
const
|
|
1841
|
-
return
|
|
1883
|
+
const { ready: i, node: f } = j(
|
|
1884
|
+
P.FACE_TRACKER,
|
|
1885
|
+
r === void 0 ? void 0 : { numFaces: r }
|
|
1886
|
+
), { camera: u } = k(), o = A(null), d = A(null), h = A(null), p = A(null), c = A(null), l = A(new T.Vector3()), E = v(() => {
|
|
1887
|
+
const m = new Uint16Array(a0), x = new T.BufferAttribute(m, 1), y = new T.Float32BufferAttribute(u0, 2), R = new Float32Array(l0), a = new T.Float32BufferAttribute(R, 3);
|
|
1888
|
+
return a.setUsage(T.DynamicDrawUsage), { indexAttr: x, uvAttr: y, positionAttr: a, positions: R };
|
|
1842
1889
|
}, []);
|
|
1843
|
-
|
|
1844
|
-
|
|
1845
|
-
const
|
|
1846
|
-
if (
|
|
1847
|
-
const
|
|
1848
|
-
|
|
1890
|
+
F(() => {
|
|
1891
|
+
p.current = E.indexAttr, c.current = E.uvAttr, h.current = E.positionAttr, d.current = E.positions;
|
|
1892
|
+
const m = o.current;
|
|
1893
|
+
if (m) {
|
|
1894
|
+
const x = m.geometry;
|
|
1895
|
+
x.setAttribute("position", E.positionAttr), x.setAttribute("uv", E.uvAttr), x.setIndex(E.indexAttr);
|
|
1849
1896
|
}
|
|
1850
1897
|
return () => {
|
|
1851
|
-
|
|
1898
|
+
p.current = null, c.current = null, h.current = null, d.current = null;
|
|
1852
1899
|
};
|
|
1853
|
-
}, [
|
|
1854
|
-
var
|
|
1855
|
-
if (!
|
|
1856
|
-
const { detectionResults:
|
|
1857
|
-
if (!
|
|
1858
|
-
|
|
1900
|
+
}, [E]), U(() => {
|
|
1901
|
+
var M;
|
|
1902
|
+
if (!i || !f || !o.current) return;
|
|
1903
|
+
const { detectionResults: m } = f, x = (M = m == null ? void 0 : m.faceLandmarks) == null ? void 0 : M[t], y = o.current.geometry, R = d.current, a = h.current;
|
|
1904
|
+
if (!x || x.length === 0 || !R || !a) {
|
|
1905
|
+
y.drawRange.count !== 0 && y.setDrawRange(0, 0);
|
|
1859
1906
|
return;
|
|
1860
1907
|
}
|
|
1861
|
-
|
|
1862
|
-
|
|
1863
|
-
|
|
1864
|
-
|
|
1865
|
-
|
|
1866
|
-
|
|
1867
|
-
|
|
1868
|
-
),
|
|
1908
|
+
y.getAttribute("position") !== a && (y.setAttribute("position", a), y.setAttribute("uv", c.current), y.setIndex(p.current)), y.drawRange.count === 0 && y.setDrawRange(0, 1 / 0), i0(
|
|
1909
|
+
x,
|
|
1910
|
+
H,
|
|
1911
|
+
R,
|
|
1912
|
+
u,
|
|
1913
|
+
c0,
|
|
1914
|
+
l.current
|
|
1915
|
+
), a.needsUpdate = !0, y.computeVertexNormals();
|
|
1869
1916
|
});
|
|
1870
|
-
const
|
|
1871
|
-
return /* @__PURE__ */
|
|
1872
|
-
/* @__PURE__ */
|
|
1873
|
-
!
|
|
1874
|
-
|
|
1917
|
+
const S = s != null && s !== !1;
|
|
1918
|
+
return /* @__PURE__ */ w("mesh", { material: e, ref: o, visible: n, children: [
|
|
1919
|
+
/* @__PURE__ */ _("bufferGeometry", {}),
|
|
1920
|
+
!e && !S && /* @__PURE__ */ _(
|
|
1921
|
+
s0,
|
|
1875
1922
|
{
|
|
1876
|
-
|
|
1877
|
-
|
|
1878
|
-
|
|
1879
|
-
|
|
1880
|
-
|
|
1923
|
+
settings: f0,
|
|
1924
|
+
materialProps: {
|
|
1925
|
+
attach: "material",
|
|
1926
|
+
transparent: !0,
|
|
1927
|
+
depthWrite: !1,
|
|
1928
|
+
side: T.DoubleSide,
|
|
1929
|
+
needsUpdate: !0
|
|
1930
|
+
}
|
|
1881
1931
|
}
|
|
1882
1932
|
),
|
|
1883
|
-
!
|
|
1933
|
+
!e && S ? s : null
|
|
1884
1934
|
] });
|
|
1885
1935
|
};
|
|
1886
|
-
|
|
1887
|
-
const
|
|
1936
|
+
K.displayName = "FaceMesh";
|
|
1937
|
+
const L = {
|
|
1888
1938
|
"face.forehead": 10,
|
|
1889
1939
|
"face.noseTip": 1,
|
|
1890
1940
|
"face.chin": 152,
|
|
@@ -1892,76 +1942,117 @@ const Q = {
|
|
|
1892
1942
|
"face.rightEyeOuter": 33,
|
|
1893
1943
|
"face.leftCheek": 425,
|
|
1894
1944
|
"face.rightCheek": 205,
|
|
1895
|
-
"face.mouthCenter": 13
|
|
1896
|
-
|
|
1897
|
-
|
|
1898
|
-
|
|
1899
|
-
|
|
1900
|
-
|
|
1901
|
-
|
|
1902
|
-
|
|
1945
|
+
"face.mouthCenter": 13,
|
|
1946
|
+
"face.leftEarlobe": 454,
|
|
1947
|
+
"face.rightEarlobe": 234
|
|
1948
|
+
}, y0 = {
|
|
1949
|
+
"face.center": [10, 152, 234, 454],
|
|
1950
|
+
"face.leftEye": [263, 362, 387, 373],
|
|
1951
|
+
"face.rightEye": [33, 133, 158, 145]
|
|
1952
|
+
}, V = (e, t = 0) => Number.isFinite(e) ? e : t, D = (e) => Math.max(-1, Math.min(1, V(e))), d0 = { x: 0, y: 0, z: 0 }, h0 = (e, t, r = d0, n = { x: 0, y: 0, z: 0, visibility: 0 }) => {
|
|
1953
|
+
const s = L[e];
|
|
1954
|
+
if (s !== void 0) {
|
|
1955
|
+
const c = t[s];
|
|
1956
|
+
return c ? Object.assign(n, c) : null;
|
|
1957
|
+
}
|
|
1958
|
+
const i = y0[e];
|
|
1959
|
+
if (i) {
|
|
1960
|
+
n.x = 0, n.y = 0, n.z = 0;
|
|
1961
|
+
for (const c of i) {
|
|
1962
|
+
const l = t[c];
|
|
1963
|
+
if (!l) return null;
|
|
1964
|
+
n.x += l.x, n.y += l.y, n.z += l.z;
|
|
1965
|
+
}
|
|
1966
|
+
return n.x /= i.length, n.y /= i.length, n.z /= i.length, n.visibility = 1, n;
|
|
1967
|
+
}
|
|
1968
|
+
if (e !== "face.custom" || t.length === 0) return null;
|
|
1969
|
+
let f = 1 / 0, u = 1 / 0, o = -1 / 0, d = -1 / 0, h = 0;
|
|
1970
|
+
for (const c of t)
|
|
1971
|
+
f = Math.min(f, c.x), u = Math.min(u, c.y), o = Math.max(o, c.x), d = Math.max(d, c.y), h += c.z;
|
|
1972
|
+
const p = o - f;
|
|
1973
|
+
return n.x = (f + o) * 0.5 - D(r.x) * p * 0.5, n.y = (u + d) * 0.5 - D(r.y) * (d - u) * 0.5, n.z = h / t.length - V(r.z) * p, n.visibility = 1, n;
|
|
1974
|
+
}, T0 = {
|
|
1975
|
+
left: L["face.leftEyeOuter"],
|
|
1976
|
+
right: L["face.rightEyeOuter"]
|
|
1977
|
+
}, X = J(null), _0 = () => G(X), p0 = ({
|
|
1978
|
+
faceIndex: e = 0,
|
|
1979
|
+
numFaces: t,
|
|
1980
|
+
scaleWithFace: r = !1,
|
|
1981
|
+
followFaceRoll: n = !0,
|
|
1982
|
+
targetFps: s,
|
|
1983
|
+
active: i = !0,
|
|
1984
|
+
children: f
|
|
1903
1985
|
}) => {
|
|
1904
|
-
const
|
|
1905
|
-
if (!(
|
|
1986
|
+
const u = A(!1), o = A(null), d = v(() => {
|
|
1987
|
+
if (!(t === void 0 && s === void 0))
|
|
1906
1988
|
return {
|
|
1907
|
-
...
|
|
1908
|
-
...
|
|
1989
|
+
...t === void 0 ? {} : { numFaces: t },
|
|
1990
|
+
...s === void 0 ? {} : { targetFps: s }
|
|
1909
1991
|
};
|
|
1910
|
-
}, [
|
|
1911
|
-
|
|
1912
|
-
|
|
1913
|
-
|
|
1914
|
-
), { camera:
|
|
1915
|
-
|
|
1916
|
-
const
|
|
1917
|
-
|
|
1918
|
-
if (!
|
|
1919
|
-
|
|
1920
|
-
const
|
|
1921
|
-
if (!
|
|
1922
|
-
|
|
1992
|
+
}, [t, s]), { ready: h, node: p } = j(
|
|
1993
|
+
P.FACE_TRACKER,
|
|
1994
|
+
d,
|
|
1995
|
+
i
|
|
1996
|
+
), { camera: c } = k(), l = A(c);
|
|
1997
|
+
l.current !== c && (l.current = c, u.current = !1);
|
|
1998
|
+
const E = A(null), S = A({ x: 0, y: 0, z: 0, visibility: 0 });
|
|
1999
|
+
U(() => {
|
|
2000
|
+
if (!h || !p || !o.current) return;
|
|
2001
|
+
E.current = p, !u.current && l.current && (p.setCamera(l.current, e), u.current = !0);
|
|
2002
|
+
const a = p.getFace(e);
|
|
2003
|
+
if (!a) {
|
|
2004
|
+
o.current.visible = !1;
|
|
1923
2005
|
return;
|
|
1924
2006
|
}
|
|
1925
|
-
|
|
1926
|
-
const { position:
|
|
1927
|
-
|
|
2007
|
+
o.current.visible = !0;
|
|
2008
|
+
const { position: M, rotation: C, scale: b } = a.transform;
|
|
2009
|
+
o.current.position.set(M.x, M.y, M.z), o.current.rotation.set(C.x, C.y, n ? C.z : 0), r ? o.current.scale.set(b.x, b.y, b.z) : o.current.scale.set(1, 1, 1);
|
|
1928
2010
|
});
|
|
1929
|
-
const
|
|
1930
|
-
(
|
|
1931
|
-
var
|
|
1932
|
-
const
|
|
1933
|
-
if (
|
|
1934
|
-
const
|
|
1935
|
-
|
|
1936
|
-
|
|
1937
|
-
|
|
2011
|
+
const m = Q(
|
|
2012
|
+
(a, M) => {
|
|
2013
|
+
var O, I;
|
|
2014
|
+
const C = E.current, b = (I = (O = C == null ? void 0 : C.detectionResults) == null ? void 0 : O.faceLandmarks) == null ? void 0 : I[e];
|
|
2015
|
+
if (!b || b.length === 0) return null;
|
|
2016
|
+
const N = h0(
|
|
2017
|
+
a,
|
|
2018
|
+
b,
|
|
2019
|
+
M,
|
|
2020
|
+
S.current
|
|
2021
|
+
);
|
|
2022
|
+
return N ? { position: t0(N, l.current) } : null;
|
|
1938
2023
|
},
|
|
1939
|
-
[
|
|
1940
|
-
),
|
|
1941
|
-
() => ({ type: "face", resolveLandmark:
|
|
1942
|
-
[
|
|
2024
|
+
[e]
|
|
2025
|
+
), x = v(
|
|
2026
|
+
() => ({ type: "face", resolveLandmark: m }),
|
|
2027
|
+
[m]
|
|
1943
2028
|
);
|
|
1944
|
-
let
|
|
1945
|
-
const
|
|
1946
|
-
return
|
|
1947
|
-
var
|
|
1948
|
-
|
|
1949
|
-
(((
|
|
1950
|
-
((
|
|
1951
|
-
}), /* @__PURE__ */
|
|
1952
|
-
/* @__PURE__ */
|
|
1953
|
-
|
|
2029
|
+
let y;
|
|
2030
|
+
const R = [];
|
|
2031
|
+
return z.Children.forEach(f, (a) => {
|
|
2032
|
+
var M, C;
|
|
2033
|
+
z.isValidElement(a) && // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2034
|
+
(((M = a.type) == null ? void 0 : M.displayName) === "FaceTracker.Mesh" || // eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
2035
|
+
((C = a.type) == null ? void 0 : C.displayName) === "FaceMesh") ? y = z.cloneElement(a, { faceIndex: e, numFaces: t }) : R.push(a);
|
|
2036
|
+
}), /* @__PURE__ */ w(X.Provider, { value: x, children: [
|
|
2037
|
+
/* @__PURE__ */ _("group", { ref: o, renderOrder: n0.TRACKED, children: R }),
|
|
2038
|
+
y
|
|
1954
2039
|
] });
|
|
1955
|
-
},
|
|
1956
|
-
|
|
1957
|
-
const
|
|
1958
|
-
|
|
1959
|
-
const
|
|
2040
|
+
}, Z = (e) => /* @__PURE__ */ _(K, { ...e });
|
|
2041
|
+
Z.displayName = "FaceTracker.Mesh";
|
|
2042
|
+
const Y = p0;
|
|
2043
|
+
Y.Mesh = Z;
|
|
2044
|
+
const S0 = Y;
|
|
1960
2045
|
export {
|
|
1961
|
-
|
|
1962
|
-
|
|
1963
|
-
|
|
1964
|
-
|
|
1965
|
-
|
|
1966
|
-
|
|
2046
|
+
T0 as F,
|
|
2047
|
+
S0 as H,
|
|
2048
|
+
s0 as M,
|
|
2049
|
+
X as T,
|
|
2050
|
+
_0 as a,
|
|
2051
|
+
Y as b,
|
|
2052
|
+
K as c,
|
|
2053
|
+
L as d,
|
|
2054
|
+
b0 as p,
|
|
2055
|
+
h0 as r,
|
|
2056
|
+
R0 as t,
|
|
2057
|
+
j as u
|
|
1967
2058
|
};
|